...

Source file src/google.golang.org/api/securitycenter/v1/securitycenter-gen.go

Documentation: google.golang.org/api/securitycenter/v1

     1  // Copyright 2024 Google LLC.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  // Code generated file. DO NOT EDIT.
     6  
     7  // Package securitycenter provides access to the Security Command Center API.
     8  //
     9  // For product documentation, see: https://cloud.google.com/security-command-center
    10  //
    11  // # Library status
    12  //
    13  // These client libraries are officially supported by Google. However, this
    14  // library is considered complete and is in maintenance mode. This means
    15  // that we will address critical bugs and security issues but will not add
    16  // any new features.
    17  //
    18  // When possible, we recommend using our newer
    19  // [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go)
    20  // that are still actively being worked and iterated on.
    21  //
    22  // # Creating a client
    23  //
    24  // Usage example:
    25  //
    26  //	import "google.golang.org/api/securitycenter/v1"
    27  //	...
    28  //	ctx := context.Background()
    29  //	securitycenterService, err := securitycenter.NewService(ctx)
    30  //
    31  // In this example, Google Application Default Credentials are used for
    32  // authentication. For information on how to create and obtain Application
    33  // Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
    34  //
    35  // # Other authentication options
    36  //
    37  // To use an API key for authentication (note: some APIs do not support API
    38  // keys), use [google.golang.org/api/option.WithAPIKey]:
    39  //
    40  //	securitycenterService, err := securitycenter.NewService(ctx, option.WithAPIKey("AIza..."))
    41  //
    42  // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth
    43  // flow, use [google.golang.org/api/option.WithTokenSource]:
    44  //
    45  //	config := &oauth2.Config{...}
    46  //	// ...
    47  //	token, err := config.Exchange(ctx, ...)
    48  //	securitycenterService, err := securitycenter.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
    49  //
    50  // See [google.golang.org/api/option.ClientOption] for details on options.
    51  package securitycenter // import "google.golang.org/api/securitycenter/v1"
    52  
    53  import (
    54  	"bytes"
    55  	"context"
    56  	"encoding/json"
    57  	"errors"
    58  	"fmt"
    59  	"io"
    60  	"net/http"
    61  	"net/url"
    62  	"strconv"
    63  	"strings"
    64  
    65  	googleapi "google.golang.org/api/googleapi"
    66  	internal "google.golang.org/api/internal"
    67  	gensupport "google.golang.org/api/internal/gensupport"
    68  	option "google.golang.org/api/option"
    69  	internaloption "google.golang.org/api/option/internaloption"
    70  	htransport "google.golang.org/api/transport/http"
    71  )
    72  
    73  // Always reference these packages, just in case the auto-generated code
    74  // below doesn't.
    75  var _ = bytes.NewBuffer
    76  var _ = strconv.Itoa
    77  var _ = fmt.Sprintf
    78  var _ = json.NewDecoder
    79  var _ = io.Copy
    80  var _ = url.Parse
    81  var _ = gensupport.MarshalJSON
    82  var _ = googleapi.Version
    83  var _ = errors.New
    84  var _ = strings.Replace
    85  var _ = context.Canceled
    86  var _ = internaloption.WithDefaultEndpoint
    87  var _ = internal.Version
    88  
    89  const apiId = "securitycenter:v1"
    90  const apiName = "securitycenter"
    91  const apiVersion = "v1"
    92  const basePath = "https://securitycenter.googleapis.com/"
    93  const basePathTemplate = "https://securitycenter.UNIVERSE_DOMAIN/"
    94  const mtlsBasePath = "https://securitycenter.mtls.googleapis.com/"
    95  
    96  // OAuth2 scopes used by this API.
    97  const (
    98  	// See, edit, configure, and delete your Google Cloud data and see the email
    99  	// address for your Google Account.
   100  	CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
   101  )
   102  
   103  // NewService creates a new Service.
   104  func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
   105  	scopesOption := internaloption.WithDefaultScopes(
   106  		"https://www.googleapis.com/auth/cloud-platform",
   107  	)
   108  	// NOTE: prepend, so we don't override user-specified scopes.
   109  	opts = append([]option.ClientOption{scopesOption}, opts...)
   110  	opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
   111  	opts = append(opts, internaloption.WithDefaultEndpointTemplate(basePathTemplate))
   112  	opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
   113  	opts = append(opts, internaloption.EnableNewAuthLibrary())
   114  	client, endpoint, err := htransport.NewClient(ctx, opts...)
   115  	if err != nil {
   116  		return nil, err
   117  	}
   118  	s, err := New(client)
   119  	if err != nil {
   120  		return nil, err
   121  	}
   122  	if endpoint != "" {
   123  		s.BasePath = endpoint
   124  	}
   125  	return s, nil
   126  }
   127  
   128  // New creates a new Service. It uses the provided http.Client for requests.
   129  //
   130  // Deprecated: please use NewService instead.
   131  // To provide a custom HTTP client, use option.WithHTTPClient.
   132  // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
   133  func New(client *http.Client) (*Service, error) {
   134  	if client == nil {
   135  		return nil, errors.New("client is nil")
   136  	}
   137  	s := &Service{client: client, BasePath: basePath}
   138  	s.Folders = NewFoldersService(s)
   139  	s.Organizations = NewOrganizationsService(s)
   140  	s.Projects = NewProjectsService(s)
   141  	return s, nil
   142  }
   143  
   144  type Service struct {
   145  	client    *http.Client
   146  	BasePath  string // API endpoint base URL
   147  	UserAgent string // optional additional User-Agent fragment
   148  
   149  	Folders *FoldersService
   150  
   151  	Organizations *OrganizationsService
   152  
   153  	Projects *ProjectsService
   154  }
   155  
   156  func (s *Service) userAgent() string {
   157  	if s.UserAgent == "" {
   158  		return googleapi.UserAgent
   159  	}
   160  	return googleapi.UserAgent + " " + s.UserAgent
   161  }
   162  
   163  func NewFoldersService(s *Service) *FoldersService {
   164  	rs := &FoldersService{s: s}
   165  	rs.Assets = NewFoldersAssetsService(s)
   166  	rs.BigQueryExports = NewFoldersBigQueryExportsService(s)
   167  	rs.EventThreatDetectionSettings = NewFoldersEventThreatDetectionSettingsService(s)
   168  	rs.Findings = NewFoldersFindingsService(s)
   169  	rs.Locations = NewFoldersLocationsService(s)
   170  	rs.MuteConfigs = NewFoldersMuteConfigsService(s)
   171  	rs.NotificationConfigs = NewFoldersNotificationConfigsService(s)
   172  	rs.SecurityHealthAnalyticsSettings = NewFoldersSecurityHealthAnalyticsSettingsService(s)
   173  	rs.Sources = NewFoldersSourcesService(s)
   174  	return rs
   175  }
   176  
   177  type FoldersService struct {
   178  	s *Service
   179  
   180  	Assets *FoldersAssetsService
   181  
   182  	BigQueryExports *FoldersBigQueryExportsService
   183  
   184  	EventThreatDetectionSettings *FoldersEventThreatDetectionSettingsService
   185  
   186  	Findings *FoldersFindingsService
   187  
   188  	Locations *FoldersLocationsService
   189  
   190  	MuteConfigs *FoldersMuteConfigsService
   191  
   192  	NotificationConfigs *FoldersNotificationConfigsService
   193  
   194  	SecurityHealthAnalyticsSettings *FoldersSecurityHealthAnalyticsSettingsService
   195  
   196  	Sources *FoldersSourcesService
   197  }
   198  
   199  func NewFoldersAssetsService(s *Service) *FoldersAssetsService {
   200  	rs := &FoldersAssetsService{s: s}
   201  	return rs
   202  }
   203  
   204  type FoldersAssetsService struct {
   205  	s *Service
   206  }
   207  
   208  func NewFoldersBigQueryExportsService(s *Service) *FoldersBigQueryExportsService {
   209  	rs := &FoldersBigQueryExportsService{s: s}
   210  	return rs
   211  }
   212  
   213  type FoldersBigQueryExportsService struct {
   214  	s *Service
   215  }
   216  
   217  func NewFoldersEventThreatDetectionSettingsService(s *Service) *FoldersEventThreatDetectionSettingsService {
   218  	rs := &FoldersEventThreatDetectionSettingsService{s: s}
   219  	rs.CustomModules = NewFoldersEventThreatDetectionSettingsCustomModulesService(s)
   220  	rs.EffectiveCustomModules = NewFoldersEventThreatDetectionSettingsEffectiveCustomModulesService(s)
   221  	return rs
   222  }
   223  
   224  type FoldersEventThreatDetectionSettingsService struct {
   225  	s *Service
   226  
   227  	CustomModules *FoldersEventThreatDetectionSettingsCustomModulesService
   228  
   229  	EffectiveCustomModules *FoldersEventThreatDetectionSettingsEffectiveCustomModulesService
   230  }
   231  
   232  func NewFoldersEventThreatDetectionSettingsCustomModulesService(s *Service) *FoldersEventThreatDetectionSettingsCustomModulesService {
   233  	rs := &FoldersEventThreatDetectionSettingsCustomModulesService{s: s}
   234  	return rs
   235  }
   236  
   237  type FoldersEventThreatDetectionSettingsCustomModulesService struct {
   238  	s *Service
   239  }
   240  
   241  func NewFoldersEventThreatDetectionSettingsEffectiveCustomModulesService(s *Service) *FoldersEventThreatDetectionSettingsEffectiveCustomModulesService {
   242  	rs := &FoldersEventThreatDetectionSettingsEffectiveCustomModulesService{s: s}
   243  	return rs
   244  }
   245  
   246  type FoldersEventThreatDetectionSettingsEffectiveCustomModulesService struct {
   247  	s *Service
   248  }
   249  
   250  func NewFoldersFindingsService(s *Service) *FoldersFindingsService {
   251  	rs := &FoldersFindingsService{s: s}
   252  	return rs
   253  }
   254  
   255  type FoldersFindingsService struct {
   256  	s *Service
   257  }
   258  
   259  func NewFoldersLocationsService(s *Service) *FoldersLocationsService {
   260  	rs := &FoldersLocationsService{s: s}
   261  	rs.MuteConfigs = NewFoldersLocationsMuteConfigsService(s)
   262  	return rs
   263  }
   264  
   265  type FoldersLocationsService struct {
   266  	s *Service
   267  
   268  	MuteConfigs *FoldersLocationsMuteConfigsService
   269  }
   270  
   271  func NewFoldersLocationsMuteConfigsService(s *Service) *FoldersLocationsMuteConfigsService {
   272  	rs := &FoldersLocationsMuteConfigsService{s: s}
   273  	return rs
   274  }
   275  
   276  type FoldersLocationsMuteConfigsService struct {
   277  	s *Service
   278  }
   279  
   280  func NewFoldersMuteConfigsService(s *Service) *FoldersMuteConfigsService {
   281  	rs := &FoldersMuteConfigsService{s: s}
   282  	return rs
   283  }
   284  
   285  type FoldersMuteConfigsService struct {
   286  	s *Service
   287  }
   288  
   289  func NewFoldersNotificationConfigsService(s *Service) *FoldersNotificationConfigsService {
   290  	rs := &FoldersNotificationConfigsService{s: s}
   291  	return rs
   292  }
   293  
   294  type FoldersNotificationConfigsService struct {
   295  	s *Service
   296  }
   297  
   298  func NewFoldersSecurityHealthAnalyticsSettingsService(s *Service) *FoldersSecurityHealthAnalyticsSettingsService {
   299  	rs := &FoldersSecurityHealthAnalyticsSettingsService{s: s}
   300  	rs.CustomModules = NewFoldersSecurityHealthAnalyticsSettingsCustomModulesService(s)
   301  	rs.EffectiveCustomModules = NewFoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesService(s)
   302  	return rs
   303  }
   304  
   305  type FoldersSecurityHealthAnalyticsSettingsService struct {
   306  	s *Service
   307  
   308  	CustomModules *FoldersSecurityHealthAnalyticsSettingsCustomModulesService
   309  
   310  	EffectiveCustomModules *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesService
   311  }
   312  
   313  func NewFoldersSecurityHealthAnalyticsSettingsCustomModulesService(s *Service) *FoldersSecurityHealthAnalyticsSettingsCustomModulesService {
   314  	rs := &FoldersSecurityHealthAnalyticsSettingsCustomModulesService{s: s}
   315  	return rs
   316  }
   317  
   318  type FoldersSecurityHealthAnalyticsSettingsCustomModulesService struct {
   319  	s *Service
   320  }
   321  
   322  func NewFoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesService(s *Service) *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesService {
   323  	rs := &FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesService{s: s}
   324  	return rs
   325  }
   326  
   327  type FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesService struct {
   328  	s *Service
   329  }
   330  
   331  func NewFoldersSourcesService(s *Service) *FoldersSourcesService {
   332  	rs := &FoldersSourcesService{s: s}
   333  	rs.Findings = NewFoldersSourcesFindingsService(s)
   334  	return rs
   335  }
   336  
   337  type FoldersSourcesService struct {
   338  	s *Service
   339  
   340  	Findings *FoldersSourcesFindingsService
   341  }
   342  
   343  func NewFoldersSourcesFindingsService(s *Service) *FoldersSourcesFindingsService {
   344  	rs := &FoldersSourcesFindingsService{s: s}
   345  	rs.ExternalSystems = NewFoldersSourcesFindingsExternalSystemsService(s)
   346  	return rs
   347  }
   348  
   349  type FoldersSourcesFindingsService struct {
   350  	s *Service
   351  
   352  	ExternalSystems *FoldersSourcesFindingsExternalSystemsService
   353  }
   354  
   355  func NewFoldersSourcesFindingsExternalSystemsService(s *Service) *FoldersSourcesFindingsExternalSystemsService {
   356  	rs := &FoldersSourcesFindingsExternalSystemsService{s: s}
   357  	return rs
   358  }
   359  
   360  type FoldersSourcesFindingsExternalSystemsService struct {
   361  	s *Service
   362  }
   363  
   364  func NewOrganizationsService(s *Service) *OrganizationsService {
   365  	rs := &OrganizationsService{s: s}
   366  	rs.Assets = NewOrganizationsAssetsService(s)
   367  	rs.BigQueryExports = NewOrganizationsBigQueryExportsService(s)
   368  	rs.EventThreatDetectionSettings = NewOrganizationsEventThreatDetectionSettingsService(s)
   369  	rs.Findings = NewOrganizationsFindingsService(s)
   370  	rs.Locations = NewOrganizationsLocationsService(s)
   371  	rs.MuteConfigs = NewOrganizationsMuteConfigsService(s)
   372  	rs.NotificationConfigs = NewOrganizationsNotificationConfigsService(s)
   373  	rs.Operations = NewOrganizationsOperationsService(s)
   374  	rs.ResourceValueConfigs = NewOrganizationsResourceValueConfigsService(s)
   375  	rs.SecurityHealthAnalyticsSettings = NewOrganizationsSecurityHealthAnalyticsSettingsService(s)
   376  	rs.Simulations = NewOrganizationsSimulationsService(s)
   377  	rs.Sources = NewOrganizationsSourcesService(s)
   378  	return rs
   379  }
   380  
   381  type OrganizationsService struct {
   382  	s *Service
   383  
   384  	Assets *OrganizationsAssetsService
   385  
   386  	BigQueryExports *OrganizationsBigQueryExportsService
   387  
   388  	EventThreatDetectionSettings *OrganizationsEventThreatDetectionSettingsService
   389  
   390  	Findings *OrganizationsFindingsService
   391  
   392  	Locations *OrganizationsLocationsService
   393  
   394  	MuteConfigs *OrganizationsMuteConfigsService
   395  
   396  	NotificationConfigs *OrganizationsNotificationConfigsService
   397  
   398  	Operations *OrganizationsOperationsService
   399  
   400  	ResourceValueConfigs *OrganizationsResourceValueConfigsService
   401  
   402  	SecurityHealthAnalyticsSettings *OrganizationsSecurityHealthAnalyticsSettingsService
   403  
   404  	Simulations *OrganizationsSimulationsService
   405  
   406  	Sources *OrganizationsSourcesService
   407  }
   408  
   409  func NewOrganizationsAssetsService(s *Service) *OrganizationsAssetsService {
   410  	rs := &OrganizationsAssetsService{s: s}
   411  	return rs
   412  }
   413  
   414  type OrganizationsAssetsService struct {
   415  	s *Service
   416  }
   417  
   418  func NewOrganizationsBigQueryExportsService(s *Service) *OrganizationsBigQueryExportsService {
   419  	rs := &OrganizationsBigQueryExportsService{s: s}
   420  	return rs
   421  }
   422  
   423  type OrganizationsBigQueryExportsService struct {
   424  	s *Service
   425  }
   426  
   427  func NewOrganizationsEventThreatDetectionSettingsService(s *Service) *OrganizationsEventThreatDetectionSettingsService {
   428  	rs := &OrganizationsEventThreatDetectionSettingsService{s: s}
   429  	rs.CustomModules = NewOrganizationsEventThreatDetectionSettingsCustomModulesService(s)
   430  	rs.EffectiveCustomModules = NewOrganizationsEventThreatDetectionSettingsEffectiveCustomModulesService(s)
   431  	return rs
   432  }
   433  
   434  type OrganizationsEventThreatDetectionSettingsService struct {
   435  	s *Service
   436  
   437  	CustomModules *OrganizationsEventThreatDetectionSettingsCustomModulesService
   438  
   439  	EffectiveCustomModules *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesService
   440  }
   441  
   442  func NewOrganizationsEventThreatDetectionSettingsCustomModulesService(s *Service) *OrganizationsEventThreatDetectionSettingsCustomModulesService {
   443  	rs := &OrganizationsEventThreatDetectionSettingsCustomModulesService{s: s}
   444  	return rs
   445  }
   446  
   447  type OrganizationsEventThreatDetectionSettingsCustomModulesService struct {
   448  	s *Service
   449  }
   450  
   451  func NewOrganizationsEventThreatDetectionSettingsEffectiveCustomModulesService(s *Service) *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesService {
   452  	rs := &OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesService{s: s}
   453  	return rs
   454  }
   455  
   456  type OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesService struct {
   457  	s *Service
   458  }
   459  
   460  func NewOrganizationsFindingsService(s *Service) *OrganizationsFindingsService {
   461  	rs := &OrganizationsFindingsService{s: s}
   462  	return rs
   463  }
   464  
   465  type OrganizationsFindingsService struct {
   466  	s *Service
   467  }
   468  
   469  func NewOrganizationsLocationsService(s *Service) *OrganizationsLocationsService {
   470  	rs := &OrganizationsLocationsService{s: s}
   471  	rs.MuteConfigs = NewOrganizationsLocationsMuteConfigsService(s)
   472  	return rs
   473  }
   474  
   475  type OrganizationsLocationsService struct {
   476  	s *Service
   477  
   478  	MuteConfigs *OrganizationsLocationsMuteConfigsService
   479  }
   480  
   481  func NewOrganizationsLocationsMuteConfigsService(s *Service) *OrganizationsLocationsMuteConfigsService {
   482  	rs := &OrganizationsLocationsMuteConfigsService{s: s}
   483  	return rs
   484  }
   485  
   486  type OrganizationsLocationsMuteConfigsService struct {
   487  	s *Service
   488  }
   489  
   490  func NewOrganizationsMuteConfigsService(s *Service) *OrganizationsMuteConfigsService {
   491  	rs := &OrganizationsMuteConfigsService{s: s}
   492  	return rs
   493  }
   494  
   495  type OrganizationsMuteConfigsService struct {
   496  	s *Service
   497  }
   498  
   499  func NewOrganizationsNotificationConfigsService(s *Service) *OrganizationsNotificationConfigsService {
   500  	rs := &OrganizationsNotificationConfigsService{s: s}
   501  	return rs
   502  }
   503  
   504  type OrganizationsNotificationConfigsService struct {
   505  	s *Service
   506  }
   507  
   508  func NewOrganizationsOperationsService(s *Service) *OrganizationsOperationsService {
   509  	rs := &OrganizationsOperationsService{s: s}
   510  	return rs
   511  }
   512  
   513  type OrganizationsOperationsService struct {
   514  	s *Service
   515  }
   516  
   517  func NewOrganizationsResourceValueConfigsService(s *Service) *OrganizationsResourceValueConfigsService {
   518  	rs := &OrganizationsResourceValueConfigsService{s: s}
   519  	return rs
   520  }
   521  
   522  type OrganizationsResourceValueConfigsService struct {
   523  	s *Service
   524  }
   525  
   526  func NewOrganizationsSecurityHealthAnalyticsSettingsService(s *Service) *OrganizationsSecurityHealthAnalyticsSettingsService {
   527  	rs := &OrganizationsSecurityHealthAnalyticsSettingsService{s: s}
   528  	rs.CustomModules = NewOrganizationsSecurityHealthAnalyticsSettingsCustomModulesService(s)
   529  	rs.EffectiveCustomModules = NewOrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesService(s)
   530  	return rs
   531  }
   532  
   533  type OrganizationsSecurityHealthAnalyticsSettingsService struct {
   534  	s *Service
   535  
   536  	CustomModules *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesService
   537  
   538  	EffectiveCustomModules *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesService
   539  }
   540  
   541  func NewOrganizationsSecurityHealthAnalyticsSettingsCustomModulesService(s *Service) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesService {
   542  	rs := &OrganizationsSecurityHealthAnalyticsSettingsCustomModulesService{s: s}
   543  	return rs
   544  }
   545  
   546  type OrganizationsSecurityHealthAnalyticsSettingsCustomModulesService struct {
   547  	s *Service
   548  }
   549  
   550  func NewOrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesService(s *Service) *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesService {
   551  	rs := &OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesService{s: s}
   552  	return rs
   553  }
   554  
   555  type OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesService struct {
   556  	s *Service
   557  }
   558  
   559  func NewOrganizationsSimulationsService(s *Service) *OrganizationsSimulationsService {
   560  	rs := &OrganizationsSimulationsService{s: s}
   561  	rs.AttackExposureResults = NewOrganizationsSimulationsAttackExposureResultsService(s)
   562  	rs.AttackPaths = NewOrganizationsSimulationsAttackPathsService(s)
   563  	rs.ValuedResources = NewOrganizationsSimulationsValuedResourcesService(s)
   564  	return rs
   565  }
   566  
   567  type OrganizationsSimulationsService struct {
   568  	s *Service
   569  
   570  	AttackExposureResults *OrganizationsSimulationsAttackExposureResultsService
   571  
   572  	AttackPaths *OrganizationsSimulationsAttackPathsService
   573  
   574  	ValuedResources *OrganizationsSimulationsValuedResourcesService
   575  }
   576  
   577  func NewOrganizationsSimulationsAttackExposureResultsService(s *Service) *OrganizationsSimulationsAttackExposureResultsService {
   578  	rs := &OrganizationsSimulationsAttackExposureResultsService{s: s}
   579  	rs.AttackPaths = NewOrganizationsSimulationsAttackExposureResultsAttackPathsService(s)
   580  	rs.ValuedResources = NewOrganizationsSimulationsAttackExposureResultsValuedResourcesService(s)
   581  	return rs
   582  }
   583  
   584  type OrganizationsSimulationsAttackExposureResultsService struct {
   585  	s *Service
   586  
   587  	AttackPaths *OrganizationsSimulationsAttackExposureResultsAttackPathsService
   588  
   589  	ValuedResources *OrganizationsSimulationsAttackExposureResultsValuedResourcesService
   590  }
   591  
   592  func NewOrganizationsSimulationsAttackExposureResultsAttackPathsService(s *Service) *OrganizationsSimulationsAttackExposureResultsAttackPathsService {
   593  	rs := &OrganizationsSimulationsAttackExposureResultsAttackPathsService{s: s}
   594  	return rs
   595  }
   596  
   597  type OrganizationsSimulationsAttackExposureResultsAttackPathsService struct {
   598  	s *Service
   599  }
   600  
   601  func NewOrganizationsSimulationsAttackExposureResultsValuedResourcesService(s *Service) *OrganizationsSimulationsAttackExposureResultsValuedResourcesService {
   602  	rs := &OrganizationsSimulationsAttackExposureResultsValuedResourcesService{s: s}
   603  	return rs
   604  }
   605  
   606  type OrganizationsSimulationsAttackExposureResultsValuedResourcesService struct {
   607  	s *Service
   608  }
   609  
   610  func NewOrganizationsSimulationsAttackPathsService(s *Service) *OrganizationsSimulationsAttackPathsService {
   611  	rs := &OrganizationsSimulationsAttackPathsService{s: s}
   612  	return rs
   613  }
   614  
   615  type OrganizationsSimulationsAttackPathsService struct {
   616  	s *Service
   617  }
   618  
   619  func NewOrganizationsSimulationsValuedResourcesService(s *Service) *OrganizationsSimulationsValuedResourcesService {
   620  	rs := &OrganizationsSimulationsValuedResourcesService{s: s}
   621  	rs.AttackPaths = NewOrganizationsSimulationsValuedResourcesAttackPathsService(s)
   622  	return rs
   623  }
   624  
   625  type OrganizationsSimulationsValuedResourcesService struct {
   626  	s *Service
   627  
   628  	AttackPaths *OrganizationsSimulationsValuedResourcesAttackPathsService
   629  }
   630  
   631  func NewOrganizationsSimulationsValuedResourcesAttackPathsService(s *Service) *OrganizationsSimulationsValuedResourcesAttackPathsService {
   632  	rs := &OrganizationsSimulationsValuedResourcesAttackPathsService{s: s}
   633  	return rs
   634  }
   635  
   636  type OrganizationsSimulationsValuedResourcesAttackPathsService struct {
   637  	s *Service
   638  }
   639  
   640  func NewOrganizationsSourcesService(s *Service) *OrganizationsSourcesService {
   641  	rs := &OrganizationsSourcesService{s: s}
   642  	rs.Findings = NewOrganizationsSourcesFindingsService(s)
   643  	return rs
   644  }
   645  
   646  type OrganizationsSourcesService struct {
   647  	s *Service
   648  
   649  	Findings *OrganizationsSourcesFindingsService
   650  }
   651  
   652  func NewOrganizationsSourcesFindingsService(s *Service) *OrganizationsSourcesFindingsService {
   653  	rs := &OrganizationsSourcesFindingsService{s: s}
   654  	rs.ExternalSystems = NewOrganizationsSourcesFindingsExternalSystemsService(s)
   655  	return rs
   656  }
   657  
   658  type OrganizationsSourcesFindingsService struct {
   659  	s *Service
   660  
   661  	ExternalSystems *OrganizationsSourcesFindingsExternalSystemsService
   662  }
   663  
   664  func NewOrganizationsSourcesFindingsExternalSystemsService(s *Service) *OrganizationsSourcesFindingsExternalSystemsService {
   665  	rs := &OrganizationsSourcesFindingsExternalSystemsService{s: s}
   666  	return rs
   667  }
   668  
   669  type OrganizationsSourcesFindingsExternalSystemsService struct {
   670  	s *Service
   671  }
   672  
   673  func NewProjectsService(s *Service) *ProjectsService {
   674  	rs := &ProjectsService{s: s}
   675  	rs.Assets = NewProjectsAssetsService(s)
   676  	rs.BigQueryExports = NewProjectsBigQueryExportsService(s)
   677  	rs.EventThreatDetectionSettings = NewProjectsEventThreatDetectionSettingsService(s)
   678  	rs.Findings = NewProjectsFindingsService(s)
   679  	rs.Locations = NewProjectsLocationsService(s)
   680  	rs.MuteConfigs = NewProjectsMuteConfigsService(s)
   681  	rs.NotificationConfigs = NewProjectsNotificationConfigsService(s)
   682  	rs.SecurityHealthAnalyticsSettings = NewProjectsSecurityHealthAnalyticsSettingsService(s)
   683  	rs.Sources = NewProjectsSourcesService(s)
   684  	return rs
   685  }
   686  
   687  type ProjectsService struct {
   688  	s *Service
   689  
   690  	Assets *ProjectsAssetsService
   691  
   692  	BigQueryExports *ProjectsBigQueryExportsService
   693  
   694  	EventThreatDetectionSettings *ProjectsEventThreatDetectionSettingsService
   695  
   696  	Findings *ProjectsFindingsService
   697  
   698  	Locations *ProjectsLocationsService
   699  
   700  	MuteConfigs *ProjectsMuteConfigsService
   701  
   702  	NotificationConfigs *ProjectsNotificationConfigsService
   703  
   704  	SecurityHealthAnalyticsSettings *ProjectsSecurityHealthAnalyticsSettingsService
   705  
   706  	Sources *ProjectsSourcesService
   707  }
   708  
   709  func NewProjectsAssetsService(s *Service) *ProjectsAssetsService {
   710  	rs := &ProjectsAssetsService{s: s}
   711  	return rs
   712  }
   713  
   714  type ProjectsAssetsService struct {
   715  	s *Service
   716  }
   717  
   718  func NewProjectsBigQueryExportsService(s *Service) *ProjectsBigQueryExportsService {
   719  	rs := &ProjectsBigQueryExportsService{s: s}
   720  	return rs
   721  }
   722  
   723  type ProjectsBigQueryExportsService struct {
   724  	s *Service
   725  }
   726  
   727  func NewProjectsEventThreatDetectionSettingsService(s *Service) *ProjectsEventThreatDetectionSettingsService {
   728  	rs := &ProjectsEventThreatDetectionSettingsService{s: s}
   729  	rs.CustomModules = NewProjectsEventThreatDetectionSettingsCustomModulesService(s)
   730  	rs.EffectiveCustomModules = NewProjectsEventThreatDetectionSettingsEffectiveCustomModulesService(s)
   731  	return rs
   732  }
   733  
   734  type ProjectsEventThreatDetectionSettingsService struct {
   735  	s *Service
   736  
   737  	CustomModules *ProjectsEventThreatDetectionSettingsCustomModulesService
   738  
   739  	EffectiveCustomModules *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesService
   740  }
   741  
   742  func NewProjectsEventThreatDetectionSettingsCustomModulesService(s *Service) *ProjectsEventThreatDetectionSettingsCustomModulesService {
   743  	rs := &ProjectsEventThreatDetectionSettingsCustomModulesService{s: s}
   744  	return rs
   745  }
   746  
   747  type ProjectsEventThreatDetectionSettingsCustomModulesService struct {
   748  	s *Service
   749  }
   750  
   751  func NewProjectsEventThreatDetectionSettingsEffectiveCustomModulesService(s *Service) *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesService {
   752  	rs := &ProjectsEventThreatDetectionSettingsEffectiveCustomModulesService{s: s}
   753  	return rs
   754  }
   755  
   756  type ProjectsEventThreatDetectionSettingsEffectiveCustomModulesService struct {
   757  	s *Service
   758  }
   759  
   760  func NewProjectsFindingsService(s *Service) *ProjectsFindingsService {
   761  	rs := &ProjectsFindingsService{s: s}
   762  	return rs
   763  }
   764  
   765  type ProjectsFindingsService struct {
   766  	s *Service
   767  }
   768  
   769  func NewProjectsLocationsService(s *Service) *ProjectsLocationsService {
   770  	rs := &ProjectsLocationsService{s: s}
   771  	rs.MuteConfigs = NewProjectsLocationsMuteConfigsService(s)
   772  	return rs
   773  }
   774  
   775  type ProjectsLocationsService struct {
   776  	s *Service
   777  
   778  	MuteConfigs *ProjectsLocationsMuteConfigsService
   779  }
   780  
   781  func NewProjectsLocationsMuteConfigsService(s *Service) *ProjectsLocationsMuteConfigsService {
   782  	rs := &ProjectsLocationsMuteConfigsService{s: s}
   783  	return rs
   784  }
   785  
   786  type ProjectsLocationsMuteConfigsService struct {
   787  	s *Service
   788  }
   789  
   790  func NewProjectsMuteConfigsService(s *Service) *ProjectsMuteConfigsService {
   791  	rs := &ProjectsMuteConfigsService{s: s}
   792  	return rs
   793  }
   794  
   795  type ProjectsMuteConfigsService struct {
   796  	s *Service
   797  }
   798  
   799  func NewProjectsNotificationConfigsService(s *Service) *ProjectsNotificationConfigsService {
   800  	rs := &ProjectsNotificationConfigsService{s: s}
   801  	return rs
   802  }
   803  
   804  type ProjectsNotificationConfigsService struct {
   805  	s *Service
   806  }
   807  
   808  func NewProjectsSecurityHealthAnalyticsSettingsService(s *Service) *ProjectsSecurityHealthAnalyticsSettingsService {
   809  	rs := &ProjectsSecurityHealthAnalyticsSettingsService{s: s}
   810  	rs.CustomModules = NewProjectsSecurityHealthAnalyticsSettingsCustomModulesService(s)
   811  	rs.EffectiveCustomModules = NewProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesService(s)
   812  	return rs
   813  }
   814  
   815  type ProjectsSecurityHealthAnalyticsSettingsService struct {
   816  	s *Service
   817  
   818  	CustomModules *ProjectsSecurityHealthAnalyticsSettingsCustomModulesService
   819  
   820  	EffectiveCustomModules *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesService
   821  }
   822  
   823  func NewProjectsSecurityHealthAnalyticsSettingsCustomModulesService(s *Service) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesService {
   824  	rs := &ProjectsSecurityHealthAnalyticsSettingsCustomModulesService{s: s}
   825  	return rs
   826  }
   827  
   828  type ProjectsSecurityHealthAnalyticsSettingsCustomModulesService struct {
   829  	s *Service
   830  }
   831  
   832  func NewProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesService(s *Service) *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesService {
   833  	rs := &ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesService{s: s}
   834  	return rs
   835  }
   836  
   837  type ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesService struct {
   838  	s *Service
   839  }
   840  
   841  func NewProjectsSourcesService(s *Service) *ProjectsSourcesService {
   842  	rs := &ProjectsSourcesService{s: s}
   843  	rs.Findings = NewProjectsSourcesFindingsService(s)
   844  	return rs
   845  }
   846  
   847  type ProjectsSourcesService struct {
   848  	s *Service
   849  
   850  	Findings *ProjectsSourcesFindingsService
   851  }
   852  
   853  func NewProjectsSourcesFindingsService(s *Service) *ProjectsSourcesFindingsService {
   854  	rs := &ProjectsSourcesFindingsService{s: s}
   855  	rs.ExternalSystems = NewProjectsSourcesFindingsExternalSystemsService(s)
   856  	return rs
   857  }
   858  
   859  type ProjectsSourcesFindingsService struct {
   860  	s *Service
   861  
   862  	ExternalSystems *ProjectsSourcesFindingsExternalSystemsService
   863  }
   864  
   865  func NewProjectsSourcesFindingsExternalSystemsService(s *Service) *ProjectsSourcesFindingsExternalSystemsService {
   866  	rs := &ProjectsSourcesFindingsExternalSystemsService{s: s}
   867  	return rs
   868  }
   869  
   870  type ProjectsSourcesFindingsExternalSystemsService struct {
   871  	s *Service
   872  }
   873  
   874  // Access: Represents an access event.
   875  type Access struct {
   876  	// CallerIp: Caller's IP address, such as "1.1.1.1".
   877  	CallerIp string `json:"callerIp,omitempty"`
   878  	// CallerIpGeo: The caller IP's geolocation, which identifies where the call
   879  	// came from.
   880  	CallerIpGeo *Geolocation `json:"callerIpGeo,omitempty"`
   881  	// MethodName: The method that the service account called, e.g. "SetIamPolicy".
   882  	MethodName string `json:"methodName,omitempty"`
   883  	// PrincipalEmail: Associated email, such as "foo@google.com". The email
   884  	// address of the authenticated user or a service account acting on behalf of a
   885  	// third party principal making the request. For third party identity callers,
   886  	// the `principal_subject` field is populated instead of this field. For
   887  	// privacy reasons, the principal email address is sometimes redacted. For more
   888  	// information, see Caller identities in audit logs
   889  	// (https://cloud.google.com/logging/docs/audit#user-id).
   890  	PrincipalEmail string `json:"principalEmail,omitempty"`
   891  	// PrincipalSubject: A string that represents the principal_subject that is
   892  	// associated with the identity. Unlike `principal_email`, `principal_subject`
   893  	// supports principals that aren't associated with email addresses, such as
   894  	// third party principals. For most identities, the format is
   895  	// `principal://iam.googleapis.com/{identity pool name}/subject/{subject}`.
   896  	// Some GKE identities, such as GKE_WORKLOAD, FREEFORM, and GKE_HUB_WORKLOAD,
   897  	// still use the legacy format `serviceAccount:{identity pool
   898  	// name}[{subject}]`.
   899  	PrincipalSubject string `json:"principalSubject,omitempty"`
   900  	// ServiceAccountDelegationInfo: The identity delegation history of an
   901  	// authenticated service account that made the request. The
   902  	// `serviceAccountDelegationInfo[]` object contains information about the real
   903  	// authorities that try to access Google Cloud resources by delegating on a
   904  	// service account. When multiple authorities are present, they are guaranteed
   905  	// to be sorted based on the original ordering of the identity delegation
   906  	// events.
   907  	ServiceAccountDelegationInfo []*ServiceAccountDelegationInfo `json:"serviceAccountDelegationInfo,omitempty"`
   908  	// ServiceAccountKeyName: The name of the service account key that was used to
   909  	// create or exchange credentials when authenticating the service account that
   910  	// made the request. This is a scheme-less URI full resource name. For example:
   911  	// "//iam.googleapis.com/projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{k
   912  	// ey}".
   913  	ServiceAccountKeyName string `json:"serviceAccountKeyName,omitempty"`
   914  	// ServiceName: This is the API service that the service account made a call
   915  	// to, e.g. "iam.googleapis.com"
   916  	ServiceName string `json:"serviceName,omitempty"`
   917  	// UserAgent: The caller's user agent string associated with the finding.
   918  	UserAgent string `json:"userAgent,omitempty"`
   919  	// UserAgentFamily: Type of user agent associated with the finding. For
   920  	// example, an operating system shell or an embedded or standalone application.
   921  	UserAgentFamily string `json:"userAgentFamily,omitempty"`
   922  	// UserName: A string that represents a username. The username provided depends
   923  	// on the type of the finding and is likely not an IAM principal. For example,
   924  	// this can be a system username if the finding is related to a virtual
   925  	// machine, or it can be an application login username.
   926  	UserName string `json:"userName,omitempty"`
   927  	// ForceSendFields is a list of field names (e.g. "CallerIp") to
   928  	// unconditionally include in API requests. By default, fields with empty or
   929  	// default values are omitted from API requests. See
   930  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   931  	// details.
   932  	ForceSendFields []string `json:"-"`
   933  	// NullFields is a list of field names (e.g. "CallerIp") to include in API
   934  	// requests with the JSON null value. By default, fields with empty values are
   935  	// omitted from API requests. See
   936  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   937  	NullFields []string `json:"-"`
   938  }
   939  
   940  func (s *Access) MarshalJSON() ([]byte, error) {
   941  	type NoMethod Access
   942  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   943  }
   944  
   945  // AccessReview: Conveys information about a Kubernetes access review (such as
   946  // one returned by a `kubectl auth can-i`
   947  // (https://kubernetes.io/docs/reference/access-authn-authz/authorization/#checking-api-access)
   948  // command) that was involved in a finding.
   949  type AccessReview struct {
   950  	// Group: The API group of the resource. "*" means all.
   951  	Group string `json:"group,omitempty"`
   952  	// Name: The name of the resource being requested. Empty means all.
   953  	Name string `json:"name,omitempty"`
   954  	// Ns: Namespace of the action being requested. Currently, there is no
   955  	// distinction between no namespace and all namespaces. Both are represented by
   956  	// "" (empty).
   957  	Ns string `json:"ns,omitempty"`
   958  	// Resource: The optional resource type requested. "*" means all.
   959  	Resource string `json:"resource,omitempty"`
   960  	// Subresource: The optional subresource type.
   961  	Subresource string `json:"subresource,omitempty"`
   962  	// Verb: A Kubernetes resource API verb, like get, list, watch, create, update,
   963  	// delete, proxy. "*" means all.
   964  	Verb string `json:"verb,omitempty"`
   965  	// Version: The API version of the resource. "*" means all.
   966  	Version string `json:"version,omitempty"`
   967  	// ForceSendFields is a list of field names (e.g. "Group") to unconditionally
   968  	// include in API requests. By default, fields with empty or default values are
   969  	// omitted from API requests. See
   970  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   971  	// details.
   972  	ForceSendFields []string `json:"-"`
   973  	// NullFields is a list of field names (e.g. "Group") to include in API
   974  	// requests with the JSON null value. By default, fields with empty values are
   975  	// omitted from API requests. See
   976  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   977  	NullFields []string `json:"-"`
   978  }
   979  
   980  func (s *AccessReview) MarshalJSON() ([]byte, error) {
   981  	type NoMethod AccessReview
   982  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   983  }
   984  
   985  // AdaptiveProtection: Information about Google Cloud Armor Adaptive Protection
   986  // (https://cloud.google.com/armor/docs/cloud-armor-overview#google-cloud-armor-adaptive-protection).
   987  type AdaptiveProtection struct {
   988  	// Confidence: A score of 0 means that there is low confidence that the
   989  	// detected event is an actual attack. A score of 1 means that there is high
   990  	// confidence that the detected event is an attack. See the Adaptive Protection
   991  	// documentation
   992  	// (https://cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-tuning)
   993  	// for further explanation.
   994  	Confidence float64 `json:"confidence,omitempty"`
   995  	// ForceSendFields is a list of field names (e.g. "Confidence") to
   996  	// unconditionally include in API requests. By default, fields with empty or
   997  	// default values are omitted from API requests. See
   998  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   999  	// details.
  1000  	ForceSendFields []string `json:"-"`
  1001  	// NullFields is a list of field names (e.g. "Confidence") to include in API
  1002  	// requests with the JSON null value. By default, fields with empty values are
  1003  	// omitted from API requests. See
  1004  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1005  	NullFields []string `json:"-"`
  1006  }
  1007  
  1008  func (s *AdaptiveProtection) MarshalJSON() ([]byte, error) {
  1009  	type NoMethod AdaptiveProtection
  1010  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1011  }
  1012  
  1013  func (s *AdaptiveProtection) UnmarshalJSON(data []byte) error {
  1014  	type NoMethod AdaptiveProtection
  1015  	var s1 struct {
  1016  		Confidence gensupport.JSONFloat64 `json:"confidence"`
  1017  		*NoMethod
  1018  	}
  1019  	s1.NoMethod = (*NoMethod)(s)
  1020  	if err := json.Unmarshal(data, &s1); err != nil {
  1021  		return err
  1022  	}
  1023  	s.Confidence = float64(s1.Confidence)
  1024  	return nil
  1025  }
  1026  
  1027  // Application: Represents an application associated with a finding.
  1028  type Application struct {
  1029  	// BaseUri: The base URI that identifies the network location of the
  1030  	// application in which the vulnerability was detected. For example,
  1031  	// `http://example.com`.
  1032  	BaseUri string `json:"baseUri,omitempty"`
  1033  	// FullUri: The full URI with payload that can be used to reproduce the
  1034  	// vulnerability. For example, `http://example.com?p=aMmYgI6H`.
  1035  	FullUri string `json:"fullUri,omitempty"`
  1036  	// ForceSendFields is a list of field names (e.g. "BaseUri") to unconditionally
  1037  	// include in API requests. By default, fields with empty or default values are
  1038  	// omitted from API requests. See
  1039  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1040  	// details.
  1041  	ForceSendFields []string `json:"-"`
  1042  	// NullFields is a list of field names (e.g. "BaseUri") to include in API
  1043  	// requests with the JSON null value. By default, fields with empty values are
  1044  	// omitted from API requests. See
  1045  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1046  	NullFields []string `json:"-"`
  1047  }
  1048  
  1049  func (s *Application) MarshalJSON() ([]byte, error) {
  1050  	type NoMethod Application
  1051  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1052  }
  1053  
  1054  // Asset: Security Command Center representation of a Google Cloud resource.
  1055  // The Asset is a Security Command Center resource that captures information
  1056  // about a single Google Cloud resource. All modifications to an Asset are only
  1057  // within the context of Security Command Center and don't affect the
  1058  // referenced Google Cloud resource.
  1059  type Asset struct {
  1060  	// CanonicalName: The canonical name of the resource. It's either
  1061  	// "organizations/{organization_id}/assets/{asset_id}",
  1062  	// "folders/{folder_id}/assets/{asset_id}" or
  1063  	// "projects/{project_number}/assets/{asset_id}", depending on the closest CRM
  1064  	// ancestor of the resource.
  1065  	CanonicalName string `json:"canonicalName,omitempty"`
  1066  	// CreateTime: The time at which the asset was created in Security Command
  1067  	// Center.
  1068  	CreateTime string `json:"createTime,omitempty"`
  1069  	// IamPolicy: Cloud IAM Policy information associated with the Google Cloud
  1070  	// resource described by the Security Command Center asset. This information is
  1071  	// managed and defined by the Google Cloud resource and cannot be modified by
  1072  	// the user.
  1073  	IamPolicy *IamPolicy `json:"iamPolicy,omitempty"`
  1074  	// Name: The relative resource name of this asset. See:
  1075  	// https://cloud.google.com/apis/design/resource_names#relative_resource_name
  1076  	// Example: "organizations/{organization_id}/assets/{asset_id}".
  1077  	Name string `json:"name,omitempty"`
  1078  	// ResourceProperties: Resource managed properties. These properties are
  1079  	// managed and defined by the Google Cloud resource and cannot be modified by
  1080  	// the user.
  1081  	ResourceProperties googleapi.RawMessage `json:"resourceProperties,omitempty"`
  1082  	// SecurityCenterProperties: Security Command Center managed properties. These
  1083  	// properties are managed by Security Command Center and cannot be modified by
  1084  	// the user.
  1085  	SecurityCenterProperties *SecurityCenterProperties `json:"securityCenterProperties,omitempty"`
  1086  	// SecurityMarks: User specified security marks. These marks are entirely
  1087  	// managed by the user and come from the SecurityMarks resource that belongs to
  1088  	// the asset.
  1089  	SecurityMarks *SecurityMarks `json:"securityMarks,omitempty"`
  1090  	// UpdateTime: The time at which the asset was last updated or added in Cloud
  1091  	// SCC.
  1092  	UpdateTime string `json:"updateTime,omitempty"`
  1093  	// ForceSendFields is a list of field names (e.g. "CanonicalName") to
  1094  	// unconditionally include in API requests. By default, fields with empty or
  1095  	// default values are omitted from API requests. See
  1096  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1097  	// details.
  1098  	ForceSendFields []string `json:"-"`
  1099  	// NullFields is a list of field names (e.g. "CanonicalName") to include in API
  1100  	// requests with the JSON null value. By default, fields with empty values are
  1101  	// omitted from API requests. See
  1102  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1103  	NullFields []string `json:"-"`
  1104  }
  1105  
  1106  func (s *Asset) MarshalJSON() ([]byte, error) {
  1107  	type NoMethod Asset
  1108  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1109  }
  1110  
  1111  // AssetDiscoveryConfig: The configuration used for Asset Discovery runs.
  1112  type AssetDiscoveryConfig struct {
  1113  	// FolderIds: The folder ids to use for filtering asset discovery. It consists
  1114  	// of only digits, e.g., 756619654966.
  1115  	FolderIds []string `json:"folderIds,omitempty"`
  1116  	// InclusionMode: The mode to use for filtering asset discovery.
  1117  	//
  1118  	// Possible values:
  1119  	//   "INCLUSION_MODE_UNSPECIFIED" - Unspecified. Setting the mode with this
  1120  	// value will disable inclusion/exclusion filtering for Asset Discovery.
  1121  	//   "INCLUDE_ONLY" - Asset Discovery will capture only the resources within
  1122  	// the projects specified. All other resources will be ignored.
  1123  	//   "EXCLUDE" - Asset Discovery will ignore all resources under the projects
  1124  	// specified. All other resources will be retrieved.
  1125  	InclusionMode string `json:"inclusionMode,omitempty"`
  1126  	// ProjectIds: The project ids to use for filtering asset discovery.
  1127  	ProjectIds []string `json:"projectIds,omitempty"`
  1128  	// ForceSendFields is a list of field names (e.g. "FolderIds") to
  1129  	// unconditionally include in API requests. By default, fields with empty or
  1130  	// default values are omitted from API requests. See
  1131  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1132  	// details.
  1133  	ForceSendFields []string `json:"-"`
  1134  	// NullFields is a list of field names (e.g. "FolderIds") to include in API
  1135  	// requests with the JSON null value. By default, fields with empty values are
  1136  	// omitted from API requests. See
  1137  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1138  	NullFields []string `json:"-"`
  1139  }
  1140  
  1141  func (s *AssetDiscoveryConfig) MarshalJSON() ([]byte, error) {
  1142  	type NoMethod AssetDiscoveryConfig
  1143  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1144  }
  1145  
  1146  // Attack: Information about DDoS attack volume and classification.
  1147  type Attack struct {
  1148  	// Classification: Type of attack, for example, 'SYN-flood', 'NTP-udp', or
  1149  	// 'CHARGEN-udp'.
  1150  	Classification string `json:"classification,omitempty"`
  1151  	// VolumeBps: Total BPS (bytes per second) volume of attack.
  1152  	VolumeBps int64 `json:"volumeBps,omitempty"`
  1153  	// VolumePps: Total PPS (packets per second) volume of attack.
  1154  	VolumePps int64 `json:"volumePps,omitempty"`
  1155  	// ForceSendFields is a list of field names (e.g. "Classification") to
  1156  	// unconditionally include in API requests. By default, fields with empty or
  1157  	// default values are omitted from API requests. See
  1158  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1159  	// details.
  1160  	ForceSendFields []string `json:"-"`
  1161  	// NullFields is a list of field names (e.g. "Classification") to include in
  1162  	// API requests with the JSON null value. By default, fields with empty values
  1163  	// are omitted from API requests. See
  1164  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1165  	NullFields []string `json:"-"`
  1166  }
  1167  
  1168  func (s *Attack) MarshalJSON() ([]byte, error) {
  1169  	type NoMethod Attack
  1170  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1171  }
  1172  
  1173  // AttackExposure: An attack exposure contains the results of an attack path
  1174  // simulation run.
  1175  type AttackExposure struct {
  1176  	// AttackExposureResult: The resource name of the attack path simulation result
  1177  	// that contains the details regarding this attack exposure score. Example:
  1178  	// organizations/123/simulations/456/attackExposureResults/789
  1179  	AttackExposureResult string `json:"attackExposureResult,omitempty"`
  1180  	// ExposedHighValueResourcesCount: The number of high value resources that are
  1181  	// exposed as a result of this finding.
  1182  	ExposedHighValueResourcesCount int64 `json:"exposedHighValueResourcesCount,omitempty"`
  1183  	// ExposedLowValueResourcesCount: The number of high value resources that are
  1184  	// exposed as a result of this finding.
  1185  	ExposedLowValueResourcesCount int64 `json:"exposedLowValueResourcesCount,omitempty"`
  1186  	// ExposedMediumValueResourcesCount: The number of medium value resources that
  1187  	// are exposed as a result of this finding.
  1188  	ExposedMediumValueResourcesCount int64 `json:"exposedMediumValueResourcesCount,omitempty"`
  1189  	// LatestCalculationTime: The most recent time the attack exposure was updated
  1190  	// on this finding.
  1191  	LatestCalculationTime string `json:"latestCalculationTime,omitempty"`
  1192  	// Score: A number between 0 (inclusive) and infinity that represents how
  1193  	// important this finding is to remediate. The higher the score, the more
  1194  	// important it is to remediate.
  1195  	Score float64 `json:"score,omitempty"`
  1196  	// State: What state this AttackExposure is in. This captures whether or not an
  1197  	// attack exposure has been calculated or not.
  1198  	//
  1199  	// Possible values:
  1200  	//   "STATE_UNSPECIFIED" - The state is not specified.
  1201  	//   "CALCULATED" - The attack exposure has been calculated.
  1202  	//   "NOT_CALCULATED" - The attack exposure has not been calculated.
  1203  	State string `json:"state,omitempty"`
  1204  	// ForceSendFields is a list of field names (e.g. "AttackExposureResult") to
  1205  	// unconditionally include in API requests. By default, fields with empty or
  1206  	// default values are omitted from API requests. See
  1207  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1208  	// details.
  1209  	ForceSendFields []string `json:"-"`
  1210  	// NullFields is a list of field names (e.g. "AttackExposureResult") to include
  1211  	// in API requests with the JSON null value. By default, fields with empty
  1212  	// values are omitted from API requests. See
  1213  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1214  	NullFields []string `json:"-"`
  1215  }
  1216  
  1217  func (s *AttackExposure) MarshalJSON() ([]byte, error) {
  1218  	type NoMethod AttackExposure
  1219  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1220  }
  1221  
  1222  func (s *AttackExposure) UnmarshalJSON(data []byte) error {
  1223  	type NoMethod AttackExposure
  1224  	var s1 struct {
  1225  		Score gensupport.JSONFloat64 `json:"score"`
  1226  		*NoMethod
  1227  	}
  1228  	s1.NoMethod = (*NoMethod)(s)
  1229  	if err := json.Unmarshal(data, &s1); err != nil {
  1230  		return err
  1231  	}
  1232  	s.Score = float64(s1.Score)
  1233  	return nil
  1234  }
  1235  
  1236  // AttackPath: A path that an attacker could take to reach an exposed resource.
  1237  type AttackPath struct {
  1238  	// Edges: A list of the edges between nodes in this attack path.
  1239  	Edges []*AttackPathEdge `json:"edges,omitempty"`
  1240  	// Name: The attack path name, for example,
  1241  	// `organizations/12/simulation/34/valuedResources/56/attackPaths/78`
  1242  	Name string `json:"name,omitempty"`
  1243  	// PathNodes: A list of nodes that exist in this attack path.
  1244  	PathNodes []*AttackPathNode `json:"pathNodes,omitempty"`
  1245  	// ForceSendFields is a list of field names (e.g. "Edges") to unconditionally
  1246  	// include in API requests. By default, fields with empty or default values are
  1247  	// omitted from API requests. See
  1248  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1249  	// details.
  1250  	ForceSendFields []string `json:"-"`
  1251  	// NullFields is a list of field names (e.g. "Edges") to include in API
  1252  	// requests with the JSON null value. By default, fields with empty values are
  1253  	// omitted from API requests. See
  1254  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1255  	NullFields []string `json:"-"`
  1256  }
  1257  
  1258  func (s *AttackPath) MarshalJSON() ([]byte, error) {
  1259  	type NoMethod AttackPath
  1260  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1261  }
  1262  
  1263  // AttackPathEdge: Represents a connection between a source node and a
  1264  // destination node in this attack path.
  1265  type AttackPathEdge struct {
  1266  	// Destination: The attack node uuid of the destination node.
  1267  	Destination string `json:"destination,omitempty"`
  1268  	// Source: The attack node uuid of the source node.
  1269  	Source string `json:"source,omitempty"`
  1270  	// ForceSendFields is a list of field names (e.g. "Destination") to
  1271  	// unconditionally include in API requests. By default, fields with empty or
  1272  	// default values are omitted from API requests. See
  1273  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1274  	// details.
  1275  	ForceSendFields []string `json:"-"`
  1276  	// NullFields is a list of field names (e.g. "Destination") to include in API
  1277  	// requests with the JSON null value. By default, fields with empty values are
  1278  	// omitted from API requests. See
  1279  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1280  	NullFields []string `json:"-"`
  1281  }
  1282  
  1283  func (s *AttackPathEdge) MarshalJSON() ([]byte, error) {
  1284  	type NoMethod AttackPathEdge
  1285  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1286  }
  1287  
  1288  // AttackPathNode: Represents one point that an attacker passes through in this
  1289  // attack path.
  1290  type AttackPathNode struct {
  1291  	// AssociatedFindings: The findings associated with this node in the attack
  1292  	// path.
  1293  	AssociatedFindings []*PathNodeAssociatedFinding `json:"associatedFindings,omitempty"`
  1294  	// AttackSteps: A list of attack step nodes that exist in this attack path
  1295  	// node.
  1296  	AttackSteps []*AttackStepNode `json:"attackSteps,omitempty"`
  1297  	// DisplayName: Human-readable name of this resource.
  1298  	DisplayName string `json:"displayName,omitempty"`
  1299  	// Resource: The name of the resource at this point in the attack path. The
  1300  	// format of the name follows the Cloud Asset Inventory resource name format
  1301  	// ("https://cloud.google.com/asset-inventory/docs/resource-name-format")
  1302  	Resource string `json:"resource,omitempty"`
  1303  	// ResourceType: The supported resource type
  1304  	// (https://cloud.google.com/asset-inventory/docs/supported-asset-types")
  1305  	ResourceType string `json:"resourceType,omitempty"`
  1306  	// Uuid: Unique id of the attack path node.
  1307  	Uuid string `json:"uuid,omitempty"`
  1308  	// ForceSendFields is a list of field names (e.g. "AssociatedFindings") to
  1309  	// unconditionally include in API requests. By default, fields with empty or
  1310  	// default values are omitted from API requests. See
  1311  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1312  	// details.
  1313  	ForceSendFields []string `json:"-"`
  1314  	// NullFields is a list of field names (e.g. "AssociatedFindings") to include
  1315  	// in API requests with the JSON null value. By default, fields with empty
  1316  	// values are omitted from API requests. See
  1317  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1318  	NullFields []string `json:"-"`
  1319  }
  1320  
  1321  func (s *AttackPathNode) MarshalJSON() ([]byte, error) {
  1322  	type NoMethod AttackPathNode
  1323  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1324  }
  1325  
  1326  // AttackStepNode: Detailed steps the attack can take between path nodes.
  1327  type AttackStepNode struct {
  1328  	// Description: Attack step description
  1329  	Description string `json:"description,omitempty"`
  1330  	// DisplayName: User friendly name of the attack step
  1331  	DisplayName string `json:"displayName,omitempty"`
  1332  	// Labels: Attack step labels for metadata
  1333  	Labels map[string]string `json:"labels,omitempty"`
  1334  	// Type: Attack step type. Can be either AND, OR or DEFENSE
  1335  	//
  1336  	// Possible values:
  1337  	//   "NODE_TYPE_UNSPECIFIED" - Type not specified
  1338  	//   "NODE_TYPE_AND" - Incoming edge joined with AND
  1339  	//   "NODE_TYPE_OR" - Incoming edge joined with OR
  1340  	//   "NODE_TYPE_DEFENSE" - Incoming edge is defense
  1341  	//   "NODE_TYPE_ATTACKER" - Incoming edge is attacker
  1342  	Type string `json:"type,omitempty"`
  1343  	// Uuid: Unique ID for one Node
  1344  	Uuid string `json:"uuid,omitempty"`
  1345  	// ForceSendFields is a list of field names (e.g. "Description") to
  1346  	// unconditionally include in API requests. By default, fields with empty or
  1347  	// default values are omitted from API requests. See
  1348  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1349  	// details.
  1350  	ForceSendFields []string `json:"-"`
  1351  	// NullFields is a list of field names (e.g. "Description") to include in API
  1352  	// requests with the JSON null value. By default, fields with empty values are
  1353  	// omitted from API requests. See
  1354  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1355  	NullFields []string `json:"-"`
  1356  }
  1357  
  1358  func (s *AttackStepNode) MarshalJSON() ([]byte, error) {
  1359  	type NoMethod AttackStepNode
  1360  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1361  }
  1362  
  1363  // AuditConfig: Specifies the audit configuration for a service. The
  1364  // configuration determines which permission types are logged, and what
  1365  // identities, if any, are exempted from logging. An AuditConfig must have one
  1366  // or more AuditLogConfigs. If there are AuditConfigs for both `allServices`
  1367  // and a specific service, the union of the two AuditConfigs is used for that
  1368  // service: the log_types specified in each AuditConfig are enabled, and the
  1369  // exempted_members in each AuditLogConfig are exempted. Example Policy with
  1370  // multiple AuditConfigs: { "audit_configs": [ { "service": "allServices",
  1371  // "audit_log_configs": [ { "log_type": "DATA_READ", "exempted_members": [
  1372  // "user:jose@example.com" ] }, { "log_type": "DATA_WRITE" }, { "log_type":
  1373  // "ADMIN_READ" } ] }, { "service": "sampleservice.googleapis.com",
  1374  // "audit_log_configs": [ { "log_type": "DATA_READ" }, { "log_type":
  1375  // "DATA_WRITE", "exempted_members": [ "user:aliya@example.com" ] } ] } ] } For
  1376  // sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
  1377  // logging. It also exempts `jose@example.com` from DATA_READ logging, and
  1378  // `aliya@example.com` from DATA_WRITE logging.
  1379  type AuditConfig struct {
  1380  	// AuditLogConfigs: The configuration for logging of each type of permission.
  1381  	AuditLogConfigs []*AuditLogConfig `json:"auditLogConfigs,omitempty"`
  1382  	// Service: Specifies a service that will be enabled for audit logging. For
  1383  	// example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices`
  1384  	// is a special value that covers all services.
  1385  	Service string `json:"service,omitempty"`
  1386  	// ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to
  1387  	// unconditionally include in API requests. By default, fields with empty or
  1388  	// default values are omitted from API requests. See
  1389  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1390  	// details.
  1391  	ForceSendFields []string `json:"-"`
  1392  	// NullFields is a list of field names (e.g. "AuditLogConfigs") to include in
  1393  	// API requests with the JSON null value. By default, fields with empty values
  1394  	// are omitted from API requests. See
  1395  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1396  	NullFields []string `json:"-"`
  1397  }
  1398  
  1399  func (s *AuditConfig) MarshalJSON() ([]byte, error) {
  1400  	type NoMethod AuditConfig
  1401  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1402  }
  1403  
  1404  // AuditLogConfig: Provides the configuration for logging a type of
  1405  // permissions. Example: { "audit_log_configs": [ { "log_type": "DATA_READ",
  1406  // "exempted_members": [ "user:jose@example.com" ] }, { "log_type":
  1407  // "DATA_WRITE" } ] } This enables 'DATA_READ' and 'DATA_WRITE' logging, while
  1408  // exempting jose@example.com from DATA_READ logging.
  1409  type AuditLogConfig struct {
  1410  	// ExemptedMembers: Specifies the identities that do not cause logging for this
  1411  	// type of permission. Follows the same format of Binding.members.
  1412  	ExemptedMembers []string `json:"exemptedMembers,omitempty"`
  1413  	// LogType: The log type that this config enables.
  1414  	//
  1415  	// Possible values:
  1416  	//   "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this.
  1417  	//   "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy
  1418  	//   "DATA_WRITE" - Data writes. Example: CloudSQL Users create
  1419  	//   "DATA_READ" - Data reads. Example: CloudSQL Users list
  1420  	LogType string `json:"logType,omitempty"`
  1421  	// ForceSendFields is a list of field names (e.g. "ExemptedMembers") to
  1422  	// unconditionally include in API requests. By default, fields with empty or
  1423  	// default values are omitted from API requests. See
  1424  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1425  	// details.
  1426  	ForceSendFields []string `json:"-"`
  1427  	// NullFields is a list of field names (e.g. "ExemptedMembers") to include in
  1428  	// API requests with the JSON null value. By default, fields with empty values
  1429  	// are omitted from API requests. See
  1430  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1431  	NullFields []string `json:"-"`
  1432  }
  1433  
  1434  func (s *AuditLogConfig) MarshalJSON() ([]byte, error) {
  1435  	type NoMethod AuditLogConfig
  1436  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1437  }
  1438  
  1439  // AwsAccount: An AWS account that is a member of an organization.
  1440  type AwsAccount struct {
  1441  	// Id: The unique identifier (ID) of the account, containing exactly 12 digits.
  1442  	Id string `json:"id,omitempty"`
  1443  	// Name: The friendly name of this account.
  1444  	Name string `json:"name,omitempty"`
  1445  	// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
  1446  	// include in API requests. By default, fields with empty or default values are
  1447  	// omitted from API requests. See
  1448  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1449  	// details.
  1450  	ForceSendFields []string `json:"-"`
  1451  	// NullFields is a list of field names (e.g. "Id") to include in API requests
  1452  	// with the JSON null value. By default, fields with empty values are omitted
  1453  	// from API requests. See
  1454  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1455  	NullFields []string `json:"-"`
  1456  }
  1457  
  1458  func (s *AwsAccount) MarshalJSON() ([]byte, error) {
  1459  	type NoMethod AwsAccount
  1460  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1461  }
  1462  
  1463  // AwsMetadata: AWS metadata associated with the resource, only applicable if
  1464  // the finding's cloud provider is Amazon Web Services.
  1465  type AwsMetadata struct {
  1466  	// Account: The AWS account associated with the resource.
  1467  	Account *AwsAccount `json:"account,omitempty"`
  1468  	// Organization: The AWS organization associated with the resource.
  1469  	Organization *AwsOrganization `json:"organization,omitempty"`
  1470  	// OrganizationalUnits: A list of AWS organizational units associated with the
  1471  	// resource, ordered from lowest level (closest to the account) to highest
  1472  	// level.
  1473  	OrganizationalUnits []*AwsOrganizationalUnit `json:"organizationalUnits,omitempty"`
  1474  	// ForceSendFields is a list of field names (e.g. "Account") to unconditionally
  1475  	// include in API requests. By default, fields with empty or default values are
  1476  	// omitted from API requests. See
  1477  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1478  	// details.
  1479  	ForceSendFields []string `json:"-"`
  1480  	// NullFields is a list of field names (e.g. "Account") to include in API
  1481  	// requests with the JSON null value. By default, fields with empty values are
  1482  	// omitted from API requests. See
  1483  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1484  	NullFields []string `json:"-"`
  1485  }
  1486  
  1487  func (s *AwsMetadata) MarshalJSON() ([]byte, error) {
  1488  	type NoMethod AwsMetadata
  1489  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1490  }
  1491  
  1492  // AwsOrganization: An organization is a collection of accounts that are
  1493  // centrally managed together using consolidated billing, organized
  1494  // hierarchically with organizational units (OUs), and controlled with
  1495  // policies.
  1496  type AwsOrganization struct {
  1497  	// Id: The unique identifier (ID) for the organization. The regex pattern for
  1498  	// an organization ID string requires "o-" followed by from 10 to 32 lowercase
  1499  	// letters or digits.
  1500  	Id string `json:"id,omitempty"`
  1501  	// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
  1502  	// include in API requests. By default, fields with empty or default values are
  1503  	// omitted from API requests. See
  1504  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1505  	// details.
  1506  	ForceSendFields []string `json:"-"`
  1507  	// NullFields is a list of field names (e.g. "Id") to include in API requests
  1508  	// with the JSON null value. By default, fields with empty values are omitted
  1509  	// from API requests. See
  1510  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1511  	NullFields []string `json:"-"`
  1512  }
  1513  
  1514  func (s *AwsOrganization) MarshalJSON() ([]byte, error) {
  1515  	type NoMethod AwsOrganization
  1516  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1517  }
  1518  
  1519  // AwsOrganizationalUnit: An Organizational Unit (OU) is a container of AWS
  1520  // accounts within a root of an organization. Policies that are attached to an
  1521  // OU apply to all accounts contained in that OU and in any child OUs.
  1522  type AwsOrganizationalUnit struct {
  1523  	// Id: The unique identifier (ID) associated with this OU. The regex pattern
  1524  	// for an organizational unit ID string requires "ou-" followed by from 4 to 32
  1525  	// lowercase letters or digits (the ID of the root that contains the OU). This
  1526  	// string is followed by a second "-" dash and from 8 to 32 additional
  1527  	// lowercase letters or digits. For example, "ou-ab12-cd34ef56".
  1528  	Id string `json:"id,omitempty"`
  1529  	// Name: The friendly name of the OU.
  1530  	Name string `json:"name,omitempty"`
  1531  	// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
  1532  	// include in API requests. By default, fields with empty or default values are
  1533  	// omitted from API requests. See
  1534  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1535  	// details.
  1536  	ForceSendFields []string `json:"-"`
  1537  	// NullFields is a list of field names (e.g. "Id") to include in API requests
  1538  	// with the JSON null value. By default, fields with empty values are omitted
  1539  	// from API requests. See
  1540  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1541  	NullFields []string `json:"-"`
  1542  }
  1543  
  1544  func (s *AwsOrganizationalUnit) MarshalJSON() ([]byte, error) {
  1545  	type NoMethod AwsOrganizationalUnit
  1546  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1547  }
  1548  
  1549  // BackupDisasterRecovery: Information related to Google Cloud Backup and DR
  1550  // Service findings.
  1551  type BackupDisasterRecovery struct {
  1552  	// Appliance: The name of the Backup and DR appliance that captures, moves, and
  1553  	// manages the lifecycle of backup data. For example, `backup-server-57137`.
  1554  	Appliance string `json:"appliance,omitempty"`
  1555  	// Applications: The names of Backup and DR applications. An application is a
  1556  	// VM, database, or file system on a managed host monitored by a backup and
  1557  	// recovery appliance. For example, `centos7-01-vol00`, `centos7-01-vol01`,
  1558  	// `centos7-01-vol02`.
  1559  	Applications []string `json:"applications,omitempty"`
  1560  	// BackupCreateTime: The timestamp at which the Backup and DR backup was
  1561  	// created.
  1562  	BackupCreateTime string `json:"backupCreateTime,omitempty"`
  1563  	// BackupTemplate: The name of a Backup and DR template which comprises one or
  1564  	// more backup policies. See the Backup and DR documentation
  1565  	// (https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#temp)
  1566  	// for more information. For example, `snap-ov`.
  1567  	BackupTemplate string `json:"backupTemplate,omitempty"`
  1568  	// BackupType: The backup type of the Backup and DR image. For example,
  1569  	// `Snapshot`, `Remote Snapshot`, `OnVault`.
  1570  	BackupType string `json:"backupType,omitempty"`
  1571  	// Host: The name of a Backup and DR host, which is managed by the backup and
  1572  	// recovery appliance and known to the management console. The host can be of
  1573  	// type Generic (for example, Compute Engine, SQL Server, Oracle DB, SMB file
  1574  	// system, etc.), vCenter, or an ESX server. See the Backup and DR
  1575  	// documentation on hosts
  1576  	// (https://cloud.google.com/backup-disaster-recovery/docs/configuration/manage-hosts-and-their-applications)
  1577  	// for more information. For example, `centos7-01`.
  1578  	Host string `json:"host,omitempty"`
  1579  	// Policies: The names of Backup and DR policies that are associated with a
  1580  	// template and that define when to run a backup, how frequently to run a
  1581  	// backup, and how long to retain the backup image. For example, `onvaults`.
  1582  	Policies []string `json:"policies,omitempty"`
  1583  	// PolicyOptions: The names of Backup and DR advanced policy options of a
  1584  	// policy applying to an application. See the Backup and DR documentation on
  1585  	// policy options
  1586  	// (https://cloud.google.com/backup-disaster-recovery/docs/create-plan/policy-settings).
  1587  	// For example, `skipofflineappsincongrp, nounmap`.
  1588  	PolicyOptions []string `json:"policyOptions,omitempty"`
  1589  	// Profile: The name of the Backup and DR resource profile that specifies the
  1590  	// storage media for backups of application and VM data. See the Backup and DR
  1591  	// documentation on profiles
  1592  	// (https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#profile).
  1593  	// For example, `GCP`.
  1594  	Profile string `json:"profile,omitempty"`
  1595  	// StoragePool: The name of the Backup and DR storage pool that the backup and
  1596  	// recovery appliance is storing data in. The storage pool could be of type
  1597  	// Cloud, Primary, Snapshot, or OnVault. See the Backup and DR documentation on
  1598  	// storage pools
  1599  	// (https://cloud.google.com/backup-disaster-recovery/docs/concepts/storage-pools).
  1600  	// For example, `DiskPoolOne`.
  1601  	StoragePool string `json:"storagePool,omitempty"`
  1602  	// ForceSendFields is a list of field names (e.g. "Appliance") to
  1603  	// unconditionally include in API requests. By default, fields with empty or
  1604  	// default values are omitted from API requests. See
  1605  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1606  	// details.
  1607  	ForceSendFields []string `json:"-"`
  1608  	// NullFields is a list of field names (e.g. "Appliance") to include in API
  1609  	// requests with the JSON null value. By default, fields with empty values are
  1610  	// omitted from API requests. See
  1611  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1612  	NullFields []string `json:"-"`
  1613  }
  1614  
  1615  func (s *BackupDisasterRecovery) MarshalJSON() ([]byte, error) {
  1616  	type NoMethod BackupDisasterRecovery
  1617  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1618  }
  1619  
  1620  // BatchCreateResourceValueConfigsRequest: Request message to create multiple
  1621  // resource value configs
  1622  type BatchCreateResourceValueConfigsRequest struct {
  1623  	// Requests: Required. The resource value configs to be created.
  1624  	Requests []*CreateResourceValueConfigRequest `json:"requests,omitempty"`
  1625  	// ForceSendFields is a list of field names (e.g. "Requests") to
  1626  	// unconditionally include in API requests. By default, fields with empty or
  1627  	// default values are omitted from API requests. See
  1628  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1629  	// details.
  1630  	ForceSendFields []string `json:"-"`
  1631  	// NullFields is a list of field names (e.g. "Requests") to include in API
  1632  	// requests with the JSON null value. By default, fields with empty values are
  1633  	// omitted from API requests. See
  1634  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1635  	NullFields []string `json:"-"`
  1636  }
  1637  
  1638  func (s *BatchCreateResourceValueConfigsRequest) MarshalJSON() ([]byte, error) {
  1639  	type NoMethod BatchCreateResourceValueConfigsRequest
  1640  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1641  }
  1642  
  1643  // BatchCreateResourceValueConfigsResponse: Response message for
  1644  // BatchCreateResourceValueConfigs
  1645  type BatchCreateResourceValueConfigsResponse struct {
  1646  	// ResourceValueConfigs: The resource value configs created
  1647  	ResourceValueConfigs []*GoogleCloudSecuritycenterV1ResourceValueConfig `json:"resourceValueConfigs,omitempty"`
  1648  
  1649  	// ServerResponse contains the HTTP response code and headers from the server.
  1650  	googleapi.ServerResponse `json:"-"`
  1651  	// ForceSendFields is a list of field names (e.g. "ResourceValueConfigs") to
  1652  	// unconditionally include in API requests. By default, fields with empty or
  1653  	// default values are omitted from API requests. See
  1654  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1655  	// details.
  1656  	ForceSendFields []string `json:"-"`
  1657  	// NullFields is a list of field names (e.g. "ResourceValueConfigs") to include
  1658  	// in API requests with the JSON null value. By default, fields with empty
  1659  	// values are omitted from API requests. See
  1660  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1661  	NullFields []string `json:"-"`
  1662  }
  1663  
  1664  func (s *BatchCreateResourceValueConfigsResponse) MarshalJSON() ([]byte, error) {
  1665  	type NoMethod BatchCreateResourceValueConfigsResponse
  1666  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1667  }
  1668  
  1669  // Binding: Associates `members`, or principals, with a `role`.
  1670  type Binding struct {
  1671  	// Condition: The condition that is associated with this binding. If the
  1672  	// condition evaluates to `true`, then this binding applies to the current
  1673  	// request. If the condition evaluates to `false`, then this binding does not
  1674  	// apply to the current request. However, a different role binding might grant
  1675  	// the same role to one or more of the principals in this binding. To learn
  1676  	// which resources support conditions in their IAM policies, see the IAM
  1677  	// documentation
  1678  	// (https://cloud.google.com/iam/help/conditions/resource-policies).
  1679  	Condition *Expr `json:"condition,omitempty"`
  1680  	// Members: Specifies the principals requesting access for a Google Cloud
  1681  	// resource. `members` can have the following values: * `allUsers`: A special
  1682  	// identifier that represents anyone who is on the internet; with or without a
  1683  	// Google account. * `allAuthenticatedUsers`: A special identifier that
  1684  	// represents anyone who is authenticated with a Google account or a service
  1685  	// account. Does not include identities that come from external identity
  1686  	// providers (IdPs) through identity federation. * `user:{emailid}`: An email
  1687  	// address that represents a specific Google account. For example,
  1688  	// `alice@example.com` . * `serviceAccount:{emailid}`: An email address that
  1689  	// represents a Google service account. For example,
  1690  	// `my-other-app@appspot.gserviceaccount.com`. *
  1691  	// `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An
  1692  	// identifier for a Kubernetes service account
  1693  	// (https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts).
  1694  	// For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. *
  1695  	// `group:{emailid}`: An email address that represents a Google group. For
  1696  	// example, `admins@example.com`. * `domain:{domain}`: The G Suite domain
  1697  	// (primary) that represents all the users of that domain. For example,
  1698  	// `google.com` or `example.com`. *
  1699  	// `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/sub
  1700  	// ject/{subject_attribute_value}`: A single identity in a workforce identity
  1701  	// pool. *
  1702  	// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/
  1703  	// group/{group_id}`: All workforce identities in a group. *
  1704  	// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/
  1705  	// attribute.{attribute_name}/{attribute_value}`: All workforce identities with
  1706  	// a specific attribute value. *
  1707  	// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/
  1708  	// *`: All identities in a workforce identity pool. *
  1709  	// `principal://iam.googleapis.com/projects/{project_number}/locations/global/wo
  1710  	// rkloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single
  1711  	// identity in a workload identity pool. *
  1712  	// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global
  1713  	// /workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool
  1714  	// group. *
  1715  	// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global
  1716  	// /workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}
  1717  	// `: All identities in a workload identity pool with a certain attribute. *
  1718  	// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global
  1719  	// /workloadIdentityPools/{pool_id}/*`: All identities in a workload identity
  1720  	// pool. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus
  1721  	// unique identifier) representing a user that has been recently deleted. For
  1722  	// example, `alice@example.com?uid=123456789012345678901`. If the user is
  1723  	// recovered, this value reverts to `user:{emailid}` and the recovered user
  1724  	// retains the role in the binding. *
  1725  	// `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
  1726  	// unique identifier) representing a service account that has been recently
  1727  	// deleted. For example,
  1728  	// `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the
  1729  	// service account is undeleted, this value reverts to
  1730  	// `serviceAccount:{emailid}` and the undeleted service account retains the
  1731  	// role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email
  1732  	// address (plus unique identifier) representing a Google group that has been
  1733  	// recently deleted. For example,
  1734  	// `admins@example.com?uid=123456789012345678901`. If the group is recovered,
  1735  	// this value reverts to `group:{emailid}` and the recovered group retains the
  1736  	// role in the binding. *
  1737  	// `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool
  1738  	// _id}/subject/{subject_attribute_value}`: Deleted single identity in a
  1739  	// workforce identity pool. For example,
  1740  	// `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-po
  1741  	// ol-id/subject/my-subject-attribute-value`.
  1742  	Members []string `json:"members,omitempty"`
  1743  	// Role: Role that is assigned to the list of `members`, or principals. For
  1744  	// example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview
  1745  	// of the IAM roles and permissions, see the IAM documentation
  1746  	// (https://cloud.google.com/iam/docs/roles-overview). For a list of the
  1747  	// available pre-defined roles, see here
  1748  	// (https://cloud.google.com/iam/docs/understanding-roles).
  1749  	Role string `json:"role,omitempty"`
  1750  	// ForceSendFields is a list of field names (e.g. "Condition") to
  1751  	// unconditionally include in API requests. By default, fields with empty or
  1752  	// default values are omitted from API requests. See
  1753  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1754  	// details.
  1755  	ForceSendFields []string `json:"-"`
  1756  	// NullFields is a list of field names (e.g. "Condition") to include in API
  1757  	// requests with the JSON null value. By default, fields with empty values are
  1758  	// omitted from API requests. See
  1759  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1760  	NullFields []string `json:"-"`
  1761  }
  1762  
  1763  func (s *Binding) MarshalJSON() ([]byte, error) {
  1764  	type NoMethod Binding
  1765  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1766  }
  1767  
  1768  // BulkMuteFindingsRequest: Request message for bulk findings update. Note: 1.
  1769  // If multiple bulk update requests match the same resource, the order in which
  1770  // they get executed is not defined. 2. Once a bulk operation is started, there
  1771  // is no way to stop it.
  1772  type BulkMuteFindingsRequest struct {
  1773  	// Filter: Expression that identifies findings that should be updated. The
  1774  	// expression is a list of zero or more restrictions combined via logical
  1775  	// operators `AND` and `OR`. Parentheses are supported, and `OR` has higher
  1776  	// precedence than `AND`. Restrictions have the form ` ` and may have a `-`
  1777  	// character in front of them to indicate negation. The fields map to those
  1778  	// defined in the corresponding resource. The supported operators are: * `=`
  1779  	// for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`,
  1780  	// meaning substring matching, for strings. The supported value types are: *
  1781  	// string literals in quotes. * integer literals without quotes. * boolean
  1782  	// literals `true` and `false` without quotes.
  1783  	Filter string `json:"filter,omitempty"`
  1784  	// MuteAnnotation: This can be a mute configuration name or any identifier for
  1785  	// mute/unmute of findings based on the filter.
  1786  	MuteAnnotation string `json:"muteAnnotation,omitempty"`
  1787  	// ForceSendFields is a list of field names (e.g. "Filter") to unconditionally
  1788  	// include in API requests. By default, fields with empty or default values are
  1789  	// omitted from API requests. See
  1790  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1791  	// details.
  1792  	ForceSendFields []string `json:"-"`
  1793  	// NullFields is a list of field names (e.g. "Filter") to include in API
  1794  	// requests with the JSON null value. By default, fields with empty values are
  1795  	// omitted from API requests. See
  1796  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1797  	NullFields []string `json:"-"`
  1798  }
  1799  
  1800  func (s *BulkMuteFindingsRequest) MarshalJSON() ([]byte, error) {
  1801  	type NoMethod BulkMuteFindingsRequest
  1802  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1803  }
  1804  
  1805  // CloudArmor: Fields related to Google Cloud Armor findings.
  1806  type CloudArmor struct {
  1807  	// AdaptiveProtection: Information about potential Layer 7 DDoS attacks
  1808  	// identified by Google Cloud Armor Adaptive Protection
  1809  	// (https://cloud.google.com/armor/docs/adaptive-protection-overview).
  1810  	AdaptiveProtection *AdaptiveProtection `json:"adaptiveProtection,omitempty"`
  1811  	// Attack: Information about DDoS attack volume and classification.
  1812  	Attack *Attack `json:"attack,omitempty"`
  1813  	// Duration: Duration of attack from the start until the current moment
  1814  	// (updated every 5 minutes).
  1815  	Duration string `json:"duration,omitempty"`
  1816  	// Requests: Information about incoming requests evaluated by Google Cloud
  1817  	// Armor security policies
  1818  	// (https://cloud.google.com/armor/docs/security-policy-overview).
  1819  	Requests *Requests `json:"requests,omitempty"`
  1820  	// SecurityPolicy: Information about the Google Cloud Armor security policy
  1821  	// (https://cloud.google.com/armor/docs/security-policy-overview) relevant to
  1822  	// the finding.
  1823  	SecurityPolicy *SecurityPolicy `json:"securityPolicy,omitempty"`
  1824  	// ThreatVector: Distinguish between volumetric & protocol DDoS attack and
  1825  	// application layer attacks. For example, "L3_4" for Layer 3 and Layer 4 DDoS
  1826  	// attacks, or "L_7" for Layer 7 DDoS attacks.
  1827  	ThreatVector string `json:"threatVector,omitempty"`
  1828  	// ForceSendFields is a list of field names (e.g. "AdaptiveProtection") to
  1829  	// unconditionally include in API requests. By default, fields with empty or
  1830  	// default values are omitted from API requests. See
  1831  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1832  	// details.
  1833  	ForceSendFields []string `json:"-"`
  1834  	// NullFields is a list of field names (e.g. "AdaptiveProtection") to include
  1835  	// in API requests with the JSON null value. By default, fields with empty
  1836  	// values are omitted from API requests. See
  1837  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1838  	NullFields []string `json:"-"`
  1839  }
  1840  
  1841  func (s *CloudArmor) MarshalJSON() ([]byte, error) {
  1842  	type NoMethod CloudArmor
  1843  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1844  }
  1845  
  1846  // CloudDlpDataProfile: The data profile
  1847  // (https://cloud.google.com/dlp/docs/data-profiles) associated with the
  1848  // finding.
  1849  type CloudDlpDataProfile struct {
  1850  	// DataProfile: Name of the data profile, for example,
  1851  	// `projects/123/locations/europe/tableProfiles/8383929`.
  1852  	DataProfile string `json:"dataProfile,omitempty"`
  1853  	// ParentType: The resource hierarchy level at which the data profile was
  1854  	// generated.
  1855  	//
  1856  	// Possible values:
  1857  	//   "PARENT_TYPE_UNSPECIFIED" - Unspecified parent type.
  1858  	//   "ORGANIZATION" - Organization-level configurations.
  1859  	//   "PROJECT" - Project-level configurations.
  1860  	ParentType string `json:"parentType,omitempty"`
  1861  	// ForceSendFields is a list of field names (e.g. "DataProfile") to
  1862  	// unconditionally include in API requests. By default, fields with empty or
  1863  	// default values are omitted from API requests. See
  1864  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1865  	// details.
  1866  	ForceSendFields []string `json:"-"`
  1867  	// NullFields is a list of field names (e.g. "DataProfile") to include in API
  1868  	// requests with the JSON null value. By default, fields with empty values are
  1869  	// omitted from API requests. See
  1870  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1871  	NullFields []string `json:"-"`
  1872  }
  1873  
  1874  func (s *CloudDlpDataProfile) MarshalJSON() ([]byte, error) {
  1875  	type NoMethod CloudDlpDataProfile
  1876  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1877  }
  1878  
  1879  // CloudDlpInspection: Details about the Cloud Data Loss Prevention (Cloud DLP)
  1880  // inspection job (https://cloud.google.com/dlp/docs/concepts-job-triggers)
  1881  // that produced the finding.
  1882  type CloudDlpInspection struct {
  1883  	// FullScan: Whether Cloud DLP scanned the complete resource or a sampled
  1884  	// subset.
  1885  	FullScan bool `json:"fullScan,omitempty"`
  1886  	// InfoType: The type of information (or *infoType
  1887  	// (https://cloud.google.com/dlp/docs/infotypes-reference)*) found, for
  1888  	// example, `EMAIL_ADDRESS` or `STREET_ADDRESS`.
  1889  	InfoType string `json:"infoType,omitempty"`
  1890  	// InfoTypeCount: The number of times Cloud DLP found this infoType within this
  1891  	// job and resource.
  1892  	InfoTypeCount int64 `json:"infoTypeCount,omitempty,string"`
  1893  	// InspectJob: Name of the inspection job, for example,
  1894  	// `projects/123/locations/europe/dlpJobs/i-8383929`.
  1895  	InspectJob string `json:"inspectJob,omitempty"`
  1896  	// ForceSendFields is a list of field names (e.g. "FullScan") to
  1897  	// unconditionally include in API requests. By default, fields with empty or
  1898  	// default values are omitted from API requests. See
  1899  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1900  	// details.
  1901  	ForceSendFields []string `json:"-"`
  1902  	// NullFields is a list of field names (e.g. "FullScan") to include in API
  1903  	// requests with the JSON null value. By default, fields with empty values are
  1904  	// omitted from API requests. See
  1905  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1906  	NullFields []string `json:"-"`
  1907  }
  1908  
  1909  func (s *CloudDlpInspection) MarshalJSON() ([]byte, error) {
  1910  	type NoMethod CloudDlpInspection
  1911  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1912  }
  1913  
  1914  // CloudLoggingEntry: Metadata taken from a Cloud Logging LogEntry
  1915  // (https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry)
  1916  type CloudLoggingEntry struct {
  1917  	// InsertId: A unique identifier for the log entry.
  1918  	InsertId string `json:"insertId,omitempty"`
  1919  	// LogId: The type of the log (part of `log_name`. `log_name` is the resource
  1920  	// name of the log to which this log entry belongs). For example:
  1921  	// `cloudresourcemanager.googleapis.com/activity`. Note that this field is not
  1922  	// URL-encoded, unlike the `LOG_ID` field in `LogEntry`.
  1923  	LogId string `json:"logId,omitempty"`
  1924  	// ResourceContainer: The organization, folder, or project of the monitored
  1925  	// resource that produced this log entry.
  1926  	ResourceContainer string `json:"resourceContainer,omitempty"`
  1927  	// Timestamp: The time the event described by the log entry occurred.
  1928  	Timestamp string `json:"timestamp,omitempty"`
  1929  	// ForceSendFields is a list of field names (e.g. "InsertId") to
  1930  	// unconditionally include in API requests. By default, fields with empty or
  1931  	// default values are omitted from API requests. See
  1932  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1933  	// details.
  1934  	ForceSendFields []string `json:"-"`
  1935  	// NullFields is a list of field names (e.g. "InsertId") to include in API
  1936  	// requests with the JSON null value. By default, fields with empty values are
  1937  	// omitted from API requests. See
  1938  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1939  	NullFields []string `json:"-"`
  1940  }
  1941  
  1942  func (s *CloudLoggingEntry) MarshalJSON() ([]byte, error) {
  1943  	type NoMethod CloudLoggingEntry
  1944  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1945  }
  1946  
  1947  // Compliance: Contains compliance information about a security standard
  1948  // indicating unmet recommendations.
  1949  type Compliance struct {
  1950  	// Ids: Policies within the standard or benchmark, for example, A.12.4.1
  1951  	Ids []string `json:"ids,omitempty"`
  1952  	// Standard: Industry-wide compliance standards or benchmarks, such as CIS,
  1953  	// PCI, and OWASP.
  1954  	Standard string `json:"standard,omitempty"`
  1955  	// Version: Version of the standard or benchmark, for example, 1.1
  1956  	Version string `json:"version,omitempty"`
  1957  	// ForceSendFields is a list of field names (e.g. "Ids") to unconditionally
  1958  	// include in API requests. By default, fields with empty or default values are
  1959  	// omitted from API requests. See
  1960  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1961  	// details.
  1962  	ForceSendFields []string `json:"-"`
  1963  	// NullFields is a list of field names (e.g. "Ids") to include in API requests
  1964  	// with the JSON null value. By default, fields with empty values are omitted
  1965  	// from API requests. See
  1966  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1967  	NullFields []string `json:"-"`
  1968  }
  1969  
  1970  func (s *Compliance) MarshalJSON() ([]byte, error) {
  1971  	type NoMethod Compliance
  1972  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1973  }
  1974  
  1975  // ComplianceSnapshot: Result containing the properties and count of a
  1976  // ComplianceSnapshot request.
  1977  type ComplianceSnapshot struct {
  1978  	// Category: The category of Findings matching.
  1979  	Category string `json:"category,omitempty"`
  1980  	// CloudProvider: The cloud provider for the compliance snapshot.
  1981  	//
  1982  	// Possible values:
  1983  	//   "CLOUD_PROVIDER_UNSPECIFIED" - The cloud provider is unspecified.
  1984  	//   "GOOGLE_CLOUD_PLATFORM" - The cloud provider is Google Cloud Platform.
  1985  	//   "AMAZON_WEB_SERVICES" - The cloud provider is Amazon Web Services.
  1986  	//   "MICROSOFT_AZURE" - The cloud provider is Microsoft Azure.
  1987  	CloudProvider string `json:"cloudProvider,omitempty"`
  1988  	// ComplianceStandard: The compliance standard (ie CIS).
  1989  	ComplianceStandard string `json:"complianceStandard,omitempty"`
  1990  	// ComplianceVersion: The compliance version (ie 1.3) in CIS 1.3.
  1991  	ComplianceVersion string `json:"complianceVersion,omitempty"`
  1992  	// Count: Total count of findings for the given properties.
  1993  	Count int64 `json:"count,omitempty,string"`
  1994  	// LeafContainerResource: The leaf container resource name that is closest to
  1995  	// the snapshot.
  1996  	LeafContainerResource string `json:"leafContainerResource,omitempty"`
  1997  	// Name: The compliance snapshot name. Format: //sources//complianceSnapshots/
  1998  	Name string `json:"name,omitempty"`
  1999  	// SnapshotTime: The snapshot time of the snapshot.
  2000  	SnapshotTime string `json:"snapshotTime,omitempty"`
  2001  	// ForceSendFields is a list of field names (e.g. "Category") to
  2002  	// unconditionally include in API requests. By default, fields with empty or
  2003  	// default values are omitted from API requests. See
  2004  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2005  	// details.
  2006  	ForceSendFields []string `json:"-"`
  2007  	// NullFields is a list of field names (e.g. "Category") to include in API
  2008  	// requests with the JSON null value. By default, fields with empty values are
  2009  	// omitted from API requests. See
  2010  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2011  	NullFields []string `json:"-"`
  2012  }
  2013  
  2014  func (s *ComplianceSnapshot) MarshalJSON() ([]byte, error) {
  2015  	type NoMethod ComplianceSnapshot
  2016  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2017  }
  2018  
  2019  // Connection: Contains information about the IP connection associated with the
  2020  // finding.
  2021  type Connection struct {
  2022  	// DestinationIp: Destination IP address. Not present for sockets that are
  2023  	// listening and not connected.
  2024  	DestinationIp string `json:"destinationIp,omitempty"`
  2025  	// DestinationPort: Destination port. Not present for sockets that are
  2026  	// listening and not connected.
  2027  	DestinationPort int64 `json:"destinationPort,omitempty"`
  2028  	// Protocol: IANA Internet Protocol Number such as TCP(6) and UDP(17).
  2029  	//
  2030  	// Possible values:
  2031  	//   "PROTOCOL_UNSPECIFIED" - Unspecified protocol (not HOPOPT).
  2032  	//   "ICMP" - Internet Control Message Protocol.
  2033  	//   "TCP" - Transmission Control Protocol.
  2034  	//   "UDP" - User Datagram Protocol.
  2035  	//   "GRE" - Generic Routing Encapsulation.
  2036  	//   "ESP" - Encap Security Payload.
  2037  	Protocol string `json:"protocol,omitempty"`
  2038  	// SourceIp: Source IP address.
  2039  	SourceIp string `json:"sourceIp,omitempty"`
  2040  	// SourcePort: Source port.
  2041  	SourcePort int64 `json:"sourcePort,omitempty"`
  2042  	// ForceSendFields is a list of field names (e.g. "DestinationIp") to
  2043  	// unconditionally include in API requests. By default, fields with empty or
  2044  	// default values are omitted from API requests. See
  2045  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2046  	// details.
  2047  	ForceSendFields []string `json:"-"`
  2048  	// NullFields is a list of field names (e.g. "DestinationIp") to include in API
  2049  	// requests with the JSON null value. By default, fields with empty values are
  2050  	// omitted from API requests. See
  2051  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2052  	NullFields []string `json:"-"`
  2053  }
  2054  
  2055  func (s *Connection) MarshalJSON() ([]byte, error) {
  2056  	type NoMethod Connection
  2057  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2058  }
  2059  
  2060  // Contact: The email address of a contact.
  2061  type Contact struct {
  2062  	// Email: An email address. For example, "person123@company.com".
  2063  	Email string `json:"email,omitempty"`
  2064  	// ForceSendFields is a list of field names (e.g. "Email") to unconditionally
  2065  	// include in API requests. By default, fields with empty or default values are
  2066  	// omitted from API requests. See
  2067  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2068  	// details.
  2069  	ForceSendFields []string `json:"-"`
  2070  	// NullFields is a list of field names (e.g. "Email") to include in API
  2071  	// requests with the JSON null value. By default, fields with empty values are
  2072  	// omitted from API requests. See
  2073  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2074  	NullFields []string `json:"-"`
  2075  }
  2076  
  2077  func (s *Contact) MarshalJSON() ([]byte, error) {
  2078  	type NoMethod Contact
  2079  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2080  }
  2081  
  2082  // ContactDetails: Details about specific contacts
  2083  type ContactDetails struct {
  2084  	// Contacts: A list of contacts
  2085  	Contacts []*Contact `json:"contacts,omitempty"`
  2086  	// ForceSendFields is a list of field names (e.g. "Contacts") to
  2087  	// unconditionally include in API requests. By default, fields with empty or
  2088  	// default values are omitted from API requests. See
  2089  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2090  	// details.
  2091  	ForceSendFields []string `json:"-"`
  2092  	// NullFields is a list of field names (e.g. "Contacts") to include in API
  2093  	// requests with the JSON null value. By default, fields with empty values are
  2094  	// omitted from API requests. See
  2095  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2096  	NullFields []string `json:"-"`
  2097  }
  2098  
  2099  func (s *ContactDetails) MarshalJSON() ([]byte, error) {
  2100  	type NoMethod ContactDetails
  2101  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2102  }
  2103  
  2104  // Container: Container associated with the finding.
  2105  type Container struct {
  2106  	// CreateTime: The time that the container was created.
  2107  	CreateTime string `json:"createTime,omitempty"`
  2108  	// ImageId: Optional container image ID, if provided by the container runtime.
  2109  	// Uniquely identifies the container image launched using a container image
  2110  	// digest.
  2111  	ImageId string `json:"imageId,omitempty"`
  2112  	// Labels: Container labels, as provided by the container runtime.
  2113  	Labels []*Label `json:"labels,omitempty"`
  2114  	// Name: Name of the container.
  2115  	Name string `json:"name,omitempty"`
  2116  	// Uri: Container image URI provided when configuring a pod or container. This
  2117  	// string can identify a container image version using mutable tags.
  2118  	Uri string `json:"uri,omitempty"`
  2119  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  2120  	// unconditionally include in API requests. By default, fields with empty or
  2121  	// default values are omitted from API requests. See
  2122  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2123  	// details.
  2124  	ForceSendFields []string `json:"-"`
  2125  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  2126  	// requests with the JSON null value. By default, fields with empty values are
  2127  	// omitted from API requests. See
  2128  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2129  	NullFields []string `json:"-"`
  2130  }
  2131  
  2132  func (s *Container) MarshalJSON() ([]byte, error) {
  2133  	type NoMethod Container
  2134  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2135  }
  2136  
  2137  // CreateResourceValueConfigRequest: Request message to create single resource
  2138  // value config
  2139  type CreateResourceValueConfigRequest struct {
  2140  	// Parent: Required. Resource name of the new ResourceValueConfig's parent.
  2141  	Parent string `json:"parent,omitempty"`
  2142  	// ResourceValueConfig: Required. The resource value config being created.
  2143  	ResourceValueConfig *GoogleCloudSecuritycenterV1ResourceValueConfig `json:"resourceValueConfig,omitempty"`
  2144  	// ForceSendFields is a list of field names (e.g. "Parent") to unconditionally
  2145  	// include in API requests. By default, fields with empty or default values are
  2146  	// omitted from API requests. See
  2147  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2148  	// details.
  2149  	ForceSendFields []string `json:"-"`
  2150  	// NullFields is a list of field names (e.g. "Parent") to include in API
  2151  	// requests with the JSON null value. By default, fields with empty values are
  2152  	// omitted from API requests. See
  2153  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2154  	NullFields []string `json:"-"`
  2155  }
  2156  
  2157  func (s *CreateResourceValueConfigRequest) MarshalJSON() ([]byte, error) {
  2158  	type NoMethod CreateResourceValueConfigRequest
  2159  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2160  }
  2161  
  2162  // CustomModuleValidationError: An error encountered while validating the
  2163  // uploaded configuration of an Event Threat Detection Custom Module.
  2164  type CustomModuleValidationError struct {
  2165  	// Description: A description of the error, suitable for human consumption.
  2166  	// Required.
  2167  	Description string `json:"description,omitempty"`
  2168  	// End: The end position of the error in the uploaded text version of the
  2169  	// module. This field may be omitted if no specific position applies, or if one
  2170  	// could not be computed..
  2171  	End *Position `json:"end,omitempty"`
  2172  	// FieldPath: The path, in RFC 8901 JSON Pointer format, to the field that
  2173  	// failed validation. This may be left empty if no specific field is affected.
  2174  	FieldPath string `json:"fieldPath,omitempty"`
  2175  	// Start: The initial position of the error in the uploaded text version of the
  2176  	// module. This field may be omitted if no specific position applies, or if one
  2177  	// could not be computed.
  2178  	Start *Position `json:"start,omitempty"`
  2179  	// ForceSendFields is a list of field names (e.g. "Description") to
  2180  	// unconditionally include in API requests. By default, fields with empty or
  2181  	// default values are omitted from API requests. See
  2182  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2183  	// details.
  2184  	ForceSendFields []string `json:"-"`
  2185  	// NullFields is a list of field names (e.g. "Description") to include in API
  2186  	// requests with the JSON null value. By default, fields with empty values are
  2187  	// omitted from API requests. See
  2188  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2189  	NullFields []string `json:"-"`
  2190  }
  2191  
  2192  func (s *CustomModuleValidationError) MarshalJSON() ([]byte, error) {
  2193  	type NoMethod CustomModuleValidationError
  2194  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2195  }
  2196  
  2197  // CustomModuleValidationErrors: A list of zero or more errors encountered
  2198  // while validating the uploaded configuration of an Event Threat Detection
  2199  // Custom Module.
  2200  type CustomModuleValidationErrors struct {
  2201  	Errors []*CustomModuleValidationError `json:"errors,omitempty"`
  2202  	// ForceSendFields is a list of field names (e.g. "Errors") to unconditionally
  2203  	// include in API requests. By default, fields with empty or default values are
  2204  	// omitted from API requests. See
  2205  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2206  	// details.
  2207  	ForceSendFields []string `json:"-"`
  2208  	// NullFields is a list of field names (e.g. "Errors") to include in API
  2209  	// requests with the JSON null value. By default, fields with empty values are
  2210  	// omitted from API requests. See
  2211  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2212  	NullFields []string `json:"-"`
  2213  }
  2214  
  2215  func (s *CustomModuleValidationErrors) MarshalJSON() ([]byte, error) {
  2216  	type NoMethod CustomModuleValidationErrors
  2217  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2218  }
  2219  
  2220  // Cve: CVE stands for Common Vulnerabilities and Exposures. Information from
  2221  // the CVE record (https://www.cve.org/ResourcesSupport/Glossary) that
  2222  // describes this vulnerability.
  2223  type Cve struct {
  2224  	// Cvssv3: Describe Common Vulnerability Scoring System specified at
  2225  	// https://www.first.org/cvss/v3.1/specification-document
  2226  	Cvssv3 *Cvssv3 `json:"cvssv3,omitempty"`
  2227  	// ExploitationActivity: The exploitation activity of the vulnerability in the
  2228  	// wild.
  2229  	//
  2230  	// Possible values:
  2231  	//   "EXPLOITATION_ACTIVITY_UNSPECIFIED" - Invalid or empty value.
  2232  	//   "WIDE" - Exploitation has been reported or confirmed to widely occur.
  2233  	//   "CONFIRMED" - Limited reported or confirmed exploitation activities.
  2234  	//   "AVAILABLE" - Exploit is publicly available.
  2235  	//   "ANTICIPATED" - No known exploitation activity, but has a high potential
  2236  	// for exploitation.
  2237  	//   "NO_KNOWN" - No known exploitation activity.
  2238  	ExploitationActivity string `json:"exploitationActivity,omitempty"`
  2239  	// Id: The unique identifier for the vulnerability. e.g. CVE-2021-34527
  2240  	Id string `json:"id,omitempty"`
  2241  	// Impact: The potential impact of the vulnerability if it was to be exploited.
  2242  	//
  2243  	// Possible values:
  2244  	//   "RISK_RATING_UNSPECIFIED" - Invalid or empty value.
  2245  	//   "LOW" - Exploitation would have little to no security impact.
  2246  	//   "MEDIUM" - Exploitation would enable attackers to perform activities, or
  2247  	// could allow attackers to have a direct impact, but would require additional
  2248  	// steps.
  2249  	//   "HIGH" - Exploitation would enable attackers to have a notable direct
  2250  	// impact without needing to overcome any major mitigating factors.
  2251  	//   "CRITICAL" - Exploitation would fundamentally undermine the security of
  2252  	// affected systems, enable actors to perform significant attacks with minimal
  2253  	// effort, with little to no mitigating factors to overcome.
  2254  	Impact string `json:"impact,omitempty"`
  2255  	// ObservedInTheWild: Whether or not the vulnerability has been observed in the
  2256  	// wild.
  2257  	ObservedInTheWild bool `json:"observedInTheWild,omitempty"`
  2258  	// References: Additional information about the CVE. e.g.
  2259  	// https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527
  2260  	References []*Reference `json:"references,omitempty"`
  2261  	// UpstreamFixAvailable: Whether upstream fix is available for the CVE.
  2262  	UpstreamFixAvailable bool `json:"upstreamFixAvailable,omitempty"`
  2263  	// ZeroDay: Whether or not the vulnerability was zero day when the finding was
  2264  	// published.
  2265  	ZeroDay bool `json:"zeroDay,omitempty"`
  2266  	// ForceSendFields is a list of field names (e.g. "Cvssv3") to unconditionally
  2267  	// include in API requests. By default, fields with empty or default values are
  2268  	// omitted from API requests. See
  2269  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2270  	// details.
  2271  	ForceSendFields []string `json:"-"`
  2272  	// NullFields is a list of field names (e.g. "Cvssv3") to include in API
  2273  	// requests with the JSON null value. By default, fields with empty values are
  2274  	// omitted from API requests. See
  2275  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2276  	NullFields []string `json:"-"`
  2277  }
  2278  
  2279  func (s *Cve) MarshalJSON() ([]byte, error) {
  2280  	type NoMethod Cve
  2281  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2282  }
  2283  
  2284  // Cvssv3: Common Vulnerability Scoring System version 3.
  2285  type Cvssv3 struct {
  2286  	// AttackComplexity: This metric describes the conditions beyond the attacker's
  2287  	// control that must exist in order to exploit the vulnerability.
  2288  	//
  2289  	// Possible values:
  2290  	//   "ATTACK_COMPLEXITY_UNSPECIFIED" - Invalid value.
  2291  	//   "ATTACK_COMPLEXITY_LOW" - Specialized access conditions or extenuating
  2292  	// circumstances do not exist. An attacker can expect repeatable success when
  2293  	// attacking the vulnerable component.
  2294  	//   "ATTACK_COMPLEXITY_HIGH" - A successful attack depends on conditions
  2295  	// beyond the attacker's control. That is, a successful attack cannot be
  2296  	// accomplished at will, but requires the attacker to invest in some measurable
  2297  	// amount of effort in preparation or execution against the vulnerable
  2298  	// component before a successful attack can be expected.
  2299  	AttackComplexity string `json:"attackComplexity,omitempty"`
  2300  	// AttackVector: Base Metrics Represents the intrinsic characteristics of a
  2301  	// vulnerability that are constant over time and across user environments. This
  2302  	// metric reflects the context by which vulnerability exploitation is possible.
  2303  	//
  2304  	// Possible values:
  2305  	//   "ATTACK_VECTOR_UNSPECIFIED" - Invalid value.
  2306  	//   "ATTACK_VECTOR_NETWORK" - The vulnerable component is bound to the network
  2307  	// stack and the set of possible attackers extends beyond the other options
  2308  	// listed below, up to and including the entire Internet.
  2309  	//   "ATTACK_VECTOR_ADJACENT" - The vulnerable component is bound to the
  2310  	// network stack, but the attack is limited at the protocol level to a
  2311  	// logically adjacent topology.
  2312  	//   "ATTACK_VECTOR_LOCAL" - The vulnerable component is not bound to the
  2313  	// network stack and the attacker's path is via read/write/execute
  2314  	// capabilities.
  2315  	//   "ATTACK_VECTOR_PHYSICAL" - The attack requires the attacker to physically
  2316  	// touch or manipulate the vulnerable component.
  2317  	AttackVector string `json:"attackVector,omitempty"`
  2318  	// AvailabilityImpact: This metric measures the impact to the availability of
  2319  	// the impacted component resulting from a successfully exploited
  2320  	// vulnerability.
  2321  	//
  2322  	// Possible values:
  2323  	//   "IMPACT_UNSPECIFIED" - Invalid value.
  2324  	//   "IMPACT_HIGH" - High impact.
  2325  	//   "IMPACT_LOW" - Low impact.
  2326  	//   "IMPACT_NONE" - No impact.
  2327  	AvailabilityImpact string `json:"availabilityImpact,omitempty"`
  2328  	// BaseScore: The base score is a function of the base metric scores.
  2329  	BaseScore float64 `json:"baseScore,omitempty"`
  2330  	// ConfidentialityImpact: This metric measures the impact to the
  2331  	// confidentiality of the information resources managed by a software component
  2332  	// due to a successfully exploited vulnerability.
  2333  	//
  2334  	// Possible values:
  2335  	//   "IMPACT_UNSPECIFIED" - Invalid value.
  2336  	//   "IMPACT_HIGH" - High impact.
  2337  	//   "IMPACT_LOW" - Low impact.
  2338  	//   "IMPACT_NONE" - No impact.
  2339  	ConfidentialityImpact string `json:"confidentialityImpact,omitempty"`
  2340  	// IntegrityImpact: This metric measures the impact to integrity of a
  2341  	// successfully exploited vulnerability.
  2342  	//
  2343  	// Possible values:
  2344  	//   "IMPACT_UNSPECIFIED" - Invalid value.
  2345  	//   "IMPACT_HIGH" - High impact.
  2346  	//   "IMPACT_LOW" - Low impact.
  2347  	//   "IMPACT_NONE" - No impact.
  2348  	IntegrityImpact string `json:"integrityImpact,omitempty"`
  2349  	// PrivilegesRequired: This metric describes the level of privileges an
  2350  	// attacker must possess before successfully exploiting the vulnerability.
  2351  	//
  2352  	// Possible values:
  2353  	//   "PRIVILEGES_REQUIRED_UNSPECIFIED" - Invalid value.
  2354  	//   "PRIVILEGES_REQUIRED_NONE" - The attacker is unauthorized prior to attack,
  2355  	// and therefore does not require any access to settings or files of the
  2356  	// vulnerable system to carry out an attack.
  2357  	//   "PRIVILEGES_REQUIRED_LOW" - The attacker requires privileges that provide
  2358  	// basic user capabilities that could normally affect only settings and files
  2359  	// owned by a user. Alternatively, an attacker with Low privileges has the
  2360  	// ability to access only non-sensitive resources.
  2361  	//   "PRIVILEGES_REQUIRED_HIGH" - The attacker requires privileges that provide
  2362  	// significant (e.g., administrative) control over the vulnerable component
  2363  	// allowing access to component-wide settings and files.
  2364  	PrivilegesRequired string `json:"privilegesRequired,omitempty"`
  2365  	// Scope: The Scope metric captures whether a vulnerability in one vulnerable
  2366  	// component impacts resources in components beyond its security scope.
  2367  	//
  2368  	// Possible values:
  2369  	//   "SCOPE_UNSPECIFIED" - Invalid value.
  2370  	//   "SCOPE_UNCHANGED" - An exploited vulnerability can only affect resources
  2371  	// managed by the same security authority.
  2372  	//   "SCOPE_CHANGED" - An exploited vulnerability can affect resources beyond
  2373  	// the security scope managed by the security authority of the vulnerable
  2374  	// component.
  2375  	Scope string `json:"scope,omitempty"`
  2376  	// UserInteraction: This metric captures the requirement for a human user,
  2377  	// other than the attacker, to participate in the successful compromise of the
  2378  	// vulnerable component.
  2379  	//
  2380  	// Possible values:
  2381  	//   "USER_INTERACTION_UNSPECIFIED" - Invalid value.
  2382  	//   "USER_INTERACTION_NONE" - The vulnerable system can be exploited without
  2383  	// interaction from any user.
  2384  	//   "USER_INTERACTION_REQUIRED" - Successful exploitation of this
  2385  	// vulnerability requires a user to take some action before the vulnerability
  2386  	// can be exploited.
  2387  	UserInteraction string `json:"userInteraction,omitempty"`
  2388  	// ForceSendFields is a list of field names (e.g. "AttackComplexity") to
  2389  	// unconditionally include in API requests. By default, fields with empty or
  2390  	// default values are omitted from API requests. See
  2391  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2392  	// details.
  2393  	ForceSendFields []string `json:"-"`
  2394  	// NullFields is a list of field names (e.g. "AttackComplexity") to include in
  2395  	// API requests with the JSON null value. By default, fields with empty values
  2396  	// are omitted from API requests. See
  2397  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2398  	NullFields []string `json:"-"`
  2399  }
  2400  
  2401  func (s *Cvssv3) MarshalJSON() ([]byte, error) {
  2402  	type NoMethod Cvssv3
  2403  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2404  }
  2405  
  2406  func (s *Cvssv3) UnmarshalJSON(data []byte) error {
  2407  	type NoMethod Cvssv3
  2408  	var s1 struct {
  2409  		BaseScore gensupport.JSONFloat64 `json:"baseScore"`
  2410  		*NoMethod
  2411  	}
  2412  	s1.NoMethod = (*NoMethod)(s)
  2413  	if err := json.Unmarshal(data, &s1); err != nil {
  2414  		return err
  2415  	}
  2416  	s.BaseScore = float64(s1.BaseScore)
  2417  	return nil
  2418  }
  2419  
  2420  // Database: Represents database access information, such as queries. A
  2421  // database may be a sub-resource of an instance (as in the case of Cloud SQL
  2422  // instances or Cloud Spanner instances), or the database instance itself. Some
  2423  // database resources might not have the full resource name
  2424  // (https://google.aip.dev/122#full-resource-names) populated because these
  2425  // resource types, such as Cloud SQL databases, are not yet supported by Cloud
  2426  // Asset Inventory. In these cases only the display name is provided.
  2427  type Database struct {
  2428  	// DisplayName: The human-readable name of the database that the user connected
  2429  	// to.
  2430  	DisplayName string `json:"displayName,omitempty"`
  2431  	// Grantees: The target usernames, roles, or groups of an SQL privilege grant,
  2432  	// which is not an IAM policy change.
  2433  	Grantees []string `json:"grantees,omitempty"`
  2434  	// Name: Some database resources may not have the full resource name
  2435  	// (https://google.aip.dev/122#full-resource-names) populated because these
  2436  	// resource types are not yet supported by Cloud Asset Inventory (e.g. Cloud
  2437  	// SQL databases). In these cases only the display name will be provided. The
  2438  	// full resource name (https://google.aip.dev/122#full-resource-names) of the
  2439  	// database that the user connected to, if it is supported by Cloud Asset
  2440  	// Inventory.
  2441  	Name string `json:"name,omitempty"`
  2442  	// Query: The SQL statement that is associated with the database access.
  2443  	Query string `json:"query,omitempty"`
  2444  	// UserName: The username used to connect to the database. The username might
  2445  	// not be an IAM principal and does not have a set format.
  2446  	UserName string `json:"userName,omitempty"`
  2447  	// Version: The version of the database, for example, POSTGRES_14. See the
  2448  	// complete list
  2449  	// (https://cloud.google.com/sql/docs/mysql/admin-api/rest/v1/SqlDatabaseVersion).
  2450  	Version string `json:"version,omitempty"`
  2451  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  2452  	// unconditionally include in API requests. By default, fields with empty or
  2453  	// default values are omitted from API requests. See
  2454  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2455  	// details.
  2456  	ForceSendFields []string `json:"-"`
  2457  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  2458  	// requests with the JSON null value. By default, fields with empty values are
  2459  	// omitted from API requests. See
  2460  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2461  	NullFields []string `json:"-"`
  2462  }
  2463  
  2464  func (s *Database) MarshalJSON() ([]byte, error) {
  2465  	type NoMethod Database
  2466  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2467  }
  2468  
  2469  // Detection: Memory hash detection contributing to the binary family match.
  2470  type Detection struct {
  2471  	// Binary: The name of the binary associated with the memory hash signature
  2472  	// detection.
  2473  	Binary string `json:"binary,omitempty"`
  2474  	// PercentPagesMatched: The percentage of memory page hashes in the signature
  2475  	// that were matched.
  2476  	PercentPagesMatched float64 `json:"percentPagesMatched,omitempty"`
  2477  	// ForceSendFields is a list of field names (e.g. "Binary") to unconditionally
  2478  	// include in API requests. By default, fields with empty or default values are
  2479  	// omitted from API requests. See
  2480  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2481  	// details.
  2482  	ForceSendFields []string `json:"-"`
  2483  	// NullFields is a list of field names (e.g. "Binary") to include in API
  2484  	// requests with the JSON null value. By default, fields with empty values are
  2485  	// omitted from API requests. See
  2486  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2487  	NullFields []string `json:"-"`
  2488  }
  2489  
  2490  func (s *Detection) MarshalJSON() ([]byte, error) {
  2491  	type NoMethod Detection
  2492  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2493  }
  2494  
  2495  func (s *Detection) UnmarshalJSON(data []byte) error {
  2496  	type NoMethod Detection
  2497  	var s1 struct {
  2498  		PercentPagesMatched gensupport.JSONFloat64 `json:"percentPagesMatched"`
  2499  		*NoMethod
  2500  	}
  2501  	s1.NoMethod = (*NoMethod)(s)
  2502  	if err := json.Unmarshal(data, &s1); err != nil {
  2503  		return err
  2504  	}
  2505  	s.PercentPagesMatched = float64(s1.PercentPagesMatched)
  2506  	return nil
  2507  }
  2508  
  2509  // DiskPath: Path of the file in terms of underlying disk/partition
  2510  // identifiers.
  2511  type DiskPath struct {
  2512  	// PartitionUuid: UUID of the partition (format
  2513  	// https://wiki.archlinux.org/title/persistent_block_device_naming#by-uuid)
  2514  	PartitionUuid string `json:"partitionUuid,omitempty"`
  2515  	// RelativePath: Relative path of the file in the partition as a JSON encoded
  2516  	// string. Example: /home/user1/executable_file.sh
  2517  	RelativePath string `json:"relativePath,omitempty"`
  2518  	// ForceSendFields is a list of field names (e.g. "PartitionUuid") to
  2519  	// unconditionally include in API requests. By default, fields with empty or
  2520  	// default values are omitted from API requests. See
  2521  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2522  	// details.
  2523  	ForceSendFields []string `json:"-"`
  2524  	// NullFields is a list of field names (e.g. "PartitionUuid") to include in API
  2525  	// requests with the JSON null value. By default, fields with empty values are
  2526  	// omitted from API requests. See
  2527  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2528  	NullFields []string `json:"-"`
  2529  }
  2530  
  2531  func (s *DiskPath) MarshalJSON() ([]byte, error) {
  2532  	type NoMethod DiskPath
  2533  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2534  }
  2535  
  2536  // EffectiveEventThreatDetectionCustomModule: An
  2537  // EffectiveEventThreatDetectionCustomModule is the representation of an Event
  2538  // Threat Detection custom module at a specified level of the resource
  2539  // hierarchy: organization, folder, or project. If a custom module is inherited
  2540  // from a parent organization or folder, the value of the `enablement_state`
  2541  // property in EffectiveEventThreatDetectionCustomModule is set to the value
  2542  // that is effective in the parent, instead of `INHERITED`. For example, if the
  2543  // module is enabled in a parent organization or folder, the effective
  2544  // `enablement_state` for the module in all child folders or projects is also
  2545  // `enabled`. EffectiveEventThreatDetectionCustomModule is read-only.
  2546  type EffectiveEventThreatDetectionCustomModule struct {
  2547  	// Config: Output only. Config for the effective module.
  2548  	Config googleapi.RawMessage `json:"config,omitempty"`
  2549  	// Description: Output only. The description for the module.
  2550  	Description string `json:"description,omitempty"`
  2551  	// DisplayName: Output only. The human readable name to be displayed for the
  2552  	// module.
  2553  	DisplayName string `json:"displayName,omitempty"`
  2554  	// EnablementState: Output only. The effective state of enablement for the
  2555  	// module at the given level of the hierarchy.
  2556  	//
  2557  	// Possible values:
  2558  	//   "ENABLEMENT_STATE_UNSPECIFIED" - Unspecified enablement state.
  2559  	//   "ENABLED" - The module is enabled at the given level.
  2560  	//   "DISABLED" - The module is disabled at the given level.
  2561  	EnablementState string `json:"enablementState,omitempty"`
  2562  	// Name: Output only. The resource name of the effective ETD custom module. Its
  2563  	// format is: *
  2564  	// "organizations/{organization}/eventThreatDetectionSettings/effectiveCustomMod
  2565  	// ules/{module}". *
  2566  	// "folders/{folder}/eventThreatDetectionSettings/effectiveCustomModules/{module
  2567  	// }". *
  2568  	// "projects/{project}/eventThreatDetectionSettings/effectiveCustomModules/{modu
  2569  	// le}".
  2570  	Name string `json:"name,omitempty"`
  2571  	// Type: Output only. Type for the module. e.g. CONFIGURABLE_BAD_IP.
  2572  	Type string `json:"type,omitempty"`
  2573  
  2574  	// ServerResponse contains the HTTP response code and headers from the server.
  2575  	googleapi.ServerResponse `json:"-"`
  2576  	// ForceSendFields is a list of field names (e.g. "Config") to unconditionally
  2577  	// include in API requests. By default, fields with empty or default values are
  2578  	// omitted from API requests. See
  2579  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2580  	// details.
  2581  	ForceSendFields []string `json:"-"`
  2582  	// NullFields is a list of field names (e.g. "Config") to include in API
  2583  	// requests with the JSON null value. By default, fields with empty values are
  2584  	// omitted from API requests. See
  2585  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2586  	NullFields []string `json:"-"`
  2587  }
  2588  
  2589  func (s *EffectiveEventThreatDetectionCustomModule) MarshalJSON() ([]byte, error) {
  2590  	type NoMethod EffectiveEventThreatDetectionCustomModule
  2591  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2592  }
  2593  
  2594  // Empty: A generic empty message that you can re-use to avoid defining
  2595  // duplicated empty messages in your APIs. A typical example is to use it as
  2596  // the request or the response type of an API method. For instance: service Foo
  2597  // { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }
  2598  type Empty struct {
  2599  	// ServerResponse contains the HTTP response code and headers from the server.
  2600  	googleapi.ServerResponse `json:"-"`
  2601  }
  2602  
  2603  // EnvironmentVariable: A name-value pair representing an environment variable
  2604  // used in an operating system process.
  2605  type EnvironmentVariable struct {
  2606  	// Name: Environment variable name as a JSON encoded string.
  2607  	Name string `json:"name,omitempty"`
  2608  	// Val: Environment variable value as a JSON encoded string.
  2609  	Val string `json:"val,omitempty"`
  2610  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  2611  	// include in API requests. By default, fields with empty or default values are
  2612  	// omitted from API requests. See
  2613  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2614  	// details.
  2615  	ForceSendFields []string `json:"-"`
  2616  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  2617  	// with the JSON null value. By default, fields with empty values are omitted
  2618  	// from API requests. See
  2619  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2620  	NullFields []string `json:"-"`
  2621  }
  2622  
  2623  func (s *EnvironmentVariable) MarshalJSON() ([]byte, error) {
  2624  	type NoMethod EnvironmentVariable
  2625  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2626  }
  2627  
  2628  // EventThreatDetectionCustomModule: Represents an instance of an Event Threat
  2629  // Detection custom module, including its full module name, display name,
  2630  // enablement state, and last updated time. You can create a custom module at
  2631  // the organization, folder, or project level. Custom modules that you create
  2632  // at the organization or folder level are inherited by child folders and
  2633  // projects.
  2634  type EventThreatDetectionCustomModule struct {
  2635  	// AncestorModule: Output only. The closest ancestor module that this module
  2636  	// inherits the enablement state from. The format is the same as the
  2637  	// EventThreatDetectionCustomModule resource name.
  2638  	AncestorModule string `json:"ancestorModule,omitempty"`
  2639  	// Config: Config for the module. For the resident module, its config value is
  2640  	// defined at this level. For the inherited module, its config value is
  2641  	// inherited from the ancestor module.
  2642  	Config googleapi.RawMessage `json:"config,omitempty"`
  2643  	// Description: The description for the module.
  2644  	Description string `json:"description,omitempty"`
  2645  	// DisplayName: The human readable name to be displayed for the module.
  2646  	DisplayName string `json:"displayName,omitempty"`
  2647  	// EnablementState: The state of enablement for the module at the given level
  2648  	// of the hierarchy.
  2649  	//
  2650  	// Possible values:
  2651  	//   "ENABLEMENT_STATE_UNSPECIFIED" - Unspecified enablement state.
  2652  	//   "ENABLED" - The module is enabled at the given level.
  2653  	//   "DISABLED" - The module is disabled at the given level.
  2654  	//   "INHERITED" - When the enablement state is inherited.
  2655  	EnablementState string `json:"enablementState,omitempty"`
  2656  	// LastEditor: Output only. The editor the module was last updated by.
  2657  	LastEditor string `json:"lastEditor,omitempty"`
  2658  	// Name: Immutable. The resource name of the Event Threat Detection custom
  2659  	// module. Its format is: *
  2660  	// "organizations/{organization}/eventThreatDetectionSettings/customModules/{mod
  2661  	// ule}". *
  2662  	// "folders/{folder}/eventThreatDetectionSettings/customModules/{module}". *
  2663  	// "projects/{project}/eventThreatDetectionSettings/customModules/{module}".
  2664  	Name string `json:"name,omitempty"`
  2665  	// Type: Type for the module. e.g. CONFIGURABLE_BAD_IP.
  2666  	Type string `json:"type,omitempty"`
  2667  	// UpdateTime: Output only. The time the module was last updated.
  2668  	UpdateTime string `json:"updateTime,omitempty"`
  2669  
  2670  	// ServerResponse contains the HTTP response code and headers from the server.
  2671  	googleapi.ServerResponse `json:"-"`
  2672  	// ForceSendFields is a list of field names (e.g. "AncestorModule") to
  2673  	// unconditionally include in API requests. By default, fields with empty or
  2674  	// default values are omitted from API requests. See
  2675  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2676  	// details.
  2677  	ForceSendFields []string `json:"-"`
  2678  	// NullFields is a list of field names (e.g. "AncestorModule") to include in
  2679  	// API requests with the JSON null value. By default, fields with empty values
  2680  	// are omitted from API requests. See
  2681  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2682  	NullFields []string `json:"-"`
  2683  }
  2684  
  2685  func (s *EventThreatDetectionCustomModule) MarshalJSON() ([]byte, error) {
  2686  	type NoMethod EventThreatDetectionCustomModule
  2687  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2688  }
  2689  
  2690  // ExfilResource: Resource where data was exfiltrated from or exfiltrated to.
  2691  type ExfilResource struct {
  2692  	// Components: Subcomponents of the asset that was exfiltrated, like URIs used
  2693  	// during exfiltration, table names, databases, and filenames. For example,
  2694  	// multiple tables might have been exfiltrated from the same Cloud SQL
  2695  	// instance, or multiple files might have been exfiltrated from the same Cloud
  2696  	// Storage bucket.
  2697  	Components []string `json:"components,omitempty"`
  2698  	// Name: The resource's full resource name
  2699  	// (https://cloud.google.com/apis/design/resource_names#full_resource_name).
  2700  	Name string `json:"name,omitempty"`
  2701  	// ForceSendFields is a list of field names (e.g. "Components") to
  2702  	// unconditionally include in API requests. By default, fields with empty or
  2703  	// default values are omitted from API requests. See
  2704  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2705  	// details.
  2706  	ForceSendFields []string `json:"-"`
  2707  	// NullFields is a list of field names (e.g. "Components") to include in API
  2708  	// requests with the JSON null value. By default, fields with empty values are
  2709  	// omitted from API requests. See
  2710  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2711  	NullFields []string `json:"-"`
  2712  }
  2713  
  2714  func (s *ExfilResource) MarshalJSON() ([]byte, error) {
  2715  	type NoMethod ExfilResource
  2716  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2717  }
  2718  
  2719  // Exfiltration: Exfiltration represents a data exfiltration attempt from one
  2720  // or more sources to one or more targets. The `sources` attribute lists the
  2721  // sources of the exfiltrated data. The `targets` attribute lists the
  2722  // destinations the data was copied to.
  2723  type Exfiltration struct {
  2724  	// Sources: If there are multiple sources, then the data is considered "joined"
  2725  	// between them. For instance, BigQuery can join multiple tables, and each
  2726  	// table would be considered a source.
  2727  	Sources []*ExfilResource `json:"sources,omitempty"`
  2728  	// Targets: If there are multiple targets, each target would get a complete
  2729  	// copy of the "joined" source data.
  2730  	Targets []*ExfilResource `json:"targets,omitempty"`
  2731  	// TotalExfiltratedBytes: Total exfiltrated bytes processed for the entire job.
  2732  	TotalExfiltratedBytes int64 `json:"totalExfiltratedBytes,omitempty,string"`
  2733  	// ForceSendFields is a list of field names (e.g. "Sources") to unconditionally
  2734  	// include in API requests. By default, fields with empty or default values are
  2735  	// omitted from API requests. See
  2736  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2737  	// details.
  2738  	ForceSendFields []string `json:"-"`
  2739  	// NullFields is a list of field names (e.g. "Sources") to include in API
  2740  	// requests with the JSON null value. By default, fields with empty values are
  2741  	// omitted from API requests. See
  2742  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2743  	NullFields []string `json:"-"`
  2744  }
  2745  
  2746  func (s *Exfiltration) MarshalJSON() ([]byte, error) {
  2747  	type NoMethod Exfiltration
  2748  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2749  }
  2750  
  2751  // Expr: Represents a textual expression in the Common Expression Language
  2752  // (CEL) syntax. CEL is a C-like expression language. The syntax and semantics
  2753  // of CEL are documented at https://github.com/google/cel-spec. Example
  2754  // (Comparison): title: "Summary size limit" description: "Determines if a
  2755  // summary is less than 100 chars" expression: "document.summary.size() < 100"
  2756  // Example (Equality): title: "Requestor is owner" description: "Determines if
  2757  // requestor is the document owner" expression: "document.owner ==
  2758  // request.auth.claims.email" Example (Logic): title: "Public documents"
  2759  // description: "Determine whether the document should be publicly visible"
  2760  // expression: "document.type != 'private' && document.type != 'internal'"
  2761  // Example (Data Manipulation): title: "Notification string" description:
  2762  // "Create a notification string with a timestamp." expression: "'New message
  2763  // received at ' + string(document.create_time)" The exact variables and
  2764  // functions that may be referenced within an expression are determined by the
  2765  // service that evaluates it. See the service documentation for additional
  2766  // information.
  2767  type Expr struct {
  2768  	// Description: Optional. Description of the expression. This is a longer text
  2769  	// which describes the expression, e.g. when hovered over it in a UI.
  2770  	Description string `json:"description,omitempty"`
  2771  	// Expression: Textual representation of an expression in Common Expression
  2772  	// Language syntax.
  2773  	Expression string `json:"expression,omitempty"`
  2774  	// Location: Optional. String indicating the location of the expression for
  2775  	// error reporting, e.g. a file name and a position in the file.
  2776  	Location string `json:"location,omitempty"`
  2777  	// Title: Optional. Title for the expression, i.e. a short string describing
  2778  	// its purpose. This can be used e.g. in UIs which allow to enter the
  2779  	// expression.
  2780  	Title string `json:"title,omitempty"`
  2781  	// ForceSendFields is a list of field names (e.g. "Description") to
  2782  	// unconditionally include in API requests. By default, fields with empty or
  2783  	// default values are omitted from API requests. See
  2784  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2785  	// details.
  2786  	ForceSendFields []string `json:"-"`
  2787  	// NullFields is a list of field names (e.g. "Description") to include in API
  2788  	// requests with the JSON null value. By default, fields with empty values are
  2789  	// omitted from API requests. See
  2790  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2791  	NullFields []string `json:"-"`
  2792  }
  2793  
  2794  func (s *Expr) MarshalJSON() ([]byte, error) {
  2795  	type NoMethod Expr
  2796  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2797  }
  2798  
  2799  // File: File information about the related binary/library used by an
  2800  // executable, or the script used by a script interpreter
  2801  type File struct {
  2802  	// Contents: Prefix of the file contents as a JSON-encoded string.
  2803  	Contents string `json:"contents,omitempty"`
  2804  	// DiskPath: Path of the file in terms of underlying disk/partition
  2805  	// identifiers.
  2806  	DiskPath *DiskPath `json:"diskPath,omitempty"`
  2807  	// HashedSize: The length in bytes of the file prefix that was hashed. If
  2808  	// hashed_size == size, any hashes reported represent the entire file.
  2809  	HashedSize int64 `json:"hashedSize,omitempty,string"`
  2810  	// PartiallyHashed: True when the hash covers only a prefix of the file.
  2811  	PartiallyHashed bool `json:"partiallyHashed,omitempty"`
  2812  	// Path: Absolute path of the file as a JSON encoded string.
  2813  	Path string `json:"path,omitempty"`
  2814  	// Sha256: SHA256 hash of the first hashed_size bytes of the file encoded as a
  2815  	// hex string. If hashed_size == size, sha256 represents the SHA256 hash of the
  2816  	// entire file.
  2817  	Sha256 string `json:"sha256,omitempty"`
  2818  	// Size: Size of the file in bytes.
  2819  	Size int64 `json:"size,omitempty,string"`
  2820  	// ForceSendFields is a list of field names (e.g. "Contents") to
  2821  	// unconditionally include in API requests. By default, fields with empty or
  2822  	// default values are omitted from API requests. See
  2823  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2824  	// details.
  2825  	ForceSendFields []string `json:"-"`
  2826  	// NullFields is a list of field names (e.g. "Contents") to include in API
  2827  	// requests with the JSON null value. By default, fields with empty values are
  2828  	// omitted from API requests. See
  2829  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2830  	NullFields []string `json:"-"`
  2831  }
  2832  
  2833  func (s *File) MarshalJSON() ([]byte, error) {
  2834  	type NoMethod File
  2835  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2836  }
  2837  
  2838  // Finding: Security Command Center finding. A finding is a record of
  2839  // assessment data like security, risk, health, or privacy, that is ingested
  2840  // into Security Command Center for presentation, notification, analysis,
  2841  // policy testing, and enforcement. For example, a cross-site scripting (XSS)
  2842  // vulnerability in an App Engine application is a finding.
  2843  type Finding struct {
  2844  	// Access: Access details associated with the finding, such as more information
  2845  	// on the caller, which method was accessed, and from where.
  2846  	Access *Access `json:"access,omitempty"`
  2847  	// Application: Represents an application associated with the finding.
  2848  	Application *Application `json:"application,omitempty"`
  2849  	// AttackExposure: The results of an attack path simulation relevant to this
  2850  	// finding.
  2851  	AttackExposure *AttackExposure `json:"attackExposure,omitempty"`
  2852  	// BackupDisasterRecovery: Fields related to Backup and DR findings.
  2853  	BackupDisasterRecovery *BackupDisasterRecovery `json:"backupDisasterRecovery,omitempty"`
  2854  	// CanonicalName: The canonical name of the finding. It's either
  2855  	// "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}",
  2856  	// "folders/{folder_id}/sources/{source_id}/findings/{finding_id}" or
  2857  	// "projects/{project_number}/sources/{source_id}/findings/{finding_id}",
  2858  	// depending on the closest CRM ancestor of the resource associated with the
  2859  	// finding.
  2860  	CanonicalName string `json:"canonicalName,omitempty"`
  2861  	// Category: The additional taxonomy group within findings from a given source.
  2862  	// This field is immutable after creation time. Example: "XSS_FLASH_INJECTION"
  2863  	Category string `json:"category,omitempty"`
  2864  	// CloudArmor: Fields related to Cloud Armor findings.
  2865  	CloudArmor *CloudArmor `json:"cloudArmor,omitempty"`
  2866  	// CloudDlpDataProfile: Cloud DLP data profile that is associated with the
  2867  	// finding.
  2868  	CloudDlpDataProfile *CloudDlpDataProfile `json:"cloudDlpDataProfile,omitempty"`
  2869  	// CloudDlpInspection: Cloud Data Loss Prevention (Cloud DLP) inspection
  2870  	// results that are associated with the finding.
  2871  	CloudDlpInspection *CloudDlpInspection `json:"cloudDlpInspection,omitempty"`
  2872  	// Compliances: Contains compliance information for security standards
  2873  	// associated to the finding.
  2874  	Compliances []*Compliance `json:"compliances,omitempty"`
  2875  	// Connections: Contains information about the IP connection associated with
  2876  	// the finding.
  2877  	Connections []*Connection `json:"connections,omitempty"`
  2878  	// Contacts: Output only. Map containing the points of contact for the given
  2879  	// finding. The key represents the type of contact, while the value contains a
  2880  	// list of all the contacts that pertain. Please refer to:
  2881  	// https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories
  2882  	// { "security": { "contacts": [ { "email": "person1@company.com" }, { "email":
  2883  	// "person2@company.com" } ] } }
  2884  	Contacts map[string]ContactDetails `json:"contacts,omitempty"`
  2885  	// Containers: Containers associated with the finding. This field provides
  2886  	// information for both Kubernetes and non-Kubernetes containers.
  2887  	Containers []*Container `json:"containers,omitempty"`
  2888  	// CreateTime: The time at which the finding was created in Security Command
  2889  	// Center.
  2890  	CreateTime string `json:"createTime,omitempty"`
  2891  	// Database: Database associated with the finding.
  2892  	Database *Database `json:"database,omitempty"`
  2893  	// Description: Contains more details about the finding.
  2894  	Description string `json:"description,omitempty"`
  2895  	// EventTime: The time the finding was first detected. If an existing finding
  2896  	// is updated, then this is the time the update occurred. For example, if the
  2897  	// finding represents an open firewall, this property captures the time the
  2898  	// detector believes the firewall became open. The accuracy is determined by
  2899  	// the detector. If the finding is later resolved, then this time reflects when
  2900  	// the finding was resolved. This must not be set to a value greater than the
  2901  	// current timestamp.
  2902  	EventTime string `json:"eventTime,omitempty"`
  2903  	// Exfiltration: Represents exfiltrations associated with the finding.
  2904  	Exfiltration *Exfiltration `json:"exfiltration,omitempty"`
  2905  	// ExternalSystems: Output only. Third party SIEM/SOAR fields within SCC,
  2906  	// contains external system information and external system finding fields.
  2907  	ExternalSystems map[string]GoogleCloudSecuritycenterV1ExternalSystem `json:"externalSystems,omitempty"`
  2908  	// ExternalUri: The URI that, if available, points to a web page outside of
  2909  	// Security Command Center where additional information about the finding can
  2910  	// be found. This field is guaranteed to be either empty or a well formed URL.
  2911  	ExternalUri string `json:"externalUri,omitempty"`
  2912  	// Files: File associated with the finding.
  2913  	Files []*File `json:"files,omitempty"`
  2914  	// FindingClass: The class of the finding.
  2915  	//
  2916  	// Possible values:
  2917  	//   "FINDING_CLASS_UNSPECIFIED" - Unspecified finding class.
  2918  	//   "THREAT" - Describes unwanted or malicious activity.
  2919  	//   "VULNERABILITY" - Describes a potential weakness in software that
  2920  	// increases risk to Confidentiality & Integrity & Availability.
  2921  	//   "MISCONFIGURATION" - Describes a potential weakness in cloud
  2922  	// resource/asset configuration that increases risk.
  2923  	//   "OBSERVATION" - Describes a security observation that is for informational
  2924  	// purposes.
  2925  	//   "SCC_ERROR" - Describes an error that prevents some SCC functionality.
  2926  	//   "POSTURE_VIOLATION" - Describes a potential security risk due to a change
  2927  	// in the security posture.
  2928  	FindingClass string `json:"findingClass,omitempty"`
  2929  	// IamBindings: Represents IAM bindings associated with the finding.
  2930  	IamBindings []*IamBinding `json:"iamBindings,omitempty"`
  2931  	// Indicator: Represents what's commonly known as an *indicator of compromise*
  2932  	// (IoC) in computer forensics. This is an artifact observed on a network or in
  2933  	// an operating system that, with high confidence, indicates a computer
  2934  	// intrusion. For more information, see Indicator of compromise
  2935  	// (https://en.wikipedia.org/wiki/Indicator_of_compromise).
  2936  	Indicator *Indicator `json:"indicator,omitempty"`
  2937  	// KernelRootkit: Signature of the kernel rootkit.
  2938  	KernelRootkit *KernelRootkit `json:"kernelRootkit,omitempty"`
  2939  	// Kubernetes: Kubernetes resources associated with the finding.
  2940  	Kubernetes *Kubernetes `json:"kubernetes,omitempty"`
  2941  	// LoadBalancers: The load balancers associated with the finding.
  2942  	LoadBalancers []*LoadBalancer `json:"loadBalancers,omitempty"`
  2943  	// LogEntries: Log entries that are relevant to the finding.
  2944  	LogEntries []*LogEntry `json:"logEntries,omitempty"`
  2945  	// MitreAttack: MITRE ATT&CK tactics and techniques related to this finding.
  2946  	// See: https://attack.mitre.org
  2947  	MitreAttack *MitreAttack `json:"mitreAttack,omitempty"`
  2948  	// ModuleName: Unique identifier of the module which generated the finding.
  2949  	// Example:
  2950  	// folders/598186756061/securityHealthAnalyticsSettings/customModules/5679944116
  2951  	// 1885
  2952  	ModuleName string `json:"moduleName,omitempty"`
  2953  	// Mute: Indicates the mute state of a finding (either muted, unmuted or
  2954  	// undefined). Unlike other attributes of a finding, a finding provider
  2955  	// shouldn't set the value of mute.
  2956  	//
  2957  	// Possible values:
  2958  	//   "MUTE_UNSPECIFIED" - Unspecified.
  2959  	//   "MUTED" - Finding has been muted.
  2960  	//   "UNMUTED" - Finding has been unmuted.
  2961  	//   "UNDEFINED" - Finding has never been muted/unmuted.
  2962  	Mute string `json:"mute,omitempty"`
  2963  	// MuteInitiator: Records additional information about the mute operation, for
  2964  	// example, the mute configuration
  2965  	// (/security-command-center/docs/how-to-mute-findings) that muted the finding
  2966  	// and the user who muted the finding.
  2967  	MuteInitiator string `json:"muteInitiator,omitempty"`
  2968  	// MuteUpdateTime: Output only. The most recent time this finding was muted or
  2969  	// unmuted.
  2970  	MuteUpdateTime string `json:"muteUpdateTime,omitempty"`
  2971  	// Name: The relative resource name
  2972  	// (https://cloud.google.com/apis/design/resource_names#relative_resource_name)
  2973  	// of the finding. Example:
  2974  	// "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}",
  2975  	// "folders/{folder_id}/sources/{source_id}/findings/{finding_id}",
  2976  	// "projects/{project_id}/sources/{source_id}/findings/{finding_id}".
  2977  	Name string `json:"name,omitempty"`
  2978  	// NextSteps: Steps to address the finding.
  2979  	NextSteps string `json:"nextSteps,omitempty"`
  2980  	// Notebook: Notebook associated with the finding.
  2981  	Notebook *Notebook `json:"notebook,omitempty"`
  2982  	// OrgPolicies: Contains information about the org policies associated with the
  2983  	// finding.
  2984  	OrgPolicies []*OrgPolicy `json:"orgPolicies,omitempty"`
  2985  	// Parent: The relative resource name of the source the finding belongs to.
  2986  	// See:
  2987  	// https://cloud.google.com/apis/design/resource_names#relative_resource_name
  2988  	// This field is immutable after creation time. For example:
  2989  	// "organizations/{organization_id}/sources/{source_id}"
  2990  	Parent string `json:"parent,omitempty"`
  2991  	// ParentDisplayName: Output only. The human readable display name of the
  2992  	// finding source such as "Event Threat Detection" or "Security Health
  2993  	// Analytics".
  2994  	ParentDisplayName string `json:"parentDisplayName,omitempty"`
  2995  	// Processes: Represents operating system processes associated with the
  2996  	// Finding.
  2997  	Processes []*Process `json:"processes,omitempty"`
  2998  	// ResourceName: For findings on Google Cloud resources, the full resource name
  2999  	// of the Google Cloud resource this finding is for. See:
  3000  	// https://cloud.google.com/apis/design/resource_names#full_resource_name When
  3001  	// the finding is for a non-Google Cloud resource, the resourceName can be a
  3002  	// customer or partner defined string. This field is immutable after creation
  3003  	// time.
  3004  	ResourceName string `json:"resourceName,omitempty"`
  3005  	// SecurityMarks: Output only. User specified security marks. These marks are
  3006  	// entirely managed by the user and come from the SecurityMarks resource that
  3007  	// belongs to the finding.
  3008  	SecurityMarks *SecurityMarks `json:"securityMarks,omitempty"`
  3009  	// SecurityPosture: The security posture associated with the finding.
  3010  	SecurityPosture *SecurityPosture `json:"securityPosture,omitempty"`
  3011  	// Severity: The severity of the finding. This field is managed by the source
  3012  	// that writes the finding.
  3013  	//
  3014  	// Possible values:
  3015  	//   "SEVERITY_UNSPECIFIED" - This value is used for findings when a source
  3016  	// doesn't write a severity value.
  3017  	//   "CRITICAL" - Vulnerability: A critical vulnerability is easily
  3018  	// discoverable by an external actor, exploitable, and results in the direct
  3019  	// ability to execute arbitrary code, exfiltrate data, and otherwise gain
  3020  	// additional access and privileges to cloud resources and workloads. Examples
  3021  	// include publicly accessible unprotected user data and public SSH access with
  3022  	// weak or no passwords. Threat: Indicates a threat that is able to access,
  3023  	// modify, or delete data or execute unauthorized code within existing
  3024  	// resources.
  3025  	//   "HIGH" - Vulnerability: A high risk vulnerability can be easily discovered
  3026  	// and exploited in combination with other vulnerabilities in order to gain
  3027  	// direct access and the ability to execute arbitrary code, exfiltrate data,
  3028  	// and otherwise gain additional access and privileges to cloud resources and
  3029  	// workloads. An example is a database with weak or no passwords that is only
  3030  	// accessible internally. This database could easily be compromised by an actor
  3031  	// that had access to the internal network. Threat: Indicates a threat that is
  3032  	// able to create new computational resources in an environment but not able to
  3033  	// access data or execute code in existing resources.
  3034  	//   "MEDIUM" - Vulnerability: A medium risk vulnerability could be used by an
  3035  	// actor to gain access to resources or privileges that enable them to
  3036  	// eventually (through multiple steps or a complex exploit) gain access and the
  3037  	// ability to execute arbitrary code or exfiltrate data. An example is a
  3038  	// service account with access to more projects than it should have. If an
  3039  	// actor gains access to the service account, they could potentially use that
  3040  	// access to manipulate a project the service account was not intended to.
  3041  	// Threat: Indicates a threat that is able to cause operational impact but may
  3042  	// not access data or execute unauthorized code.
  3043  	//   "LOW" - Vulnerability: A low risk vulnerability hampers a security
  3044  	// organization's ability to detect vulnerabilities or active threats in their
  3045  	// deployment, or prevents the root cause investigation of security issues. An
  3046  	// example is monitoring and logs being disabled for resource configurations
  3047  	// and access. Threat: Indicates a threat that has obtained minimal access to
  3048  	// an environment but is not able to access data, execute code, or create
  3049  	// resources.
  3050  	Severity string `json:"severity,omitempty"`
  3051  	// SourceProperties: Source specific properties. These properties are managed
  3052  	// by the source that writes the finding. The key names in the
  3053  	// source_properties map must be between 1 and 255 characters, and must start
  3054  	// with a letter and contain alphanumeric characters or underscores only.
  3055  	SourceProperties googleapi.RawMessage `json:"sourceProperties,omitempty"`
  3056  	// State: The state of the finding.
  3057  	//
  3058  	// Possible values:
  3059  	//   "STATE_UNSPECIFIED" - Unspecified state.
  3060  	//   "ACTIVE" - The finding requires attention and has not been addressed yet.
  3061  	//   "INACTIVE" - The finding has been fixed, triaged as a non-issue or
  3062  	// otherwise addressed and is no longer active.
  3063  	State string `json:"state,omitempty"`
  3064  	// Vulnerability: Represents vulnerability-specific fields like CVE and CVSS
  3065  	// scores. CVE stands for Common Vulnerabilities and Exposures
  3066  	// (https://cve.mitre.org/about/)
  3067  	Vulnerability *Vulnerability `json:"vulnerability,omitempty"`
  3068  
  3069  	// ServerResponse contains the HTTP response code and headers from the server.
  3070  	googleapi.ServerResponse `json:"-"`
  3071  	// ForceSendFields is a list of field names (e.g. "Access") to unconditionally
  3072  	// include in API requests. By default, fields with empty or default values are
  3073  	// omitted from API requests. See
  3074  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3075  	// details.
  3076  	ForceSendFields []string `json:"-"`
  3077  	// NullFields is a list of field names (e.g. "Access") to include in API
  3078  	// requests with the JSON null value. By default, fields with empty values are
  3079  	// omitted from API requests. See
  3080  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3081  	NullFields []string `json:"-"`
  3082  }
  3083  
  3084  func (s *Finding) MarshalJSON() ([]byte, error) {
  3085  	type NoMethod Finding
  3086  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3087  }
  3088  
  3089  // Folder: Message that contains the resource name and display name of a folder
  3090  // resource.
  3091  type Folder struct {
  3092  	// ResourceFolder: Full resource name of this folder. See:
  3093  	// https://cloud.google.com/apis/design/resource_names#full_resource_name
  3094  	ResourceFolder string `json:"resourceFolder,omitempty"`
  3095  	// ResourceFolderDisplayName: The user defined display name for this folder.
  3096  	ResourceFolderDisplayName string `json:"resourceFolderDisplayName,omitempty"`
  3097  	// ForceSendFields is a list of field names (e.g. "ResourceFolder") to
  3098  	// unconditionally include in API requests. By default, fields with empty or
  3099  	// default values are omitted from API requests. See
  3100  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3101  	// details.
  3102  	ForceSendFields []string `json:"-"`
  3103  	// NullFields is a list of field names (e.g. "ResourceFolder") to include in
  3104  	// API requests with the JSON null value. By default, fields with empty values
  3105  	// are omitted from API requests. See
  3106  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3107  	NullFields []string `json:"-"`
  3108  }
  3109  
  3110  func (s *Folder) MarshalJSON() ([]byte, error) {
  3111  	type NoMethod Folder
  3112  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3113  }
  3114  
  3115  // GcpMetadata: GCP metadata associated with the resource, only applicable if
  3116  // the finding's cloud provider is Google Cloud Platform.
  3117  type GcpMetadata struct {
  3118  	// Folders: Output only. Contains a Folder message for each folder in the
  3119  	// assets ancestry. The first folder is the deepest nested folder, and the last
  3120  	// folder is the folder directly under the Organization.
  3121  	Folders []*GoogleCloudSecuritycenterV2Folder `json:"folders,omitempty"`
  3122  	// Organization: The name of the organization that the resource belongs to.
  3123  	Organization string `json:"organization,omitempty"`
  3124  	// Parent: The full resource name of resource's parent.
  3125  	Parent string `json:"parent,omitempty"`
  3126  	// ParentDisplayName: The human readable name of resource's parent.
  3127  	ParentDisplayName string `json:"parentDisplayName,omitempty"`
  3128  	// Project: The full resource name of project that the resource belongs to.
  3129  	Project string `json:"project,omitempty"`
  3130  	// ProjectDisplayName: The project ID that the resource belongs to.
  3131  	ProjectDisplayName string `json:"projectDisplayName,omitempty"`
  3132  	// ForceSendFields is a list of field names (e.g. "Folders") to unconditionally
  3133  	// include in API requests. By default, fields with empty or default values are
  3134  	// omitted from API requests. See
  3135  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3136  	// details.
  3137  	ForceSendFields []string `json:"-"`
  3138  	// NullFields is a list of field names (e.g. "Folders") to include in API
  3139  	// requests with the JSON null value. By default, fields with empty values are
  3140  	// omitted from API requests. See
  3141  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3142  	NullFields []string `json:"-"`
  3143  }
  3144  
  3145  func (s *GcpMetadata) MarshalJSON() ([]byte, error) {
  3146  	type NoMethod GcpMetadata
  3147  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3148  }
  3149  
  3150  // Geolocation: Represents a geographical location for a given access.
  3151  type Geolocation struct {
  3152  	// RegionCode: A CLDR.
  3153  	RegionCode string `json:"regionCode,omitempty"`
  3154  	// ForceSendFields is a list of field names (e.g. "RegionCode") to
  3155  	// unconditionally include in API requests. By default, fields with empty or
  3156  	// default values are omitted from API requests. See
  3157  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3158  	// details.
  3159  	ForceSendFields []string `json:"-"`
  3160  	// NullFields is a list of field names (e.g. "RegionCode") to include in API
  3161  	// requests with the JSON null value. By default, fields with empty values are
  3162  	// omitted from API requests. See
  3163  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3164  	NullFields []string `json:"-"`
  3165  }
  3166  
  3167  func (s *Geolocation) MarshalJSON() ([]byte, error) {
  3168  	type NoMethod Geolocation
  3169  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3170  }
  3171  
  3172  // GetIamPolicyRequest: Request message for `GetIamPolicy` method.
  3173  type GetIamPolicyRequest struct {
  3174  	// Options: OPTIONAL: A `GetPolicyOptions` object for specifying options to
  3175  	// `GetIamPolicy`.
  3176  	Options *GetPolicyOptions `json:"options,omitempty"`
  3177  	// ForceSendFields is a list of field names (e.g. "Options") to unconditionally
  3178  	// include in API requests. By default, fields with empty or default values are
  3179  	// omitted from API requests. See
  3180  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3181  	// details.
  3182  	ForceSendFields []string `json:"-"`
  3183  	// NullFields is a list of field names (e.g. "Options") to include in API
  3184  	// requests with the JSON null value. By default, fields with empty values are
  3185  	// omitted from API requests. See
  3186  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3187  	NullFields []string `json:"-"`
  3188  }
  3189  
  3190  func (s *GetIamPolicyRequest) MarshalJSON() ([]byte, error) {
  3191  	type NoMethod GetIamPolicyRequest
  3192  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3193  }
  3194  
  3195  // GetPolicyOptions: Encapsulates settings provided to GetIamPolicy.
  3196  type GetPolicyOptions struct {
  3197  	// RequestedPolicyVersion: Optional. The maximum policy version that will be
  3198  	// used to format the policy. Valid values are 0, 1, and 3. Requests specifying
  3199  	// an invalid value will be rejected. Requests for policies with any
  3200  	// conditional role bindings must specify version 3. Policies with no
  3201  	// conditional role bindings may specify any valid value or leave the field
  3202  	// unset. The policy in the response might use the policy version that you
  3203  	// specified, or it might use a lower policy version. For example, if you
  3204  	// specify version 3, but the policy has no conditional role bindings, the
  3205  	// response uses version 1. To learn which resources support conditions in
  3206  	// their IAM policies, see the IAM documentation
  3207  	// (https://cloud.google.com/iam/help/conditions/resource-policies).
  3208  	RequestedPolicyVersion int64 `json:"requestedPolicyVersion,omitempty"`
  3209  	// ForceSendFields is a list of field names (e.g. "RequestedPolicyVersion") to
  3210  	// unconditionally include in API requests. By default, fields with empty or
  3211  	// default values are omitted from API requests. See
  3212  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3213  	// details.
  3214  	ForceSendFields []string `json:"-"`
  3215  	// NullFields is a list of field names (e.g. "RequestedPolicyVersion") to
  3216  	// include in API requests with the JSON null value. By default, fields with
  3217  	// empty values are omitted from API requests. See
  3218  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3219  	NullFields []string `json:"-"`
  3220  }
  3221  
  3222  func (s *GetPolicyOptions) MarshalJSON() ([]byte, error) {
  3223  	type NoMethod GetPolicyOptions
  3224  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3225  }
  3226  
  3227  // GoogleCloudSecuritycenterV1BigQueryExport: Configures how to deliver
  3228  // Findings to BigQuery Instance.
  3229  type GoogleCloudSecuritycenterV1BigQueryExport struct {
  3230  	// CreateTime: Output only. The time at which the BigQuery export was created.
  3231  	// This field is set by the server and will be ignored if provided on export on
  3232  	// creation.
  3233  	CreateTime string `json:"createTime,omitempty"`
  3234  	// Dataset: The dataset to write findings' updates to. Its format is
  3235  	// "projects/[project_id]/datasets/[bigquery_dataset_id]". BigQuery Dataset
  3236  	// unique ID must contain only letters (a-z, A-Z), numbers (0-9), or
  3237  	// underscores (_).
  3238  	Dataset string `json:"dataset,omitempty"`
  3239  	// Description: The description of the export (max of 1024 characters).
  3240  	Description string `json:"description,omitempty"`
  3241  	// Filter: Expression that defines the filter to apply across create/update
  3242  	// events of findings. The expression is a list of zero or more restrictions
  3243  	// combined via logical operators `AND` and `OR`. Parentheses are supported,
  3244  	// and `OR` has higher precedence than `AND`. Restrictions have the form ` `
  3245  	// and may have a `-` character in front of them to indicate negation. The
  3246  	// fields map to those defined in the corresponding resource. The supported
  3247  	// operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer
  3248  	// values. * `:`, meaning substring matching, for strings. The supported value
  3249  	// types are: * string literals in quotes. * integer literals without quotes. *
  3250  	// boolean literals `true` and `false` without quotes.
  3251  	Filter string `json:"filter,omitempty"`
  3252  	// MostRecentEditor: Output only. Email address of the user who last edited the
  3253  	// BigQuery export. This field is set by the server and will be ignored if
  3254  	// provided on export creation or update.
  3255  	MostRecentEditor string `json:"mostRecentEditor,omitempty"`
  3256  	// Name: The relative resource name of this export. See:
  3257  	// https://cloud.google.com/apis/design/resource_names#relative_resource_name.
  3258  	// Example format:
  3259  	// "organizations/{organization_id}/bigQueryExports/{export_id}" Example
  3260  	// format: "folders/{folder_id}/bigQueryExports/{export_id}" Example format:
  3261  	// "projects/{project_id}/bigQueryExports/{export_id}" This field is provided
  3262  	// in responses, and is ignored when provided in create requests.
  3263  	Name string `json:"name,omitempty"`
  3264  	// Principal: Output only. The service account that needs permission to create
  3265  	// table and upload data to the BigQuery dataset.
  3266  	Principal string `json:"principal,omitempty"`
  3267  	// UpdateTime: Output only. The most recent time at which the BigQuery export
  3268  	// was updated. This field is set by the server and will be ignored if provided
  3269  	// on export creation or update.
  3270  	UpdateTime string `json:"updateTime,omitempty"`
  3271  
  3272  	// ServerResponse contains the HTTP response code and headers from the server.
  3273  	googleapi.ServerResponse `json:"-"`
  3274  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  3275  	// unconditionally include in API requests. By default, fields with empty or
  3276  	// default values are omitted from API requests. See
  3277  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3278  	// details.
  3279  	ForceSendFields []string `json:"-"`
  3280  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  3281  	// requests with the JSON null value. By default, fields with empty values are
  3282  	// omitted from API requests. See
  3283  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3284  	NullFields []string `json:"-"`
  3285  }
  3286  
  3287  func (s *GoogleCloudSecuritycenterV1BigQueryExport) MarshalJSON() ([]byte, error) {
  3288  	type NoMethod GoogleCloudSecuritycenterV1BigQueryExport
  3289  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3290  }
  3291  
  3292  // GoogleCloudSecuritycenterV1Binding: Represents a Kubernetes RoleBinding or
  3293  // ClusterRoleBinding.
  3294  type GoogleCloudSecuritycenterV1Binding struct {
  3295  	// Name: Name for the binding.
  3296  	Name string `json:"name,omitempty"`
  3297  	// Ns: Namespace for the binding.
  3298  	Ns string `json:"ns,omitempty"`
  3299  	// Role: The Role or ClusterRole referenced by the binding.
  3300  	Role *Role `json:"role,omitempty"`
  3301  	// Subjects: Represents one or more subjects that are bound to the role. Not
  3302  	// always available for PATCH requests.
  3303  	Subjects []*Subject `json:"subjects,omitempty"`
  3304  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  3305  	// include in API requests. By default, fields with empty or default values are
  3306  	// omitted from API requests. See
  3307  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3308  	// details.
  3309  	ForceSendFields []string `json:"-"`
  3310  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  3311  	// with the JSON null value. By default, fields with empty values are omitted
  3312  	// from API requests. See
  3313  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3314  	NullFields []string `json:"-"`
  3315  }
  3316  
  3317  func (s *GoogleCloudSecuritycenterV1Binding) MarshalJSON() ([]byte, error) {
  3318  	type NoMethod GoogleCloudSecuritycenterV1Binding
  3319  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3320  }
  3321  
  3322  // GoogleCloudSecuritycenterV1BulkMuteFindingsResponse: The response to a
  3323  // BulkMute request. Contains the LRO information.
  3324  type GoogleCloudSecuritycenterV1BulkMuteFindingsResponse struct {
  3325  }
  3326  
  3327  // GoogleCloudSecuritycenterV1CustomConfig: Defines the properties in a custom
  3328  // module configuration for Security Health Analytics. Use the custom module
  3329  // configuration to create custom detectors that generate custom findings for
  3330  // resources that you specify.
  3331  type GoogleCloudSecuritycenterV1CustomConfig struct {
  3332  	// CustomOutput: Custom output properties.
  3333  	CustomOutput *GoogleCloudSecuritycenterV1CustomOutputSpec `json:"customOutput,omitempty"`
  3334  	// Description: Text that describes the vulnerability or misconfiguration that
  3335  	// the custom module detects. This explanation is returned with each finding
  3336  	// instance to help investigators understand the detected issue. The text must
  3337  	// be enclosed in quotation marks.
  3338  	Description string `json:"description,omitempty"`
  3339  	// Predicate: The CEL expression to evaluate to produce findings. When the
  3340  	// expression evaluates to true against a resource, a finding is generated.
  3341  	Predicate *Expr `json:"predicate,omitempty"`
  3342  	// Recommendation: An explanation of the recommended steps that security teams
  3343  	// can take to resolve the detected issue. This explanation is returned with
  3344  	// each finding generated by this module in the `nextSteps` property of the
  3345  	// finding JSON.
  3346  	Recommendation string `json:"recommendation,omitempty"`
  3347  	// ResourceSelector: The resource types that the custom module operates on.
  3348  	// Each custom module can specify up to 5 resource types.
  3349  	ResourceSelector *GoogleCloudSecuritycenterV1ResourceSelector `json:"resourceSelector,omitempty"`
  3350  	// Severity: The severity to assign to findings generated by the module.
  3351  	//
  3352  	// Possible values:
  3353  	//   "SEVERITY_UNSPECIFIED" - Unspecified severity.
  3354  	//   "CRITICAL" - Critical severity.
  3355  	//   "HIGH" - High severity.
  3356  	//   "MEDIUM" - Medium severity.
  3357  	//   "LOW" - Low severity.
  3358  	Severity string `json:"severity,omitempty"`
  3359  	// ForceSendFields is a list of field names (e.g. "CustomOutput") to
  3360  	// unconditionally include in API requests. By default, fields with empty or
  3361  	// default values are omitted from API requests. See
  3362  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3363  	// details.
  3364  	ForceSendFields []string `json:"-"`
  3365  	// NullFields is a list of field names (e.g. "CustomOutput") to include in API
  3366  	// requests with the JSON null value. By default, fields with empty values are
  3367  	// omitted from API requests. See
  3368  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3369  	NullFields []string `json:"-"`
  3370  }
  3371  
  3372  func (s *GoogleCloudSecuritycenterV1CustomConfig) MarshalJSON() ([]byte, error) {
  3373  	type NoMethod GoogleCloudSecuritycenterV1CustomConfig
  3374  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3375  }
  3376  
  3377  // GoogleCloudSecuritycenterV1CustomOutputSpec: A set of optional name-value
  3378  // pairs that define custom source properties to return with each finding that
  3379  // is generated by the custom module. The custom source properties that are
  3380  // defined here are included in the finding JSON under `sourceProperties`.
  3381  type GoogleCloudSecuritycenterV1CustomOutputSpec struct {
  3382  	// Properties: A list of custom output properties to add to the finding.
  3383  	Properties []*GoogleCloudSecuritycenterV1Property `json:"properties,omitempty"`
  3384  	// ForceSendFields is a list of field names (e.g. "Properties") to
  3385  	// unconditionally include in API requests. By default, fields with empty or
  3386  	// default values are omitted from API requests. See
  3387  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3388  	// details.
  3389  	ForceSendFields []string `json:"-"`
  3390  	// NullFields is a list of field names (e.g. "Properties") to include in API
  3391  	// requests with the JSON null value. By default, fields with empty values are
  3392  	// omitted from API requests. See
  3393  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3394  	NullFields []string `json:"-"`
  3395  }
  3396  
  3397  func (s *GoogleCloudSecuritycenterV1CustomOutputSpec) MarshalJSON() ([]byte, error) {
  3398  	type NoMethod GoogleCloudSecuritycenterV1CustomOutputSpec
  3399  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3400  }
  3401  
  3402  // GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule: An
  3403  // EffectiveSecurityHealthAnalyticsCustomModule is the representation of a
  3404  // Security Health Analytics custom module at a specified level of the resource
  3405  // hierarchy: organization, folder, or project. If a custom module is inherited
  3406  // from a parent organization or folder, the value of the `enablementState`
  3407  // property in EffectiveSecurityHealthAnalyticsCustomModule is set to the value
  3408  // that is effective in the parent, instead of `INHERITED`. For example, if the
  3409  // module is enabled in a parent organization or folder, the effective
  3410  // enablement_state for the module in all child folders or projects is also
  3411  // `enabled`. EffectiveSecurityHealthAnalyticsCustomModule is read-only.
  3412  type GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule struct {
  3413  	// CustomConfig: Output only. The user-specified configuration for the module.
  3414  	CustomConfig *GoogleCloudSecuritycenterV1CustomConfig `json:"customConfig,omitempty"`
  3415  	// DisplayName: Output only. The display name for the custom module. The name
  3416  	// must be between 1 and 128 characters, start with a lowercase letter, and
  3417  	// contain alphanumeric characters or underscores only.
  3418  	DisplayName string `json:"displayName,omitempty"`
  3419  	// EnablementState: Output only. The effective state of enablement for the
  3420  	// module at the given level of the hierarchy.
  3421  	//
  3422  	// Possible values:
  3423  	//   "ENABLEMENT_STATE_UNSPECIFIED" - Unspecified enablement state.
  3424  	//   "ENABLED" - The module is enabled at the given level.
  3425  	//   "DISABLED" - The module is disabled at the given level.
  3426  	EnablementState string `json:"enablementState,omitempty"`
  3427  	// Name: Output only. The resource name of the custom module. Its format is
  3428  	// "organizations/{organization}/securityHealthAnalyticsSettings/effectiveCustom
  3429  	// Modules/{customModule}", or
  3430  	// "folders/{folder}/securityHealthAnalyticsSettings/effectiveCustomModules/{cus
  3431  	// tomModule}", or
  3432  	// "projects/{project}/securityHealthAnalyticsSettings/effectiveCustomModules/{c
  3433  	// ustomModule}"
  3434  	Name string `json:"name,omitempty"`
  3435  
  3436  	// ServerResponse contains the HTTP response code and headers from the server.
  3437  	googleapi.ServerResponse `json:"-"`
  3438  	// ForceSendFields is a list of field names (e.g. "CustomConfig") to
  3439  	// unconditionally include in API requests. By default, fields with empty or
  3440  	// default values are omitted from API requests. See
  3441  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3442  	// details.
  3443  	ForceSendFields []string `json:"-"`
  3444  	// NullFields is a list of field names (e.g. "CustomConfig") to include in API
  3445  	// requests with the JSON null value. By default, fields with empty values are
  3446  	// omitted from API requests. See
  3447  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3448  	NullFields []string `json:"-"`
  3449  }
  3450  
  3451  func (s *GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule) MarshalJSON() ([]byte, error) {
  3452  	type NoMethod GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule
  3453  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3454  }
  3455  
  3456  // GoogleCloudSecuritycenterV1ExternalSystem: Representation of third party
  3457  // SIEM/SOAR fields within SCC.
  3458  type GoogleCloudSecuritycenterV1ExternalSystem struct {
  3459  	// Assignees: References primary/secondary etc assignees in the external
  3460  	// system.
  3461  	Assignees []string `json:"assignees,omitempty"`
  3462  	// CaseCloseTime: The time when the case was closed, as reported by the
  3463  	// external system.
  3464  	CaseCloseTime string `json:"caseCloseTime,omitempty"`
  3465  	// CaseCreateTime: The time when the case was created, as reported by the
  3466  	// external system.
  3467  	CaseCreateTime string `json:"caseCreateTime,omitempty"`
  3468  	// CasePriority: The priority of the finding's corresponding case in the
  3469  	// external system.
  3470  	CasePriority string `json:"casePriority,omitempty"`
  3471  	// CaseSla: The SLA of the finding's corresponding case in the external system.
  3472  	CaseSla string `json:"caseSla,omitempty"`
  3473  	// CaseUri: The link to the finding's corresponding case in the external
  3474  	// system.
  3475  	CaseUri string `json:"caseUri,omitempty"`
  3476  	// ExternalSystemUpdateTime: The time when the case was last updated, as
  3477  	// reported by the external system.
  3478  	ExternalSystemUpdateTime string `json:"externalSystemUpdateTime,omitempty"`
  3479  	// ExternalUid: The identifier that's used to track the finding's corresponding
  3480  	// case in the external system.
  3481  	ExternalUid string `json:"externalUid,omitempty"`
  3482  	// Name: Full resource name of the external system, for example:
  3483  	// "organizations/1234/sources/5678/findings/123456/externalSystems/jira",
  3484  	// "folders/1234/sources/5678/findings/123456/externalSystems/jira",
  3485  	// "projects/1234/sources/5678/findings/123456/externalSystems/jira"
  3486  	Name string `json:"name,omitempty"`
  3487  	// Status: The most recent status of the finding's corresponding case, as
  3488  	// reported by the external system.
  3489  	Status string `json:"status,omitempty"`
  3490  	// TicketInfo: Information about the ticket, if any, that is being used to
  3491  	// track the resolution of the issue that is identified by this finding.
  3492  	TicketInfo *TicketInfo `json:"ticketInfo,omitempty"`
  3493  
  3494  	// ServerResponse contains the HTTP response code and headers from the server.
  3495  	googleapi.ServerResponse `json:"-"`
  3496  	// ForceSendFields is a list of field names (e.g. "Assignees") to
  3497  	// unconditionally include in API requests. By default, fields with empty or
  3498  	// default values are omitted from API requests. See
  3499  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3500  	// details.
  3501  	ForceSendFields []string `json:"-"`
  3502  	// NullFields is a list of field names (e.g. "Assignees") to include in API
  3503  	// requests with the JSON null value. By default, fields with empty values are
  3504  	// omitted from API requests. See
  3505  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3506  	NullFields []string `json:"-"`
  3507  }
  3508  
  3509  func (s *GoogleCloudSecuritycenterV1ExternalSystem) MarshalJSON() ([]byte, error) {
  3510  	type NoMethod GoogleCloudSecuritycenterV1ExternalSystem
  3511  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3512  }
  3513  
  3514  // GoogleCloudSecuritycenterV1MuteConfig: A mute config is a Cloud SCC resource
  3515  // that contains the configuration to mute create/update events of findings.
  3516  type GoogleCloudSecuritycenterV1MuteConfig struct {
  3517  	// CreateTime: Output only. The time at which the mute config was created. This
  3518  	// field is set by the server and will be ignored if provided on config
  3519  	// creation.
  3520  	CreateTime string `json:"createTime,omitempty"`
  3521  	// Description: A description of the mute config.
  3522  	Description string `json:"description,omitempty"`
  3523  	// DisplayName: The human readable name to be displayed for the mute config.
  3524  	DisplayName string `json:"displayName,omitempty"`
  3525  	// Filter: Required. An expression that defines the filter to apply across
  3526  	// create/update events of findings. While creating a filter string, be mindful
  3527  	// of the scope in which the mute configuration is being created. E.g., If a
  3528  	// filter contains project = X but is created under the project = Y scope, it
  3529  	// might not match any findings. The following field and operator combinations
  3530  	// are supported: * severity: `=`, `:` * category: `=`, `:` * resource.name:
  3531  	// `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name:
  3532  	// `=`, `:` * resource.folders.resource_folder: `=`, `:` *
  3533  	// resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` *
  3534  	// resource.type: `=`, `:` * finding_class: `=`, `:` * indicator.ip_addresses:
  3535  	// `=`, `:` * indicator.domains: `=`, `:`
  3536  	Filter string `json:"filter,omitempty"`
  3537  	// MostRecentEditor: Output only. Email address of the user who last edited the
  3538  	// mute config. This field is set by the server and will be ignored if provided
  3539  	// on config creation or update.
  3540  	MostRecentEditor string `json:"mostRecentEditor,omitempty"`
  3541  	// Name: This field will be ignored if provided on config creation. Format
  3542  	// "organizations/{organization}/muteConfigs/{mute_config}"
  3543  	// "folders/{folder}/muteConfigs/{mute_config}"
  3544  	// "projects/{project}/muteConfigs/{mute_config}"
  3545  	// "organizations/{organization}/locations/global/muteConfigs/{mute_config}"
  3546  	// "folders/{folder}/locations/global/muteConfigs/{mute_config}"
  3547  	// "projects/{project}/locations/global/muteConfigs/{mute_config}"
  3548  	Name string `json:"name,omitempty"`
  3549  	// UpdateTime: Output only. The most recent time at which the mute config was
  3550  	// updated. This field is set by the server and will be ignored if provided on
  3551  	// config creation or update.
  3552  	UpdateTime string `json:"updateTime,omitempty"`
  3553  
  3554  	// ServerResponse contains the HTTP response code and headers from the server.
  3555  	googleapi.ServerResponse `json:"-"`
  3556  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  3557  	// unconditionally include in API requests. By default, fields with empty or
  3558  	// default values are omitted from API requests. See
  3559  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3560  	// details.
  3561  	ForceSendFields []string `json:"-"`
  3562  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  3563  	// requests with the JSON null value. By default, fields with empty values are
  3564  	// omitted from API requests. See
  3565  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3566  	NullFields []string `json:"-"`
  3567  }
  3568  
  3569  func (s *GoogleCloudSecuritycenterV1MuteConfig) MarshalJSON() ([]byte, error) {
  3570  	type NoMethod GoogleCloudSecuritycenterV1MuteConfig
  3571  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3572  }
  3573  
  3574  // GoogleCloudSecuritycenterV1NotificationMessage: Cloud SCC's Notification
  3575  type GoogleCloudSecuritycenterV1NotificationMessage struct {
  3576  	// Finding: If it's a Finding based notification config, this field will be
  3577  	// populated.
  3578  	Finding *Finding `json:"finding,omitempty"`
  3579  	// NotificationConfigName: Name of the notification config that generated
  3580  	// current notification.
  3581  	NotificationConfigName string `json:"notificationConfigName,omitempty"`
  3582  	// Resource: The Cloud resource tied to this notification's Finding.
  3583  	Resource *GoogleCloudSecuritycenterV1Resource `json:"resource,omitempty"`
  3584  	// ForceSendFields is a list of field names (e.g. "Finding") to unconditionally
  3585  	// include in API requests. By default, fields with empty or default values are
  3586  	// omitted from API requests. See
  3587  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3588  	// details.
  3589  	ForceSendFields []string `json:"-"`
  3590  	// NullFields is a list of field names (e.g. "Finding") to include in API
  3591  	// requests with the JSON null value. By default, fields with empty values are
  3592  	// omitted from API requests. See
  3593  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3594  	NullFields []string `json:"-"`
  3595  }
  3596  
  3597  func (s *GoogleCloudSecuritycenterV1NotificationMessage) MarshalJSON() ([]byte, error) {
  3598  	type NoMethod GoogleCloudSecuritycenterV1NotificationMessage
  3599  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3600  }
  3601  
  3602  // GoogleCloudSecuritycenterV1Property: An individual name-value pair that
  3603  // defines a custom source property.
  3604  type GoogleCloudSecuritycenterV1Property struct {
  3605  	// Name: Name of the property for the custom output.
  3606  	Name string `json:"name,omitempty"`
  3607  	// ValueExpression: The CEL expression for the custom output. A resource
  3608  	// property can be specified to return the value of the property or a text
  3609  	// string enclosed in quotation marks.
  3610  	ValueExpression *Expr `json:"valueExpression,omitempty"`
  3611  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  3612  	// include in API requests. By default, fields with empty or default values are
  3613  	// omitted from API requests. See
  3614  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3615  	// details.
  3616  	ForceSendFields []string `json:"-"`
  3617  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  3618  	// with the JSON null value. By default, fields with empty values are omitted
  3619  	// from API requests. See
  3620  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3621  	NullFields []string `json:"-"`
  3622  }
  3623  
  3624  func (s *GoogleCloudSecuritycenterV1Property) MarshalJSON() ([]byte, error) {
  3625  	type NoMethod GoogleCloudSecuritycenterV1Property
  3626  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3627  }
  3628  
  3629  // GoogleCloudSecuritycenterV1Resource: Information related to the Google Cloud
  3630  // resource.
  3631  type GoogleCloudSecuritycenterV1Resource struct {
  3632  	// AwsMetadata: The AWS metadata associated with the finding.
  3633  	AwsMetadata *AwsMetadata `json:"awsMetadata,omitempty"`
  3634  	// CloudProvider: Indicates which cloud provider the resource resides in.
  3635  	//
  3636  	// Possible values:
  3637  	//   "CLOUD_PROVIDER_UNSPECIFIED" - The cloud provider is unspecified.
  3638  	//   "GOOGLE_CLOUD_PLATFORM" - The cloud provider is Google Cloud Platform.
  3639  	//   "AMAZON_WEB_SERVICES" - The cloud provider is Amazon Web Services.
  3640  	//   "MICROSOFT_AZURE" - The cloud provider is Microsoft Azure.
  3641  	CloudProvider string `json:"cloudProvider,omitempty"`
  3642  	// DisplayName: The human readable name of the resource.
  3643  	DisplayName string `json:"displayName,omitempty"`
  3644  	// Folders: Output only. Contains a Folder message for each folder in the
  3645  	// assets ancestry. The first folder is the deepest nested folder, and the last
  3646  	// folder is the folder directly under the Organization.
  3647  	Folders []*Folder `json:"folders,omitempty"`
  3648  	// Location: The region or location of the service (if applicable).
  3649  	Location string `json:"location,omitempty"`
  3650  	// Name: The full resource name of the resource. See:
  3651  	// https://cloud.google.com/apis/design/resource_names#full_resource_name
  3652  	Name string `json:"name,omitempty"`
  3653  	// Organization: Indicates which organization or tenant in the cloud provider
  3654  	// the finding applies to.
  3655  	Organization string `json:"organization,omitempty"`
  3656  	// Parent: The full resource name of resource's parent.
  3657  	Parent string `json:"parent,omitempty"`
  3658  	// ParentDisplayName: The human readable name of resource's parent.
  3659  	ParentDisplayName string `json:"parentDisplayName,omitempty"`
  3660  	// Project: The full resource name of project that the resource belongs to.
  3661  	Project string `json:"project,omitempty"`
  3662  	// ProjectDisplayName: The project ID that the resource belongs to.
  3663  	ProjectDisplayName string `json:"projectDisplayName,omitempty"`
  3664  	// ResourcePath: Provides the path to the resource within the resource
  3665  	// hierarchy.
  3666  	ResourcePath *ResourcePath `json:"resourcePath,omitempty"`
  3667  	// ResourcePathString: A string representation of the resource path. For Google
  3668  	// Cloud, it has the format of
  3669  	// organizations/{organization_id}/folders/{folder_id}/folders/{folder_id}/proje
  3670  	// cts/{project_id} where there can be any number of folders. For AWS, it has
  3671  	// the format of
  3672  	// org/{organization_id}/ou/{organizational_unit_id}/ou/{organizational_unit_id}
  3673  	// /account/{account_id} where there can be any number of organizational units.
  3674  	// For Azure, it has the format of
  3675  	// mg/{management_group_id}/mg/{management_group_id}/subscription/{subscription_
  3676  	// id}/rg/{resource_group_name} where there can be any number of management
  3677  	// groups.
  3678  	ResourcePathString string `json:"resourcePathString,omitempty"`
  3679  	// Service: The parent service or product from which the resource is provided,
  3680  	// for example, GKE or SNS.
  3681  	Service string `json:"service,omitempty"`
  3682  	// Type: The full resource type of the resource.
  3683  	Type string `json:"type,omitempty"`
  3684  	// ForceSendFields is a list of field names (e.g. "AwsMetadata") to
  3685  	// unconditionally include in API requests. By default, fields with empty or
  3686  	// default values are omitted from API requests. See
  3687  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3688  	// details.
  3689  	ForceSendFields []string `json:"-"`
  3690  	// NullFields is a list of field names (e.g. "AwsMetadata") to include in API
  3691  	// requests with the JSON null value. By default, fields with empty values are
  3692  	// omitted from API requests. See
  3693  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3694  	NullFields []string `json:"-"`
  3695  }
  3696  
  3697  func (s *GoogleCloudSecuritycenterV1Resource) MarshalJSON() ([]byte, error) {
  3698  	type NoMethod GoogleCloudSecuritycenterV1Resource
  3699  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3700  }
  3701  
  3702  // GoogleCloudSecuritycenterV1ResourceSelector: Resource for selecting resource
  3703  // type.
  3704  type GoogleCloudSecuritycenterV1ResourceSelector struct {
  3705  	// ResourceTypes: The resource types to run the detector on.
  3706  	ResourceTypes []string `json:"resourceTypes,omitempty"`
  3707  	// ForceSendFields is a list of field names (e.g. "ResourceTypes") to
  3708  	// unconditionally include in API requests. By default, fields with empty or
  3709  	// default values are omitted from API requests. See
  3710  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3711  	// details.
  3712  	ForceSendFields []string `json:"-"`
  3713  	// NullFields is a list of field names (e.g. "ResourceTypes") to include in API
  3714  	// requests with the JSON null value. By default, fields with empty values are
  3715  	// omitted from API requests. See
  3716  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3717  	NullFields []string `json:"-"`
  3718  }
  3719  
  3720  func (s *GoogleCloudSecuritycenterV1ResourceSelector) MarshalJSON() ([]byte, error) {
  3721  	type NoMethod GoogleCloudSecuritycenterV1ResourceSelector
  3722  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3723  }
  3724  
  3725  // GoogleCloudSecuritycenterV1ResourceValueConfig: A resource value config
  3726  // (RVC) is a mapping configuration of user's resources to resource values.
  3727  // Used in Attack path simulations.
  3728  type GoogleCloudSecuritycenterV1ResourceValueConfig struct {
  3729  	// CloudProvider: Cloud provider this configuration applies to
  3730  	//
  3731  	// Possible values:
  3732  	//   "CLOUD_PROVIDER_UNSPECIFIED" - The cloud provider is unspecified.
  3733  	//   "GOOGLE_CLOUD_PLATFORM" - The cloud provider is Google Cloud Platform.
  3734  	//   "AMAZON_WEB_SERVICES" - The cloud provider is Amazon Web Services.
  3735  	//   "MICROSOFT_AZURE" - The cloud provider is Microsoft Azure.
  3736  	CloudProvider string `json:"cloudProvider,omitempty"`
  3737  	// CreateTime: Output only. Timestamp this resource value config was created.
  3738  	CreateTime string `json:"createTime,omitempty"`
  3739  	// Description: Description of the resource value config.
  3740  	Description string `json:"description,omitempty"`
  3741  	// Name: Name for the resource value config
  3742  	Name string `json:"name,omitempty"`
  3743  	// ResourceLabelsSelector: List of resource labels to search for, evaluated
  3744  	// with AND. E.g. "resource_labels_selector": {"key": "value", "env": "prod"}
  3745  	// will match resources with labels "key": "value" AND "env": "prod"
  3746  	// https://cloud.google.com/resource-manager/docs/creating-managing-labels
  3747  	ResourceLabelsSelector map[string]string `json:"resourceLabelsSelector,omitempty"`
  3748  	// ResourceType: Apply resource_value only to resources that match
  3749  	// resource_type. resource_type will be checked with "AND" of other resources.
  3750  	// E.g. "storage.googleapis.com/Bucket" with resource_value "HIGH" will apply
  3751  	// "HIGH" value only to "storage.googleapis.com/Bucket" resources.
  3752  	ResourceType string `json:"resourceType,omitempty"`
  3753  	// ResourceValue: Required. Resource value level this expression represents
  3754  	//
  3755  	// Possible values:
  3756  	//   "RESOURCE_VALUE_UNSPECIFIED" - Unspecific value
  3757  	//   "HIGH" - High resource value
  3758  	//   "MEDIUM" - Medium resource value
  3759  	//   "LOW" - Low resource value
  3760  	//   "NONE" - No resource value, e.g. ignore these resources
  3761  	ResourceValue string `json:"resourceValue,omitempty"`
  3762  	// Scope: Project or folder to scope this config to. For example, "project/456"
  3763  	// would apply this config only to resources in "project/456" scope will be
  3764  	// checked with "AND" of other resources.
  3765  	Scope string `json:"scope,omitempty"`
  3766  	// SensitiveDataProtectionMapping: A mapping of the sensitivity on Sensitive
  3767  	// Data Protection finding to resource values. This mapping can only be used in
  3768  	// combination with a resource_type that is related to BigQuery, e.g.
  3769  	// "bigquery.googleapis.com/Dataset".
  3770  	SensitiveDataProtectionMapping *GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping `json:"sensitiveDataProtectionMapping,omitempty"`
  3771  	// TagValues: Required. Tag values combined with AND to check against. Values
  3772  	// in the form "tagValues/123" E.g. [ "tagValues/123", "tagValues/456",
  3773  	// "tagValues/789" ]
  3774  	// https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing
  3775  	TagValues []string `json:"tagValues,omitempty"`
  3776  	// UpdateTime: Output only. Timestamp this resource value config was last
  3777  	// updated.
  3778  	UpdateTime string `json:"updateTime,omitempty"`
  3779  
  3780  	// ServerResponse contains the HTTP response code and headers from the server.
  3781  	googleapi.ServerResponse `json:"-"`
  3782  	// ForceSendFields is a list of field names (e.g. "CloudProvider") to
  3783  	// unconditionally include in API requests. By default, fields with empty or
  3784  	// default values are omitted from API requests. See
  3785  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3786  	// details.
  3787  	ForceSendFields []string `json:"-"`
  3788  	// NullFields is a list of field names (e.g. "CloudProvider") to include in API
  3789  	// requests with the JSON null value. By default, fields with empty values are
  3790  	// omitted from API requests. See
  3791  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3792  	NullFields []string `json:"-"`
  3793  }
  3794  
  3795  func (s *GoogleCloudSecuritycenterV1ResourceValueConfig) MarshalJSON() ([]byte, error) {
  3796  	type NoMethod GoogleCloudSecuritycenterV1ResourceValueConfig
  3797  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3798  }
  3799  
  3800  // GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse: Response of asset
  3801  // discovery run
  3802  type GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse struct {
  3803  	// Duration: The duration between asset discovery run start and end
  3804  	Duration string `json:"duration,omitempty"`
  3805  	// State: The state of an asset discovery run.
  3806  	//
  3807  	// Possible values:
  3808  	//   "STATE_UNSPECIFIED" - Asset discovery run state was unspecified.
  3809  	//   "COMPLETED" - Asset discovery run completed successfully.
  3810  	//   "SUPERSEDED" - Asset discovery run was cancelled with tasks still pending,
  3811  	// as another run for the same organization was started with a higher priority.
  3812  	//   "TERMINATED" - Asset discovery run was killed and terminated.
  3813  	State string `json:"state,omitempty"`
  3814  	// ForceSendFields is a list of field names (e.g. "Duration") to
  3815  	// unconditionally include in API requests. By default, fields with empty or
  3816  	// default values are omitted from API requests. See
  3817  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3818  	// details.
  3819  	ForceSendFields []string `json:"-"`
  3820  	// NullFields is a list of field names (e.g. "Duration") to include in API
  3821  	// requests with the JSON null value. By default, fields with empty values are
  3822  	// omitted from API requests. See
  3823  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3824  	NullFields []string `json:"-"`
  3825  }
  3826  
  3827  func (s *GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse) MarshalJSON() ([]byte, error) {
  3828  	type NoMethod GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse
  3829  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3830  }
  3831  
  3832  // GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule: Represents
  3833  // an instance of a Security Health Analytics custom module, including its full
  3834  // module name, display name, enablement state, and last updated time. You can
  3835  // create a custom module at the organization, folder, or project level. Custom
  3836  // modules that you create at the organization or folder level are inherited by
  3837  // the child folders and projects.
  3838  type GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule struct {
  3839  	// AncestorModule: Output only. If empty, indicates that the custom module was
  3840  	// created in the organization, folder, or project in which you are viewing the
  3841  	// custom module. Otherwise, `ancestor_module` specifies the organization or
  3842  	// folder from which the custom module is inherited.
  3843  	AncestorModule string `json:"ancestorModule,omitempty"`
  3844  	// CustomConfig: The user specified custom configuration for the module.
  3845  	CustomConfig *GoogleCloudSecuritycenterV1CustomConfig `json:"customConfig,omitempty"`
  3846  	// DisplayName: The display name of the Security Health Analytics custom
  3847  	// module. This display name becomes the finding category for all findings that
  3848  	// are returned by this custom module. The display name must be between 1 and
  3849  	// 128 characters, start with a lowercase letter, and contain alphanumeric
  3850  	// characters or underscores only.
  3851  	DisplayName string `json:"displayName,omitempty"`
  3852  	// EnablementState: The enablement state of the custom module.
  3853  	//
  3854  	// Possible values:
  3855  	//   "ENABLEMENT_STATE_UNSPECIFIED" - Unspecified enablement state.
  3856  	//   "ENABLED" - The module is enabled at the given CRM resource.
  3857  	//   "DISABLED" - The module is disabled at the given CRM resource.
  3858  	//   "INHERITED" - State is inherited from an ancestor module. The module will
  3859  	// either be effectively ENABLED or DISABLED based on its closest non-inherited
  3860  	// ancestor module in the CRM hierarchy.
  3861  	EnablementState string `json:"enablementState,omitempty"`
  3862  	// LastEditor: Output only. The editor that last updated the custom module.
  3863  	LastEditor string `json:"lastEditor,omitempty"`
  3864  	// Name: Immutable. The resource name of the custom module. Its format is
  3865  	// "organizations/{organization}/securityHealthAnalyticsSettings/customModules/{
  3866  	// customModule}", or
  3867  	// "folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModule
  3868  	// }", or
  3869  	// "projects/{project}/securityHealthAnalyticsSettings/customModules/{customModu
  3870  	// le}" The id {customModule} is server-generated and is not user settable. It
  3871  	// will be a numeric id containing 1-20 digits.
  3872  	Name string `json:"name,omitempty"`
  3873  	// UpdateTime: Output only. The time at which the custom module was last
  3874  	// updated.
  3875  	UpdateTime string `json:"updateTime,omitempty"`
  3876  
  3877  	// ServerResponse contains the HTTP response code and headers from the server.
  3878  	googleapi.ServerResponse `json:"-"`
  3879  	// ForceSendFields is a list of field names (e.g. "AncestorModule") to
  3880  	// unconditionally include in API requests. By default, fields with empty or
  3881  	// default values are omitted from API requests. See
  3882  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3883  	// details.
  3884  	ForceSendFields []string `json:"-"`
  3885  	// NullFields is a list of field names (e.g. "AncestorModule") to include in
  3886  	// API requests with the JSON null value. By default, fields with empty values
  3887  	// are omitted from API requests. See
  3888  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3889  	NullFields []string `json:"-"`
  3890  }
  3891  
  3892  func (s *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule) MarshalJSON() ([]byte, error) {
  3893  	type NoMethod GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule
  3894  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3895  }
  3896  
  3897  // GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping: Resource value
  3898  // mapping for Sensitive Data Protection findings. If any of these mappings
  3899  // have a resource value that is not unspecified, the resource_value field will
  3900  // be ignored when reading this configuration.
  3901  type GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping struct {
  3902  	// HighSensitivityMapping: Resource value mapping for high-sensitivity
  3903  	// Sensitive Data Protection findings
  3904  	//
  3905  	// Possible values:
  3906  	//   "RESOURCE_VALUE_UNSPECIFIED" - Unspecific value
  3907  	//   "HIGH" - High resource value
  3908  	//   "MEDIUM" - Medium resource value
  3909  	//   "LOW" - Low resource value
  3910  	//   "NONE" - No resource value, e.g. ignore these resources
  3911  	HighSensitivityMapping string `json:"highSensitivityMapping,omitempty"`
  3912  	// MediumSensitivityMapping: Resource value mapping for medium-sensitivity
  3913  	// Sensitive Data Protection findings
  3914  	//
  3915  	// Possible values:
  3916  	//   "RESOURCE_VALUE_UNSPECIFIED" - Unspecific value
  3917  	//   "HIGH" - High resource value
  3918  	//   "MEDIUM" - Medium resource value
  3919  	//   "LOW" - Low resource value
  3920  	//   "NONE" - No resource value, e.g. ignore these resources
  3921  	MediumSensitivityMapping string `json:"mediumSensitivityMapping,omitempty"`
  3922  	// ForceSendFields is a list of field names (e.g. "HighSensitivityMapping") to
  3923  	// unconditionally include in API requests. By default, fields with empty or
  3924  	// default values are omitted from API requests. See
  3925  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3926  	// details.
  3927  	ForceSendFields []string `json:"-"`
  3928  	// NullFields is a list of field names (e.g. "HighSensitivityMapping") to
  3929  	// include in API requests with the JSON null value. By default, fields with
  3930  	// empty values are omitted from API requests. See
  3931  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3932  	NullFields []string `json:"-"`
  3933  }
  3934  
  3935  func (s *GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping) MarshalJSON() ([]byte, error) {
  3936  	type NoMethod GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping
  3937  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3938  }
  3939  
  3940  // GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse: Response of asset
  3941  // discovery run
  3942  type GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse struct {
  3943  	// Duration: The duration between asset discovery run start and end
  3944  	Duration string `json:"duration,omitempty"`
  3945  	// State: The state of an asset discovery run.
  3946  	//
  3947  	// Possible values:
  3948  	//   "STATE_UNSPECIFIED" - Asset discovery run state was unspecified.
  3949  	//   "COMPLETED" - Asset discovery run completed successfully.
  3950  	//   "SUPERSEDED" - Asset discovery run was cancelled with tasks still pending,
  3951  	// as another run for the same organization was started with a higher priority.
  3952  	//   "TERMINATED" - Asset discovery run was killed and terminated.
  3953  	State string `json:"state,omitempty"`
  3954  	// ForceSendFields is a list of field names (e.g. "Duration") to
  3955  	// unconditionally include in API requests. By default, fields with empty or
  3956  	// default values are omitted from API requests. See
  3957  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3958  	// details.
  3959  	ForceSendFields []string `json:"-"`
  3960  	// NullFields is a list of field names (e.g. "Duration") to include in API
  3961  	// requests with the JSON null value. By default, fields with empty values are
  3962  	// omitted from API requests. See
  3963  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3964  	NullFields []string `json:"-"`
  3965  }
  3966  
  3967  func (s *GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse) MarshalJSON() ([]byte, error) {
  3968  	type NoMethod GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse
  3969  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3970  }
  3971  
  3972  // GoogleCloudSecuritycenterV1p1beta1Finding: Security Command Center finding.
  3973  // A finding is a record of assessment data (security, risk, health or privacy)
  3974  // ingested into Security Command Center for presentation, notification,
  3975  // analysis, policy testing, and enforcement. For example, an XSS vulnerability
  3976  // in an App Engine application is a finding.
  3977  type GoogleCloudSecuritycenterV1p1beta1Finding struct {
  3978  	// CanonicalName: The canonical name of the finding. It's either
  3979  	// "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}",
  3980  	// "folders/{folder_id}/sources/{source_id}/findings/{finding_id}" or
  3981  	// "projects/{project_number}/sources/{source_id}/findings/{finding_id}",
  3982  	// depending on the closest CRM ancestor of the resource associated with the
  3983  	// finding.
  3984  	CanonicalName string `json:"canonicalName,omitempty"`
  3985  	// Category: The additional taxonomy group within findings from a given source.
  3986  	// This field is immutable after creation time. Example: "XSS_FLASH_INJECTION"
  3987  	Category string `json:"category,omitempty"`
  3988  	// CreateTime: The time at which the finding was created in Security Command
  3989  	// Center.
  3990  	CreateTime string `json:"createTime,omitempty"`
  3991  	// EventTime: The time at which the event took place, or when an update to the
  3992  	// finding occurred. For example, if the finding represents an open firewall it
  3993  	// would capture the time the detector believes the firewall became open. The
  3994  	// accuracy is determined by the detector. If the finding were to be resolved
  3995  	// afterward, this time would reflect when the finding was resolved. Must not
  3996  	// be set to a value greater than the current timestamp.
  3997  	EventTime string `json:"eventTime,omitempty"`
  3998  	// ExternalUri: The URI that, if available, points to a web page outside of
  3999  	// Security Command Center where additional information about the finding can
  4000  	// be found. This field is guaranteed to be either empty or a well formed URL.
  4001  	ExternalUri string `json:"externalUri,omitempty"`
  4002  	// Name: The relative resource name of this finding. See:
  4003  	// https://cloud.google.com/apis/design/resource_names#relative_resource_name
  4004  	// Example:
  4005  	// "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}"
  4006  	Name string `json:"name,omitempty"`
  4007  	// Parent: The relative resource name of the source the finding belongs to.
  4008  	// See:
  4009  	// https://cloud.google.com/apis/design/resource_names#relative_resource_name
  4010  	// This field is immutable after creation time. For example:
  4011  	// "organizations/{organization_id}/sources/{source_id}"
  4012  	Parent string `json:"parent,omitempty"`
  4013  	// ResourceName: For findings on Google Cloud resources, the full resource name
  4014  	// of the Google Cloud resource this finding is for. See:
  4015  	// https://cloud.google.com/apis/design/resource_names#full_resource_name When
  4016  	// the finding is for a non-Google Cloud resource, the resourceName can be a
  4017  	// customer or partner defined string. This field is immutable after creation
  4018  	// time.
  4019  	ResourceName string `json:"resourceName,omitempty"`
  4020  	// SecurityMarks: Output only. User specified security marks. These marks are
  4021  	// entirely managed by the user and come from the SecurityMarks resource that
  4022  	// belongs to the finding.
  4023  	SecurityMarks *GoogleCloudSecuritycenterV1p1beta1SecurityMarks `json:"securityMarks,omitempty"`
  4024  	// Severity: The severity of the finding. This field is managed by the source
  4025  	// that writes the finding.
  4026  	//
  4027  	// Possible values:
  4028  	//   "SEVERITY_UNSPECIFIED" - No severity specified. The default value.
  4029  	//   "CRITICAL" - Critical severity.
  4030  	//   "HIGH" - High severity.
  4031  	//   "MEDIUM" - Medium severity.
  4032  	//   "LOW" - Low severity.
  4033  	Severity string `json:"severity,omitempty"`
  4034  	// SourceProperties: Source specific properties. These properties are managed
  4035  	// by the source that writes the finding. The key names in the
  4036  	// source_properties map must be between 1 and 255 characters, and must start
  4037  	// with a letter and contain alphanumeric characters or underscores only.
  4038  	SourceProperties googleapi.RawMessage `json:"sourceProperties,omitempty"`
  4039  	// State: The state of the finding.
  4040  	//
  4041  	// Possible values:
  4042  	//   "STATE_UNSPECIFIED" - Unspecified state.
  4043  	//   "ACTIVE" - The finding requires attention and has not been addressed yet.
  4044  	//   "INACTIVE" - The finding has been fixed, triaged as a non-issue or
  4045  	// otherwise addressed and is no longer active.
  4046  	State string `json:"state,omitempty"`
  4047  	// ForceSendFields is a list of field names (e.g. "CanonicalName") to
  4048  	// unconditionally include in API requests. By default, fields with empty or
  4049  	// default values are omitted from API requests. See
  4050  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4051  	// details.
  4052  	ForceSendFields []string `json:"-"`
  4053  	// NullFields is a list of field names (e.g. "CanonicalName") to include in API
  4054  	// requests with the JSON null value. By default, fields with empty values are
  4055  	// omitted from API requests. See
  4056  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4057  	NullFields []string `json:"-"`
  4058  }
  4059  
  4060  func (s *GoogleCloudSecuritycenterV1p1beta1Finding) MarshalJSON() ([]byte, error) {
  4061  	type NoMethod GoogleCloudSecuritycenterV1p1beta1Finding
  4062  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4063  }
  4064  
  4065  // GoogleCloudSecuritycenterV1p1beta1Folder: Message that contains the resource
  4066  // name and display name of a folder resource.
  4067  type GoogleCloudSecuritycenterV1p1beta1Folder struct {
  4068  	// ResourceFolder: Full resource name of this folder. See:
  4069  	// https://cloud.google.com/apis/design/resource_names#full_resource_name
  4070  	ResourceFolder string `json:"resourceFolder,omitempty"`
  4071  	// ResourceFolderDisplayName: The user defined display name for this folder.
  4072  	ResourceFolderDisplayName string `json:"resourceFolderDisplayName,omitempty"`
  4073  	// ForceSendFields is a list of field names (e.g. "ResourceFolder") to
  4074  	// unconditionally include in API requests. By default, fields with empty or
  4075  	// default values are omitted from API requests. See
  4076  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4077  	// details.
  4078  	ForceSendFields []string `json:"-"`
  4079  	// NullFields is a list of field names (e.g. "ResourceFolder") to include in
  4080  	// API requests with the JSON null value. By default, fields with empty values
  4081  	// are omitted from API requests. See
  4082  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4083  	NullFields []string `json:"-"`
  4084  }
  4085  
  4086  func (s *GoogleCloudSecuritycenterV1p1beta1Folder) MarshalJSON() ([]byte, error) {
  4087  	type NoMethod GoogleCloudSecuritycenterV1p1beta1Folder
  4088  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4089  }
  4090  
  4091  // GoogleCloudSecuritycenterV1p1beta1NotificationMessage: Security Command
  4092  // Center's Notification
  4093  type GoogleCloudSecuritycenterV1p1beta1NotificationMessage struct {
  4094  	// Finding: If it's a Finding based notification config, this field will be
  4095  	// populated.
  4096  	Finding *GoogleCloudSecuritycenterV1p1beta1Finding `json:"finding,omitempty"`
  4097  	// NotificationConfigName: Name of the notification config that generated
  4098  	// current notification.
  4099  	NotificationConfigName string `json:"notificationConfigName,omitempty"`
  4100  	// Resource: The Cloud resource tied to the notification.
  4101  	Resource *GoogleCloudSecuritycenterV1p1beta1Resource `json:"resource,omitempty"`
  4102  	// ForceSendFields is a list of field names (e.g. "Finding") to unconditionally
  4103  	// include in API requests. By default, fields with empty or default values are
  4104  	// omitted from API requests. See
  4105  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4106  	// details.
  4107  	ForceSendFields []string `json:"-"`
  4108  	// NullFields is a list of field names (e.g. "Finding") to include in API
  4109  	// requests with the JSON null value. By default, fields with empty values are
  4110  	// omitted from API requests. See
  4111  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4112  	NullFields []string `json:"-"`
  4113  }
  4114  
  4115  func (s *GoogleCloudSecuritycenterV1p1beta1NotificationMessage) MarshalJSON() ([]byte, error) {
  4116  	type NoMethod GoogleCloudSecuritycenterV1p1beta1NotificationMessage
  4117  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4118  }
  4119  
  4120  // GoogleCloudSecuritycenterV1p1beta1Resource: Information related to the
  4121  // Google Cloud resource.
  4122  type GoogleCloudSecuritycenterV1p1beta1Resource struct {
  4123  	// Folders: Output only. Contains a Folder message for each folder in the
  4124  	// assets ancestry. The first folder is the deepest nested folder, and the last
  4125  	// folder is the folder directly under the Organization.
  4126  	Folders []*GoogleCloudSecuritycenterV1p1beta1Folder `json:"folders,omitempty"`
  4127  	// Name: The full resource name of the resource. See:
  4128  	// https://cloud.google.com/apis/design/resource_names#full_resource_name
  4129  	Name string `json:"name,omitempty"`
  4130  	// Parent: The full resource name of resource's parent.
  4131  	Parent string `json:"parent,omitempty"`
  4132  	// ParentDisplayName: The human readable name of resource's parent.
  4133  	ParentDisplayName string `json:"parentDisplayName,omitempty"`
  4134  	// Project: The full resource name of project that the resource belongs to.
  4135  	Project string `json:"project,omitempty"`
  4136  	// ProjectDisplayName: The project id that the resource belongs to.
  4137  	ProjectDisplayName string `json:"projectDisplayName,omitempty"`
  4138  	// ForceSendFields is a list of field names (e.g. "Folders") to unconditionally
  4139  	// include in API requests. By default, fields with empty or default values are
  4140  	// omitted from API requests. See
  4141  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4142  	// details.
  4143  	ForceSendFields []string `json:"-"`
  4144  	// NullFields is a list of field names (e.g. "Folders") to include in API
  4145  	// requests with the JSON null value. By default, fields with empty values are
  4146  	// omitted from API requests. See
  4147  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4148  	NullFields []string `json:"-"`
  4149  }
  4150  
  4151  func (s *GoogleCloudSecuritycenterV1p1beta1Resource) MarshalJSON() ([]byte, error) {
  4152  	type NoMethod GoogleCloudSecuritycenterV1p1beta1Resource
  4153  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4154  }
  4155  
  4156  // GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse: Response of
  4157  // asset discovery run
  4158  type GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse struct {
  4159  	// Duration: The duration between asset discovery run start and end
  4160  	Duration string `json:"duration,omitempty"`
  4161  	// State: The state of an asset discovery run.
  4162  	//
  4163  	// Possible values:
  4164  	//   "STATE_UNSPECIFIED" - Asset discovery run state was unspecified.
  4165  	//   "COMPLETED" - Asset discovery run completed successfully.
  4166  	//   "SUPERSEDED" - Asset discovery run was cancelled with tasks still pending,
  4167  	// as another run for the same organization was started with a higher priority.
  4168  	//   "TERMINATED" - Asset discovery run was killed and terminated.
  4169  	State string `json:"state,omitempty"`
  4170  	// ForceSendFields is a list of field names (e.g. "Duration") to
  4171  	// unconditionally include in API requests. By default, fields with empty or
  4172  	// default values are omitted from API requests. See
  4173  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4174  	// details.
  4175  	ForceSendFields []string `json:"-"`
  4176  	// NullFields is a list of field names (e.g. "Duration") to include in API
  4177  	// requests with the JSON null value. By default, fields with empty values are
  4178  	// omitted from API requests. See
  4179  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4180  	NullFields []string `json:"-"`
  4181  }
  4182  
  4183  func (s *GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse) MarshalJSON() ([]byte, error) {
  4184  	type NoMethod GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse
  4185  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4186  }
  4187  
  4188  // GoogleCloudSecuritycenterV1p1beta1SecurityMarks: User specified security
  4189  // marks that are attached to the parent Security Command Center resource.
  4190  // Security marks are scoped within a Security Command Center organization --
  4191  // they can be modified and viewed by all users who have proper permissions on
  4192  // the organization.
  4193  type GoogleCloudSecuritycenterV1p1beta1SecurityMarks struct {
  4194  	// CanonicalName: The canonical name of the marks. Examples:
  4195  	// "organizations/{organization_id}/assets/{asset_id}/securityMarks"
  4196  	// "folders/{folder_id}/assets/{asset_id}/securityMarks"
  4197  	// "projects/{project_number}/assets/{asset_id}/securityMarks"
  4198  	// "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/se
  4199  	// curityMarks"
  4200  	// "folders/{folder_id}/sources/{source_id}/findings/{finding_id}/securityMarks"
  4201  	//
  4202  	// "projects/{project_number}/sources/{source_id}/findings/{finding_id}/security
  4203  	// Marks"
  4204  	CanonicalName string `json:"canonicalName,omitempty"`
  4205  	// Marks: Mutable user specified security marks belonging to the parent
  4206  	// resource. Constraints are as follows: * Keys and values are treated as case
  4207  	// insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys
  4208  	// must be letters, numbers, underscores, or dashes * Values have leading and
  4209  	// trailing whitespace trimmed, remaining characters must be between 1 - 4096
  4210  	// characters (inclusive)
  4211  	Marks map[string]string `json:"marks,omitempty"`
  4212  	// Name: The relative resource name of the SecurityMarks. See:
  4213  	// https://cloud.google.com/apis/design/resource_names#relative_resource_name
  4214  	// Examples: "organizations/{organization_id}/assets/{asset_id}/securityMarks"
  4215  	// "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/se
  4216  	// curityMarks".
  4217  	Name string `json:"name,omitempty"`
  4218  	// ForceSendFields is a list of field names (e.g. "CanonicalName") to
  4219  	// unconditionally include in API requests. By default, fields with empty or
  4220  	// default values are omitted from API requests. See
  4221  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4222  	// details.
  4223  	ForceSendFields []string `json:"-"`
  4224  	// NullFields is a list of field names (e.g. "CanonicalName") to include in API
  4225  	// requests with the JSON null value. By default, fields with empty values are
  4226  	// omitted from API requests. See
  4227  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4228  	NullFields []string `json:"-"`
  4229  }
  4230  
  4231  func (s *GoogleCloudSecuritycenterV1p1beta1SecurityMarks) MarshalJSON() ([]byte, error) {
  4232  	type NoMethod GoogleCloudSecuritycenterV1p1beta1SecurityMarks
  4233  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4234  }
  4235  
  4236  // GoogleCloudSecuritycenterV2Access: Represents an access event.
  4237  type GoogleCloudSecuritycenterV2Access struct {
  4238  	// CallerIp: Caller's IP address, such as "1.1.1.1".
  4239  	CallerIp string `json:"callerIp,omitempty"`
  4240  	// CallerIpGeo: The caller IP's geolocation, which identifies where the call
  4241  	// came from.
  4242  	CallerIpGeo *GoogleCloudSecuritycenterV2Geolocation `json:"callerIpGeo,omitempty"`
  4243  	// MethodName: The method that the service account called, e.g. "SetIamPolicy".
  4244  	MethodName string `json:"methodName,omitempty"`
  4245  	// PrincipalEmail: Associated email, such as "foo@google.com". The email
  4246  	// address of the authenticated user or a service account acting on behalf of a
  4247  	// third party principal making the request. For third party identity callers,
  4248  	// the `principal_subject` field is populated instead of this field. For
  4249  	// privacy reasons, the principal email address is sometimes redacted. For more
  4250  	// information, see Caller identities in audit logs
  4251  	// (https://cloud.google.com/logging/docs/audit#user-id).
  4252  	PrincipalEmail string `json:"principalEmail,omitempty"`
  4253  	// PrincipalSubject: A string that represents the principal_subject that is
  4254  	// associated with the identity. Unlike `principal_email`, `principal_subject`
  4255  	// supports principals that aren't associated with email addresses, such as
  4256  	// third party principals. For most identities, the format is
  4257  	// `principal://iam.googleapis.com/{identity pool name}/subject/{subject}`.
  4258  	// Some GKE identities, such as GKE_WORKLOAD, FREEFORM, and GKE_HUB_WORKLOAD,
  4259  	// still use the legacy format `serviceAccount:{identity pool
  4260  	// name}[{subject}]`.
  4261  	PrincipalSubject string `json:"principalSubject,omitempty"`
  4262  	// ServiceAccountDelegationInfo: The identity delegation history of an
  4263  	// authenticated service account that made the request. The
  4264  	// `serviceAccountDelegationInfo[]` object contains information about the real
  4265  	// authorities that try to access Google Cloud resources by delegating on a
  4266  	// service account. When multiple authorities are present, they are guaranteed
  4267  	// to be sorted based on the original ordering of the identity delegation
  4268  	// events.
  4269  	ServiceAccountDelegationInfo []*GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo `json:"serviceAccountDelegationInfo,omitempty"`
  4270  	// ServiceAccountKeyName: The name of the service account key that was used to
  4271  	// create or exchange credentials when authenticating the service account that
  4272  	// made the request. This is a scheme-less URI full resource name. For example:
  4273  	// "//iam.googleapis.com/projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{k
  4274  	// ey}".
  4275  	ServiceAccountKeyName string `json:"serviceAccountKeyName,omitempty"`
  4276  	// ServiceName: This is the API service that the service account made a call
  4277  	// to, e.g. "iam.googleapis.com"
  4278  	ServiceName string `json:"serviceName,omitempty"`
  4279  	// UserAgent: The caller's user agent string associated with the finding.
  4280  	UserAgent string `json:"userAgent,omitempty"`
  4281  	// UserAgentFamily: Type of user agent associated with the finding. For
  4282  	// example, an operating system shell or an embedded or standalone application.
  4283  	UserAgentFamily string `json:"userAgentFamily,omitempty"`
  4284  	// UserName: A string that represents a username. The username provided depends
  4285  	// on the type of the finding and is likely not an IAM principal. For example,
  4286  	// this can be a system username if the finding is related to a virtual
  4287  	// machine, or it can be an application login username.
  4288  	UserName string `json:"userName,omitempty"`
  4289  	// ForceSendFields is a list of field names (e.g. "CallerIp") to
  4290  	// unconditionally include in API requests. By default, fields with empty or
  4291  	// default values are omitted from API requests. See
  4292  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4293  	// details.
  4294  	ForceSendFields []string `json:"-"`
  4295  	// NullFields is a list of field names (e.g. "CallerIp") to include in API
  4296  	// requests with the JSON null value. By default, fields with empty values are
  4297  	// omitted from API requests. See
  4298  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4299  	NullFields []string `json:"-"`
  4300  }
  4301  
  4302  func (s *GoogleCloudSecuritycenterV2Access) MarshalJSON() ([]byte, error) {
  4303  	type NoMethod GoogleCloudSecuritycenterV2Access
  4304  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4305  }
  4306  
  4307  // GoogleCloudSecuritycenterV2AccessReview: Conveys information about a
  4308  // Kubernetes access review (such as one returned by a `kubectl auth can-i`
  4309  // (https://kubernetes.io/docs/reference/access-authn-authz/authorization/#checking-api-access)
  4310  // command) that was involved in a finding.
  4311  type GoogleCloudSecuritycenterV2AccessReview struct {
  4312  	// Group: The API group of the resource. "*" means all.
  4313  	Group string `json:"group,omitempty"`
  4314  	// Name: The name of the resource being requested. Empty means all.
  4315  	Name string `json:"name,omitempty"`
  4316  	// Ns: Namespace of the action being requested. Currently, there is no
  4317  	// distinction between no namespace and all namespaces. Both are represented by
  4318  	// "" (empty).
  4319  	Ns string `json:"ns,omitempty"`
  4320  	// Resource: The optional resource type requested. "*" means all.
  4321  	Resource string `json:"resource,omitempty"`
  4322  	// Subresource: The optional subresource type.
  4323  	Subresource string `json:"subresource,omitempty"`
  4324  	// Verb: A Kubernetes resource API verb, like get, list, watch, create, update,
  4325  	// delete, proxy. "*" means all.
  4326  	Verb string `json:"verb,omitempty"`
  4327  	// Version: The API version of the resource. "*" means all.
  4328  	Version string `json:"version,omitempty"`
  4329  	// ForceSendFields is a list of field names (e.g. "Group") to unconditionally
  4330  	// include in API requests. By default, fields with empty or default values are
  4331  	// omitted from API requests. See
  4332  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4333  	// details.
  4334  	ForceSendFields []string `json:"-"`
  4335  	// NullFields is a list of field names (e.g. "Group") to include in API
  4336  	// requests with the JSON null value. By default, fields with empty values are
  4337  	// omitted from API requests. See
  4338  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4339  	NullFields []string `json:"-"`
  4340  }
  4341  
  4342  func (s *GoogleCloudSecuritycenterV2AccessReview) MarshalJSON() ([]byte, error) {
  4343  	type NoMethod GoogleCloudSecuritycenterV2AccessReview
  4344  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4345  }
  4346  
  4347  // GoogleCloudSecuritycenterV2AdaptiveProtection: Information about Google
  4348  // Cloud Armor Adaptive Protection
  4349  // (https://cloud.google.com/armor/docs/cloud-armor-overview#google-cloud-armor-adaptive-protection).
  4350  type GoogleCloudSecuritycenterV2AdaptiveProtection struct {
  4351  	// Confidence: A score of 0 means that there is low confidence that the
  4352  	// detected event is an actual attack. A score of 1 means that there is high
  4353  	// confidence that the detected event is an attack. See the Adaptive Protection
  4354  	// documentation
  4355  	// (https://cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-tuning)
  4356  	// for further explanation.
  4357  	Confidence float64 `json:"confidence,omitempty"`
  4358  	// ForceSendFields is a list of field names (e.g. "Confidence") to
  4359  	// unconditionally include in API requests. By default, fields with empty or
  4360  	// default values are omitted from API requests. See
  4361  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4362  	// details.
  4363  	ForceSendFields []string `json:"-"`
  4364  	// NullFields is a list of field names (e.g. "Confidence") to include in API
  4365  	// requests with the JSON null value. By default, fields with empty values are
  4366  	// omitted from API requests. See
  4367  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4368  	NullFields []string `json:"-"`
  4369  }
  4370  
  4371  func (s *GoogleCloudSecuritycenterV2AdaptiveProtection) MarshalJSON() ([]byte, error) {
  4372  	type NoMethod GoogleCloudSecuritycenterV2AdaptiveProtection
  4373  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4374  }
  4375  
  4376  func (s *GoogleCloudSecuritycenterV2AdaptiveProtection) UnmarshalJSON(data []byte) error {
  4377  	type NoMethod GoogleCloudSecuritycenterV2AdaptiveProtection
  4378  	var s1 struct {
  4379  		Confidence gensupport.JSONFloat64 `json:"confidence"`
  4380  		*NoMethod
  4381  	}
  4382  	s1.NoMethod = (*NoMethod)(s)
  4383  	if err := json.Unmarshal(data, &s1); err != nil {
  4384  		return err
  4385  	}
  4386  	s.Confidence = float64(s1.Confidence)
  4387  	return nil
  4388  }
  4389  
  4390  // GoogleCloudSecuritycenterV2Application: Represents an application associated
  4391  // with a finding.
  4392  type GoogleCloudSecuritycenterV2Application struct {
  4393  	// BaseUri: The base URI that identifies the network location of the
  4394  	// application in which the vulnerability was detected. For example,
  4395  	// `http://example.com`.
  4396  	BaseUri string `json:"baseUri,omitempty"`
  4397  	// FullUri: The full URI with payload that could be used to reproduce the
  4398  	// vulnerability. For example, `http://example.com?p=aMmYgI6H`.
  4399  	FullUri string `json:"fullUri,omitempty"`
  4400  	// ForceSendFields is a list of field names (e.g. "BaseUri") to unconditionally
  4401  	// include in API requests. By default, fields with empty or default values are
  4402  	// omitted from API requests. See
  4403  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4404  	// details.
  4405  	ForceSendFields []string `json:"-"`
  4406  	// NullFields is a list of field names (e.g. "BaseUri") to include in API
  4407  	// requests with the JSON null value. By default, fields with empty values are
  4408  	// omitted from API requests. See
  4409  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4410  	NullFields []string `json:"-"`
  4411  }
  4412  
  4413  func (s *GoogleCloudSecuritycenterV2Application) MarshalJSON() ([]byte, error) {
  4414  	type NoMethod GoogleCloudSecuritycenterV2Application
  4415  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4416  }
  4417  
  4418  // GoogleCloudSecuritycenterV2Attack: Information about DDoS attack volume and
  4419  // classification.
  4420  type GoogleCloudSecuritycenterV2Attack struct {
  4421  	// Classification: Type of attack, for example, 'SYN-flood', 'NTP-udp', or
  4422  	// 'CHARGEN-udp'.
  4423  	Classification string `json:"classification,omitempty"`
  4424  	// VolumeBps: Total BPS (bytes per second) volume of attack.
  4425  	VolumeBps int64 `json:"volumeBps,omitempty"`
  4426  	// VolumePps: Total PPS (packets per second) volume of attack.
  4427  	VolumePps int64 `json:"volumePps,omitempty"`
  4428  	// ForceSendFields is a list of field names (e.g. "Classification") to
  4429  	// unconditionally include in API requests. By default, fields with empty or
  4430  	// default values are omitted from API requests. See
  4431  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4432  	// details.
  4433  	ForceSendFields []string `json:"-"`
  4434  	// NullFields is a list of field names (e.g. "Classification") to include in
  4435  	// API requests with the JSON null value. By default, fields with empty values
  4436  	// are omitted from API requests. See
  4437  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4438  	NullFields []string `json:"-"`
  4439  }
  4440  
  4441  func (s *GoogleCloudSecuritycenterV2Attack) MarshalJSON() ([]byte, error) {
  4442  	type NoMethod GoogleCloudSecuritycenterV2Attack
  4443  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4444  }
  4445  
  4446  // GoogleCloudSecuritycenterV2AttackExposure: An attack exposure contains the
  4447  // results of an attack path simulation run.
  4448  type GoogleCloudSecuritycenterV2AttackExposure struct {
  4449  	// AttackExposureResult: The resource name of the attack path simulation result
  4450  	// that contains the details regarding this attack exposure score. Example:
  4451  	// organizations/123/simulations/456/attackExposureResults/789
  4452  	AttackExposureResult string `json:"attackExposureResult,omitempty"`
  4453  	// ExposedHighValueResourcesCount: The number of high value resources that are
  4454  	// exposed as a result of this finding.
  4455  	ExposedHighValueResourcesCount int64 `json:"exposedHighValueResourcesCount,omitempty"`
  4456  	// ExposedLowValueResourcesCount: The number of high value resources that are
  4457  	// exposed as a result of this finding.
  4458  	ExposedLowValueResourcesCount int64 `json:"exposedLowValueResourcesCount,omitempty"`
  4459  	// ExposedMediumValueResourcesCount: The number of medium value resources that
  4460  	// are exposed as a result of this finding.
  4461  	ExposedMediumValueResourcesCount int64 `json:"exposedMediumValueResourcesCount,omitempty"`
  4462  	// LatestCalculationTime: The most recent time the attack exposure was updated
  4463  	// on this finding.
  4464  	LatestCalculationTime string `json:"latestCalculationTime,omitempty"`
  4465  	// Score: A number between 0 (inclusive) and infinity that represents how
  4466  	// important this finding is to remediate. The higher the score, the more
  4467  	// important it is to remediate.
  4468  	Score float64 `json:"score,omitempty"`
  4469  	// State: Output only. What state this AttackExposure is in. This captures
  4470  	// whether or not an attack exposure has been calculated or not.
  4471  	//
  4472  	// Possible values:
  4473  	//   "STATE_UNSPECIFIED" - The state is not specified.
  4474  	//   "CALCULATED" - The attack exposure has been calculated.
  4475  	//   "NOT_CALCULATED" - The attack exposure has not been calculated.
  4476  	State string `json:"state,omitempty"`
  4477  	// ForceSendFields is a list of field names (e.g. "AttackExposureResult") to
  4478  	// unconditionally include in API requests. By default, fields with empty or
  4479  	// default values are omitted from API requests. See
  4480  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4481  	// details.
  4482  	ForceSendFields []string `json:"-"`
  4483  	// NullFields is a list of field names (e.g. "AttackExposureResult") to include
  4484  	// in API requests with the JSON null value. By default, fields with empty
  4485  	// values are omitted from API requests. See
  4486  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4487  	NullFields []string `json:"-"`
  4488  }
  4489  
  4490  func (s *GoogleCloudSecuritycenterV2AttackExposure) MarshalJSON() ([]byte, error) {
  4491  	type NoMethod GoogleCloudSecuritycenterV2AttackExposure
  4492  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4493  }
  4494  
  4495  func (s *GoogleCloudSecuritycenterV2AttackExposure) UnmarshalJSON(data []byte) error {
  4496  	type NoMethod GoogleCloudSecuritycenterV2AttackExposure
  4497  	var s1 struct {
  4498  		Score gensupport.JSONFloat64 `json:"score"`
  4499  		*NoMethod
  4500  	}
  4501  	s1.NoMethod = (*NoMethod)(s)
  4502  	if err := json.Unmarshal(data, &s1); err != nil {
  4503  		return err
  4504  	}
  4505  	s.Score = float64(s1.Score)
  4506  	return nil
  4507  }
  4508  
  4509  // GoogleCloudSecuritycenterV2AwsAccount: An AWS account that is a member of an
  4510  // organization.
  4511  type GoogleCloudSecuritycenterV2AwsAccount struct {
  4512  	// Id: The unique identifier (ID) of the account, containing exactly 12 digits.
  4513  	Id string `json:"id,omitempty"`
  4514  	// Name: The friendly name of this account.
  4515  	Name string `json:"name,omitempty"`
  4516  	// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
  4517  	// include in API requests. By default, fields with empty or default values are
  4518  	// omitted from API requests. See
  4519  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4520  	// details.
  4521  	ForceSendFields []string `json:"-"`
  4522  	// NullFields is a list of field names (e.g. "Id") to include in API requests
  4523  	// with the JSON null value. By default, fields with empty values are omitted
  4524  	// from API requests. See
  4525  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4526  	NullFields []string `json:"-"`
  4527  }
  4528  
  4529  func (s *GoogleCloudSecuritycenterV2AwsAccount) MarshalJSON() ([]byte, error) {
  4530  	type NoMethod GoogleCloudSecuritycenterV2AwsAccount
  4531  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4532  }
  4533  
  4534  // GoogleCloudSecuritycenterV2AwsMetadata: AWS metadata associated with the
  4535  // resource, only applicable if the finding's cloud provider is Amazon Web
  4536  // Services.
  4537  type GoogleCloudSecuritycenterV2AwsMetadata struct {
  4538  	// Account: The AWS account associated with the resource.
  4539  	Account *GoogleCloudSecuritycenterV2AwsAccount `json:"account,omitempty"`
  4540  	// Organization: The AWS organization associated with the resource.
  4541  	Organization *GoogleCloudSecuritycenterV2AwsOrganization `json:"organization,omitempty"`
  4542  	// OrganizationalUnits: A list of AWS organizational units associated with the
  4543  	// resource, ordered from lowest level (closest to the account) to highest
  4544  	// level.
  4545  	OrganizationalUnits []*GoogleCloudSecuritycenterV2AwsOrganizationalUnit `json:"organizationalUnits,omitempty"`
  4546  	// ForceSendFields is a list of field names (e.g. "Account") to unconditionally
  4547  	// include in API requests. By default, fields with empty or default values are
  4548  	// omitted from API requests. See
  4549  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4550  	// details.
  4551  	ForceSendFields []string `json:"-"`
  4552  	// NullFields is a list of field names (e.g. "Account") to include in API
  4553  	// requests with the JSON null value. By default, fields with empty values are
  4554  	// omitted from API requests. See
  4555  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4556  	NullFields []string `json:"-"`
  4557  }
  4558  
  4559  func (s *GoogleCloudSecuritycenterV2AwsMetadata) MarshalJSON() ([]byte, error) {
  4560  	type NoMethod GoogleCloudSecuritycenterV2AwsMetadata
  4561  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4562  }
  4563  
  4564  // GoogleCloudSecuritycenterV2AwsOrganization: An organization is a collection
  4565  // of accounts that are centrally managed together using consolidated billing,
  4566  // organized hierarchically with organizational units (OUs), and controlled
  4567  // with policies.
  4568  type GoogleCloudSecuritycenterV2AwsOrganization struct {
  4569  	// Id: The unique identifier (ID) for the organization. The regex pattern for
  4570  	// an organization ID string requires "o-" followed by from 10 to 32 lowercase
  4571  	// letters or digits.
  4572  	Id string `json:"id,omitempty"`
  4573  	// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
  4574  	// include in API requests. By default, fields with empty or default values are
  4575  	// omitted from API requests. See
  4576  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4577  	// details.
  4578  	ForceSendFields []string `json:"-"`
  4579  	// NullFields is a list of field names (e.g. "Id") to include in API requests
  4580  	// with the JSON null value. By default, fields with empty values are omitted
  4581  	// from API requests. See
  4582  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4583  	NullFields []string `json:"-"`
  4584  }
  4585  
  4586  func (s *GoogleCloudSecuritycenterV2AwsOrganization) MarshalJSON() ([]byte, error) {
  4587  	type NoMethod GoogleCloudSecuritycenterV2AwsOrganization
  4588  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4589  }
  4590  
  4591  // GoogleCloudSecuritycenterV2AwsOrganizationalUnit: An Organizational Unit
  4592  // (OU) is a container of AWS accounts within a root of an organization.
  4593  // Policies that are attached to an OU apply to all accounts contained in that
  4594  // OU and in any child OUs.
  4595  type GoogleCloudSecuritycenterV2AwsOrganizationalUnit struct {
  4596  	// Id: The unique identifier (ID) associated with this OU. The regex pattern
  4597  	// for an organizational unit ID string requires "ou-" followed by from 4 to 32
  4598  	// lowercase letters or digits (the ID of the root that contains the OU). This
  4599  	// string is followed by a second "-" dash and from 8 to 32 additional
  4600  	// lowercase letters or digits. For example, "ou-ab12-cd34ef56".
  4601  	Id string `json:"id,omitempty"`
  4602  	// Name: The friendly name of the OU.
  4603  	Name string `json:"name,omitempty"`
  4604  	// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
  4605  	// include in API requests. By default, fields with empty or default values are
  4606  	// omitted from API requests. See
  4607  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4608  	// details.
  4609  	ForceSendFields []string `json:"-"`
  4610  	// NullFields is a list of field names (e.g. "Id") to include in API requests
  4611  	// with the JSON null value. By default, fields with empty values are omitted
  4612  	// from API requests. See
  4613  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4614  	NullFields []string `json:"-"`
  4615  }
  4616  
  4617  func (s *GoogleCloudSecuritycenterV2AwsOrganizationalUnit) MarshalJSON() ([]byte, error) {
  4618  	type NoMethod GoogleCloudSecuritycenterV2AwsOrganizationalUnit
  4619  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4620  }
  4621  
  4622  // GoogleCloudSecuritycenterV2BackupDisasterRecovery: Information related to
  4623  // Google Cloud Backup and DR Service findings.
  4624  type GoogleCloudSecuritycenterV2BackupDisasterRecovery struct {
  4625  	// Appliance: The name of the Backup and DR appliance that captures, moves, and
  4626  	// manages the lifecycle of backup data. For example, `backup-server-57137`.
  4627  	Appliance string `json:"appliance,omitempty"`
  4628  	// Applications: The names of Backup and DR applications. An application is a
  4629  	// VM, database, or file system on a managed host monitored by a backup and
  4630  	// recovery appliance. For example, `centos7-01-vol00`, `centos7-01-vol01`,
  4631  	// `centos7-01-vol02`.
  4632  	Applications []string `json:"applications,omitempty"`
  4633  	// BackupCreateTime: The timestamp at which the Backup and DR backup was
  4634  	// created.
  4635  	BackupCreateTime string `json:"backupCreateTime,omitempty"`
  4636  	// BackupTemplate: The name of a Backup and DR template which comprises one or
  4637  	// more backup policies. See the Backup and DR documentation
  4638  	// (https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#temp)
  4639  	// for more information. For example, `snap-ov`.
  4640  	BackupTemplate string `json:"backupTemplate,omitempty"`
  4641  	// BackupType: The backup type of the Backup and DR image. For example,
  4642  	// `Snapshot`, `Remote Snapshot`, `OnVault`.
  4643  	BackupType string `json:"backupType,omitempty"`
  4644  	// Host: The name of a Backup and DR host, which is managed by the backup and
  4645  	// recovery appliance and known to the management console. The host can be of
  4646  	// type Generic (for example, Compute Engine, SQL Server, Oracle DB, SMB file
  4647  	// system, etc.), vCenter, or an ESX server. See the Backup and DR
  4648  	// documentation on hosts
  4649  	// (https://cloud.google.com/backup-disaster-recovery/docs/configuration/manage-hosts-and-their-applications)
  4650  	// for more information. For example, `centos7-01`.
  4651  	Host string `json:"host,omitempty"`
  4652  	// Policies: The names of Backup and DR policies that are associated with a
  4653  	// template and that define when to run a backup, how frequently to run a
  4654  	// backup, and how long to retain the backup image. For example, `onvaults`.
  4655  	Policies []string `json:"policies,omitempty"`
  4656  	// PolicyOptions: The names of Backup and DR advanced policy options of a
  4657  	// policy applying to an application. See the Backup and DR documentation on
  4658  	// policy options
  4659  	// (https://cloud.google.com/backup-disaster-recovery/docs/create-plan/policy-settings).
  4660  	// For example, `skipofflineappsincongrp, nounmap`.
  4661  	PolicyOptions []string `json:"policyOptions,omitempty"`
  4662  	// Profile: The name of the Backup and DR resource profile that specifies the
  4663  	// storage media for backups of application and VM data. See the Backup and DR
  4664  	// documentation on profiles
  4665  	// (https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#profile).
  4666  	// For example, `GCP`.
  4667  	Profile string `json:"profile,omitempty"`
  4668  	// StoragePool: The name of the Backup and DR storage pool that the backup and
  4669  	// recovery appliance is storing data in. The storage pool could be of type
  4670  	// Cloud, Primary, Snapshot, or OnVault. See the Backup and DR documentation on
  4671  	// storage pools
  4672  	// (https://cloud.google.com/backup-disaster-recovery/docs/concepts/storage-pools).
  4673  	// For example, `DiskPoolOne`.
  4674  	StoragePool string `json:"storagePool,omitempty"`
  4675  	// ForceSendFields is a list of field names (e.g. "Appliance") to
  4676  	// unconditionally include in API requests. By default, fields with empty or
  4677  	// default values are omitted from API requests. See
  4678  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4679  	// details.
  4680  	ForceSendFields []string `json:"-"`
  4681  	// NullFields is a list of field names (e.g. "Appliance") to include in API
  4682  	// requests with the JSON null value. By default, fields with empty values are
  4683  	// omitted from API requests. See
  4684  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4685  	NullFields []string `json:"-"`
  4686  }
  4687  
  4688  func (s *GoogleCloudSecuritycenterV2BackupDisasterRecovery) MarshalJSON() ([]byte, error) {
  4689  	type NoMethod GoogleCloudSecuritycenterV2BackupDisasterRecovery
  4690  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4691  }
  4692  
  4693  // GoogleCloudSecuritycenterV2BigQueryExport: Configures how to deliver
  4694  // Findings to BigQuery Instance.
  4695  type GoogleCloudSecuritycenterV2BigQueryExport struct {
  4696  	// CreateTime: Output only. The time at which the BigQuery export was created.
  4697  	// This field is set by the server and will be ignored if provided on export on
  4698  	// creation.
  4699  	CreateTime string `json:"createTime,omitempty"`
  4700  	// Dataset: The dataset to write findings' updates to. Its format is
  4701  	// "projects/[project_id]/datasets/[bigquery_dataset_id]". BigQuery Dataset
  4702  	// unique ID must contain only letters (a-z, A-Z), numbers (0-9), or
  4703  	// underscores (_).
  4704  	Dataset string `json:"dataset,omitempty"`
  4705  	// Description: The description of the export (max of 1024 characters).
  4706  	Description string `json:"description,omitempty"`
  4707  	// Filter: Expression that defines the filter to apply across create/update
  4708  	// events of findings. The expression is a list of zero or more restrictions
  4709  	// combined via logical operators `AND` and `OR`. Parentheses are supported,
  4710  	// and `OR` has higher precedence than `AND`. Restrictions have the form ` `
  4711  	// and may have a `-` character in front of them to indicate negation. The
  4712  	// fields map to those defined in the corresponding resource. The supported
  4713  	// operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer
  4714  	// values. * `:`, meaning substring matching, for strings. The supported value
  4715  	// types are: * string literals in quotes. * integer literals without quotes. *
  4716  	// boolean literals `true` and `false` without quotes.
  4717  	Filter string `json:"filter,omitempty"`
  4718  	// MostRecentEditor: Output only. Email address of the user who last edited the
  4719  	// BigQuery export. This field is set by the server and will be ignored if
  4720  	// provided on export creation or update.
  4721  	MostRecentEditor string `json:"mostRecentEditor,omitempty"`
  4722  	// Name: The relative resource name of this export. See:
  4723  	// https://cloud.google.com/apis/design/resource_names#relative_resource_name.
  4724  	// The following list shows some examples: +
  4725  	// `organizations/{organization_id}/locations/{location_id}/bigQueryExports/{exp
  4726  	// ort_id}` +
  4727  	// `folders/{folder_id}/locations/{location_id}/bigQueryExports/{export_id}` +
  4728  	// `projects/{project_id}/locations/{location_id}/bigQueryExports/{export_id}`
  4729  	// This field is provided in responses, and is ignored when provided in create
  4730  	// requests.
  4731  	Name string `json:"name,omitempty"`
  4732  	// Principal: Output only. The service account that needs permission to create
  4733  	// table and upload data to the BigQuery dataset.
  4734  	Principal string `json:"principal,omitempty"`
  4735  	// UpdateTime: Output only. The most recent time at which the BigQuery export
  4736  	// was updated. This field is set by the server and will be ignored if provided
  4737  	// on export creation or update.
  4738  	UpdateTime string `json:"updateTime,omitempty"`
  4739  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  4740  	// unconditionally include in API requests. By default, fields with empty or
  4741  	// default values are omitted from API requests. See
  4742  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4743  	// details.
  4744  	ForceSendFields []string `json:"-"`
  4745  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  4746  	// requests with the JSON null value. By default, fields with empty values are
  4747  	// omitted from API requests. See
  4748  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4749  	NullFields []string `json:"-"`
  4750  }
  4751  
  4752  func (s *GoogleCloudSecuritycenterV2BigQueryExport) MarshalJSON() ([]byte, error) {
  4753  	type NoMethod GoogleCloudSecuritycenterV2BigQueryExport
  4754  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4755  }
  4756  
  4757  // GoogleCloudSecuritycenterV2Binding: Represents a Kubernetes RoleBinding or
  4758  // ClusterRoleBinding.
  4759  type GoogleCloudSecuritycenterV2Binding struct {
  4760  	// Name: Name for the binding.
  4761  	Name string `json:"name,omitempty"`
  4762  	// Ns: Namespace for the binding.
  4763  	Ns string `json:"ns,omitempty"`
  4764  	// Role: The Role or ClusterRole referenced by the binding.
  4765  	Role *GoogleCloudSecuritycenterV2Role `json:"role,omitempty"`
  4766  	// Subjects: Represents one or more subjects that are bound to the role. Not
  4767  	// always available for PATCH requests.
  4768  	Subjects []*GoogleCloudSecuritycenterV2Subject `json:"subjects,omitempty"`
  4769  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  4770  	// include in API requests. By default, fields with empty or default values are
  4771  	// omitted from API requests. See
  4772  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4773  	// details.
  4774  	ForceSendFields []string `json:"-"`
  4775  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  4776  	// with the JSON null value. By default, fields with empty values are omitted
  4777  	// from API requests. See
  4778  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4779  	NullFields []string `json:"-"`
  4780  }
  4781  
  4782  func (s *GoogleCloudSecuritycenterV2Binding) MarshalJSON() ([]byte, error) {
  4783  	type NoMethod GoogleCloudSecuritycenterV2Binding
  4784  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4785  }
  4786  
  4787  // GoogleCloudSecuritycenterV2BulkMuteFindingsResponse: The response to a
  4788  // BulkMute request. Contains the LRO information.
  4789  type GoogleCloudSecuritycenterV2BulkMuteFindingsResponse struct {
  4790  }
  4791  
  4792  // GoogleCloudSecuritycenterV2CloudArmor: Fields related to Google Cloud Armor
  4793  // findings.
  4794  type GoogleCloudSecuritycenterV2CloudArmor struct {
  4795  	// AdaptiveProtection: Information about potential Layer 7 DDoS attacks
  4796  	// identified by Google Cloud Armor Adaptive Protection
  4797  	// (https://cloud.google.com/armor/docs/adaptive-protection-overview).
  4798  	AdaptiveProtection *GoogleCloudSecuritycenterV2AdaptiveProtection `json:"adaptiveProtection,omitempty"`
  4799  	// Attack: Information about DDoS attack volume and classification.
  4800  	Attack *GoogleCloudSecuritycenterV2Attack `json:"attack,omitempty"`
  4801  	// Duration: Duration of attack from the start until the current moment
  4802  	// (updated every 5 minutes).
  4803  	Duration string `json:"duration,omitempty"`
  4804  	// Requests: Information about incoming requests evaluated by Google Cloud
  4805  	// Armor security policies
  4806  	// (https://cloud.google.com/armor/docs/security-policy-overview).
  4807  	Requests *GoogleCloudSecuritycenterV2Requests `json:"requests,omitempty"`
  4808  	// SecurityPolicy: Information about the Google Cloud Armor security policy
  4809  	// (https://cloud.google.com/armor/docs/security-policy-overview) relevant to
  4810  	// the finding.
  4811  	SecurityPolicy *GoogleCloudSecuritycenterV2SecurityPolicy `json:"securityPolicy,omitempty"`
  4812  	// ThreatVector: Distinguish between volumetric & protocol DDoS attack and
  4813  	// application layer attacks. For example, "L3_4" for Layer 3 and Layer 4 DDoS
  4814  	// attacks, or "L_7" for Layer 7 DDoS attacks.
  4815  	ThreatVector string `json:"threatVector,omitempty"`
  4816  	// ForceSendFields is a list of field names (e.g. "AdaptiveProtection") to
  4817  	// unconditionally include in API requests. By default, fields with empty or
  4818  	// default values are omitted from API requests. See
  4819  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4820  	// details.
  4821  	ForceSendFields []string `json:"-"`
  4822  	// NullFields is a list of field names (e.g. "AdaptiveProtection") to include
  4823  	// in API requests with the JSON null value. By default, fields with empty
  4824  	// values are omitted from API requests. See
  4825  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4826  	NullFields []string `json:"-"`
  4827  }
  4828  
  4829  func (s *GoogleCloudSecuritycenterV2CloudArmor) MarshalJSON() ([]byte, error) {
  4830  	type NoMethod GoogleCloudSecuritycenterV2CloudArmor
  4831  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4832  }
  4833  
  4834  // GoogleCloudSecuritycenterV2CloudDlpDataProfile: The data profile
  4835  // (https://cloud.google.com/dlp/docs/data-profiles) associated with the
  4836  // finding.
  4837  type GoogleCloudSecuritycenterV2CloudDlpDataProfile struct {
  4838  	// DataProfile: Name of the data profile, for example,
  4839  	// `projects/123/locations/europe/tableProfiles/8383929`.
  4840  	DataProfile string `json:"dataProfile,omitempty"`
  4841  	// ParentType: The resource hierarchy level at which the data profile was
  4842  	// generated.
  4843  	//
  4844  	// Possible values:
  4845  	//   "PARENT_TYPE_UNSPECIFIED" - Unspecified parent type.
  4846  	//   "ORGANIZATION" - Organization-level configurations.
  4847  	//   "PROJECT" - Project-level configurations.
  4848  	ParentType string `json:"parentType,omitempty"`
  4849  	// ForceSendFields is a list of field names (e.g. "DataProfile") to
  4850  	// unconditionally include in API requests. By default, fields with empty or
  4851  	// default values are omitted from API requests. See
  4852  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4853  	// details.
  4854  	ForceSendFields []string `json:"-"`
  4855  	// NullFields is a list of field names (e.g. "DataProfile") to include in API
  4856  	// requests with the JSON null value. By default, fields with empty values are
  4857  	// omitted from API requests. See
  4858  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4859  	NullFields []string `json:"-"`
  4860  }
  4861  
  4862  func (s *GoogleCloudSecuritycenterV2CloudDlpDataProfile) MarshalJSON() ([]byte, error) {
  4863  	type NoMethod GoogleCloudSecuritycenterV2CloudDlpDataProfile
  4864  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4865  }
  4866  
  4867  // GoogleCloudSecuritycenterV2CloudDlpInspection: Details about the Cloud Data
  4868  // Loss Prevention (Cloud DLP) inspection job
  4869  // (https://cloud.google.com/dlp/docs/concepts-job-triggers) that produced the
  4870  // finding.
  4871  type GoogleCloudSecuritycenterV2CloudDlpInspection struct {
  4872  	// FullScan: Whether Cloud DLP scanned the complete resource or a sampled
  4873  	// subset.
  4874  	FullScan bool `json:"fullScan,omitempty"`
  4875  	// InfoType: The type of information (or *infoType
  4876  	// (https://cloud.google.com/dlp/docs/infotypes-reference)*) found, for
  4877  	// example, `EMAIL_ADDRESS` or `STREET_ADDRESS`.
  4878  	InfoType string `json:"infoType,omitempty"`
  4879  	// InfoTypeCount: The number of times Cloud DLP found this infoType within this
  4880  	// job and resource.
  4881  	InfoTypeCount int64 `json:"infoTypeCount,omitempty,string"`
  4882  	// InspectJob: Name of the inspection job, for example,
  4883  	// `projects/123/locations/europe/dlpJobs/i-8383929`.
  4884  	InspectJob string `json:"inspectJob,omitempty"`
  4885  	// ForceSendFields is a list of field names (e.g. "FullScan") to
  4886  	// unconditionally include in API requests. By default, fields with empty or
  4887  	// default values are omitted from API requests. See
  4888  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4889  	// details.
  4890  	ForceSendFields []string `json:"-"`
  4891  	// NullFields is a list of field names (e.g. "FullScan") to include in API
  4892  	// requests with the JSON null value. By default, fields with empty values are
  4893  	// omitted from API requests. See
  4894  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4895  	NullFields []string `json:"-"`
  4896  }
  4897  
  4898  func (s *GoogleCloudSecuritycenterV2CloudDlpInspection) MarshalJSON() ([]byte, error) {
  4899  	type NoMethod GoogleCloudSecuritycenterV2CloudDlpInspection
  4900  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4901  }
  4902  
  4903  // GoogleCloudSecuritycenterV2CloudLoggingEntry: Metadata taken from a Cloud
  4904  // Logging LogEntry
  4905  // (https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry)
  4906  type GoogleCloudSecuritycenterV2CloudLoggingEntry struct {
  4907  	// InsertId: A unique identifier for the log entry.
  4908  	InsertId string `json:"insertId,omitempty"`
  4909  	// LogId: The type of the log (part of `log_name`. `log_name` is the resource
  4910  	// name of the log to which this log entry belongs). For example:
  4911  	// `cloudresourcemanager.googleapis.com/activity` Note that this field is not
  4912  	// URL-encoded, unlike in `LogEntry`.
  4913  	LogId string `json:"logId,omitempty"`
  4914  	// ResourceContainer: The organization, folder, or project of the monitored
  4915  	// resource that produced this log entry.
  4916  	ResourceContainer string `json:"resourceContainer,omitempty"`
  4917  	// Timestamp: The time the event described by the log entry occurred.
  4918  	Timestamp string `json:"timestamp,omitempty"`
  4919  	// ForceSendFields is a list of field names (e.g. "InsertId") to
  4920  	// unconditionally include in API requests. By default, fields with empty or
  4921  	// default values are omitted from API requests. See
  4922  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4923  	// details.
  4924  	ForceSendFields []string `json:"-"`
  4925  	// NullFields is a list of field names (e.g. "InsertId") to include in API
  4926  	// requests with the JSON null value. By default, fields with empty values are
  4927  	// omitted from API requests. See
  4928  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4929  	NullFields []string `json:"-"`
  4930  }
  4931  
  4932  func (s *GoogleCloudSecuritycenterV2CloudLoggingEntry) MarshalJSON() ([]byte, error) {
  4933  	type NoMethod GoogleCloudSecuritycenterV2CloudLoggingEntry
  4934  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4935  }
  4936  
  4937  // GoogleCloudSecuritycenterV2Compliance: Contains compliance information about
  4938  // a security standard indicating unmet recommendations.
  4939  type GoogleCloudSecuritycenterV2Compliance struct {
  4940  	// Ids: Policies within the standard or benchmark, for example, A.12.4.1
  4941  	Ids []string `json:"ids,omitempty"`
  4942  	// Standard: Industry-wide compliance standards or benchmarks, such as CIS,
  4943  	// PCI, and OWASP.
  4944  	Standard string `json:"standard,omitempty"`
  4945  	// Version: Version of the standard or benchmark, for example, 1.1
  4946  	Version string `json:"version,omitempty"`
  4947  	// ForceSendFields is a list of field names (e.g. "Ids") to unconditionally
  4948  	// include in API requests. By default, fields with empty or default values are
  4949  	// omitted from API requests. See
  4950  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4951  	// details.
  4952  	ForceSendFields []string `json:"-"`
  4953  	// NullFields is a list of field names (e.g. "Ids") to include in API requests
  4954  	// with the JSON null value. By default, fields with empty values are omitted
  4955  	// from API requests. See
  4956  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4957  	NullFields []string `json:"-"`
  4958  }
  4959  
  4960  func (s *GoogleCloudSecuritycenterV2Compliance) MarshalJSON() ([]byte, error) {
  4961  	type NoMethod GoogleCloudSecuritycenterV2Compliance
  4962  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4963  }
  4964  
  4965  // GoogleCloudSecuritycenterV2Connection: Contains information about the IP
  4966  // connection associated with the finding.
  4967  type GoogleCloudSecuritycenterV2Connection struct {
  4968  	// DestinationIp: Destination IP address. Not present for sockets that are
  4969  	// listening and not connected.
  4970  	DestinationIp string `json:"destinationIp,omitempty"`
  4971  	// DestinationPort: Destination port. Not present for sockets that are
  4972  	// listening and not connected.
  4973  	DestinationPort int64 `json:"destinationPort,omitempty"`
  4974  	// Protocol: IANA Internet Protocol Number such as TCP(6) and UDP(17).
  4975  	//
  4976  	// Possible values:
  4977  	//   "PROTOCOL_UNSPECIFIED" - Unspecified protocol (not HOPOPT).
  4978  	//   "ICMP" - Internet Control Message Protocol.
  4979  	//   "TCP" - Transmission Control Protocol.
  4980  	//   "UDP" - User Datagram Protocol.
  4981  	//   "GRE" - Generic Routing Encapsulation.
  4982  	//   "ESP" - Encap Security Payload.
  4983  	Protocol string `json:"protocol,omitempty"`
  4984  	// SourceIp: Source IP address.
  4985  	SourceIp string `json:"sourceIp,omitempty"`
  4986  	// SourcePort: Source port.
  4987  	SourcePort int64 `json:"sourcePort,omitempty"`
  4988  	// ForceSendFields is a list of field names (e.g. "DestinationIp") to
  4989  	// unconditionally include in API requests. By default, fields with empty or
  4990  	// default values are omitted from API requests. See
  4991  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4992  	// details.
  4993  	ForceSendFields []string `json:"-"`
  4994  	// NullFields is a list of field names (e.g. "DestinationIp") to include in API
  4995  	// requests with the JSON null value. By default, fields with empty values are
  4996  	// omitted from API requests. See
  4997  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4998  	NullFields []string `json:"-"`
  4999  }
  5000  
  5001  func (s *GoogleCloudSecuritycenterV2Connection) MarshalJSON() ([]byte, error) {
  5002  	type NoMethod GoogleCloudSecuritycenterV2Connection
  5003  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5004  }
  5005  
  5006  // GoogleCloudSecuritycenterV2Contact: The email address of a contact.
  5007  type GoogleCloudSecuritycenterV2Contact struct {
  5008  	// Email: An email address. For example, "person123@company.com".
  5009  	Email string `json:"email,omitempty"`
  5010  	// ForceSendFields is a list of field names (e.g. "Email") to unconditionally
  5011  	// include in API requests. By default, fields with empty or default values are
  5012  	// omitted from API requests. See
  5013  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5014  	// details.
  5015  	ForceSendFields []string `json:"-"`
  5016  	// NullFields is a list of field names (e.g. "Email") to include in API
  5017  	// requests with the JSON null value. By default, fields with empty values are
  5018  	// omitted from API requests. See
  5019  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5020  	NullFields []string `json:"-"`
  5021  }
  5022  
  5023  func (s *GoogleCloudSecuritycenterV2Contact) MarshalJSON() ([]byte, error) {
  5024  	type NoMethod GoogleCloudSecuritycenterV2Contact
  5025  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5026  }
  5027  
  5028  // GoogleCloudSecuritycenterV2ContactDetails: Details about specific contacts
  5029  type GoogleCloudSecuritycenterV2ContactDetails struct {
  5030  	// Contacts: A list of contacts
  5031  	Contacts []*GoogleCloudSecuritycenterV2Contact `json:"contacts,omitempty"`
  5032  	// ForceSendFields is a list of field names (e.g. "Contacts") to
  5033  	// unconditionally include in API requests. By default, fields with empty or
  5034  	// default values are omitted from API requests. See
  5035  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5036  	// details.
  5037  	ForceSendFields []string `json:"-"`
  5038  	// NullFields is a list of field names (e.g. "Contacts") to include in API
  5039  	// requests with the JSON null value. By default, fields with empty values are
  5040  	// omitted from API requests. See
  5041  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5042  	NullFields []string `json:"-"`
  5043  }
  5044  
  5045  func (s *GoogleCloudSecuritycenterV2ContactDetails) MarshalJSON() ([]byte, error) {
  5046  	type NoMethod GoogleCloudSecuritycenterV2ContactDetails
  5047  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5048  }
  5049  
  5050  // GoogleCloudSecuritycenterV2Container: Container associated with the finding.
  5051  type GoogleCloudSecuritycenterV2Container struct {
  5052  	// CreateTime: The time that the container was created.
  5053  	CreateTime string `json:"createTime,omitempty"`
  5054  	// ImageId: Optional container image ID, if provided by the container runtime.
  5055  	// Uniquely identifies the container image launched using a container image
  5056  	// digest.
  5057  	ImageId string `json:"imageId,omitempty"`
  5058  	// Labels: Container labels, as provided by the container runtime.
  5059  	Labels []*GoogleCloudSecuritycenterV2Label `json:"labels,omitempty"`
  5060  	// Name: Name of the container.
  5061  	Name string `json:"name,omitempty"`
  5062  	// Uri: Container image URI provided when configuring a pod or container. This
  5063  	// string can identify a container image version using mutable tags.
  5064  	Uri string `json:"uri,omitempty"`
  5065  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  5066  	// unconditionally include in API requests. By default, fields with empty or
  5067  	// default values are omitted from API requests. See
  5068  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5069  	// details.
  5070  	ForceSendFields []string `json:"-"`
  5071  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  5072  	// requests with the JSON null value. By default, fields with empty values are
  5073  	// omitted from API requests. See
  5074  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5075  	NullFields []string `json:"-"`
  5076  }
  5077  
  5078  func (s *GoogleCloudSecuritycenterV2Container) MarshalJSON() ([]byte, error) {
  5079  	type NoMethod GoogleCloudSecuritycenterV2Container
  5080  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5081  }
  5082  
  5083  // GoogleCloudSecuritycenterV2Cve: CVE stands for Common Vulnerabilities and
  5084  // Exposures. Information from the CVE record
  5085  // (https://www.cve.org/ResourcesSupport/Glossary) that describes this
  5086  // vulnerability.
  5087  type GoogleCloudSecuritycenterV2Cve struct {
  5088  	// Cvssv3: Describe Common Vulnerability Scoring System specified at
  5089  	// https://www.first.org/cvss/v3.1/specification-document
  5090  	Cvssv3 *GoogleCloudSecuritycenterV2Cvssv3 `json:"cvssv3,omitempty"`
  5091  	// ExploitationActivity: The exploitation activity of the vulnerability in the
  5092  	// wild.
  5093  	//
  5094  	// Possible values:
  5095  	//   "EXPLOITATION_ACTIVITY_UNSPECIFIED" - Invalid or empty value.
  5096  	//   "WIDE" - Exploitation has been reported or confirmed to widely occur.
  5097  	//   "CONFIRMED" - Limited reported or confirmed exploitation activities.
  5098  	//   "AVAILABLE" - Exploit is publicly available.
  5099  	//   "ANTICIPATED" - No known exploitation activity, but has a high potential
  5100  	// for exploitation.
  5101  	//   "NO_KNOWN" - No known exploitation activity.
  5102  	ExploitationActivity string `json:"exploitationActivity,omitempty"`
  5103  	// Id: The unique identifier for the vulnerability. e.g. CVE-2021-34527
  5104  	Id string `json:"id,omitempty"`
  5105  	// Impact: The potential impact of the vulnerability if it was to be exploited.
  5106  	//
  5107  	// Possible values:
  5108  	//   "RISK_RATING_UNSPECIFIED" - Invalid or empty value.
  5109  	//   "LOW" - Exploitation would have little to no security impact.
  5110  	//   "MEDIUM" - Exploitation would enable attackers to perform activities, or
  5111  	// could allow attackers to have a direct impact, but would require additional
  5112  	// steps.
  5113  	//   "HIGH" - Exploitation would enable attackers to have a notable direct
  5114  	// impact without needing to overcome any major mitigating factors.
  5115  	//   "CRITICAL" - Exploitation would fundamentally undermine the security of
  5116  	// affected systems, enable actors to perform significant attacks with minimal
  5117  	// effort, with little to no mitigating factors to overcome.
  5118  	Impact string `json:"impact,omitempty"`
  5119  	// ObservedInTheWild: Whether or not the vulnerability has been observed in the
  5120  	// wild.
  5121  	ObservedInTheWild bool `json:"observedInTheWild,omitempty"`
  5122  	// References: Additional information about the CVE. e.g.
  5123  	// https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527
  5124  	References []*GoogleCloudSecuritycenterV2Reference `json:"references,omitempty"`
  5125  	// UpstreamFixAvailable: Whether upstream fix is available for the CVE.
  5126  	UpstreamFixAvailable bool `json:"upstreamFixAvailable,omitempty"`
  5127  	// ZeroDay: Whether or not the vulnerability was zero day when the finding was
  5128  	// published.
  5129  	ZeroDay bool `json:"zeroDay,omitempty"`
  5130  	// ForceSendFields is a list of field names (e.g. "Cvssv3") to unconditionally
  5131  	// include in API requests. By default, fields with empty or default values are
  5132  	// omitted from API requests. See
  5133  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5134  	// details.
  5135  	ForceSendFields []string `json:"-"`
  5136  	// NullFields is a list of field names (e.g. "Cvssv3") to include in API
  5137  	// requests with the JSON null value. By default, fields with empty values are
  5138  	// omitted from API requests. See
  5139  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5140  	NullFields []string `json:"-"`
  5141  }
  5142  
  5143  func (s *GoogleCloudSecuritycenterV2Cve) MarshalJSON() ([]byte, error) {
  5144  	type NoMethod GoogleCloudSecuritycenterV2Cve
  5145  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5146  }
  5147  
  5148  // GoogleCloudSecuritycenterV2Cvssv3: Common Vulnerability Scoring System
  5149  // version 3.
  5150  type GoogleCloudSecuritycenterV2Cvssv3 struct {
  5151  	// AttackComplexity: This metric describes the conditions beyond the attacker's
  5152  	// control that must exist in order to exploit the vulnerability.
  5153  	//
  5154  	// Possible values:
  5155  	//   "ATTACK_COMPLEXITY_UNSPECIFIED" - Invalid value.
  5156  	//   "ATTACK_COMPLEXITY_LOW" - Specialized access conditions or extenuating
  5157  	// circumstances do not exist. An attacker can expect repeatable success when
  5158  	// attacking the vulnerable component.
  5159  	//   "ATTACK_COMPLEXITY_HIGH" - A successful attack depends on conditions
  5160  	// beyond the attacker's control. That is, a successful attack cannot be
  5161  	// accomplished at will, but requires the attacker to invest in some measurable
  5162  	// amount of effort in preparation or execution against the vulnerable
  5163  	// component before a successful attack can be expected.
  5164  	AttackComplexity string `json:"attackComplexity,omitempty"`
  5165  	// AttackVector: Base Metrics Represents the intrinsic characteristics of a
  5166  	// vulnerability that are constant over time and across user environments. This
  5167  	// metric reflects the context by which vulnerability exploitation is possible.
  5168  	//
  5169  	// Possible values:
  5170  	//   "ATTACK_VECTOR_UNSPECIFIED" - Invalid value.
  5171  	//   "ATTACK_VECTOR_NETWORK" - The vulnerable component is bound to the network
  5172  	// stack and the set of possible attackers extends beyond the other options
  5173  	// listed below, up to and including the entire Internet.
  5174  	//   "ATTACK_VECTOR_ADJACENT" - The vulnerable component is bound to the
  5175  	// network stack, but the attack is limited at the protocol level to a
  5176  	// logically adjacent topology.
  5177  	//   "ATTACK_VECTOR_LOCAL" - The vulnerable component is not bound to the
  5178  	// network stack and the attacker's path is via read/write/execute
  5179  	// capabilities.
  5180  	//   "ATTACK_VECTOR_PHYSICAL" - The attack requires the attacker to physically
  5181  	// touch or manipulate the vulnerable component.
  5182  	AttackVector string `json:"attackVector,omitempty"`
  5183  	// AvailabilityImpact: This metric measures the impact to the availability of
  5184  	// the impacted component resulting from a successfully exploited
  5185  	// vulnerability.
  5186  	//
  5187  	// Possible values:
  5188  	//   "IMPACT_UNSPECIFIED" - Invalid value.
  5189  	//   "IMPACT_HIGH" - High impact.
  5190  	//   "IMPACT_LOW" - Low impact.
  5191  	//   "IMPACT_NONE" - No impact.
  5192  	AvailabilityImpact string `json:"availabilityImpact,omitempty"`
  5193  	// BaseScore: The base score is a function of the base metric scores.
  5194  	BaseScore float64 `json:"baseScore,omitempty"`
  5195  	// ConfidentialityImpact: This metric measures the impact to the
  5196  	// confidentiality of the information resources managed by a software component
  5197  	// due to a successfully exploited vulnerability.
  5198  	//
  5199  	// Possible values:
  5200  	//   "IMPACT_UNSPECIFIED" - Invalid value.
  5201  	//   "IMPACT_HIGH" - High impact.
  5202  	//   "IMPACT_LOW" - Low impact.
  5203  	//   "IMPACT_NONE" - No impact.
  5204  	ConfidentialityImpact string `json:"confidentialityImpact,omitempty"`
  5205  	// IntegrityImpact: This metric measures the impact to integrity of a
  5206  	// successfully exploited vulnerability.
  5207  	//
  5208  	// Possible values:
  5209  	//   "IMPACT_UNSPECIFIED" - Invalid value.
  5210  	//   "IMPACT_HIGH" - High impact.
  5211  	//   "IMPACT_LOW" - Low impact.
  5212  	//   "IMPACT_NONE" - No impact.
  5213  	IntegrityImpact string `json:"integrityImpact,omitempty"`
  5214  	// PrivilegesRequired: This metric describes the level of privileges an
  5215  	// attacker must possess before successfully exploiting the vulnerability.
  5216  	//
  5217  	// Possible values:
  5218  	//   "PRIVILEGES_REQUIRED_UNSPECIFIED" - Invalid value.
  5219  	//   "PRIVILEGES_REQUIRED_NONE" - The attacker is unauthorized prior to attack,
  5220  	// and therefore does not require any access to settings or files of the
  5221  	// vulnerable system to carry out an attack.
  5222  	//   "PRIVILEGES_REQUIRED_LOW" - The attacker requires privileges that provide
  5223  	// basic user capabilities that could normally affect only settings and files
  5224  	// owned by a user. Alternatively, an attacker with Low privileges has the
  5225  	// ability to access only non-sensitive resources.
  5226  	//   "PRIVILEGES_REQUIRED_HIGH" - The attacker requires privileges that provide
  5227  	// significant (e.g., administrative) control over the vulnerable component
  5228  	// allowing access to component-wide settings and files.
  5229  	PrivilegesRequired string `json:"privilegesRequired,omitempty"`
  5230  	// Scope: The Scope metric captures whether a vulnerability in one vulnerable
  5231  	// component impacts resources in components beyond its security scope.
  5232  	//
  5233  	// Possible values:
  5234  	//   "SCOPE_UNSPECIFIED" - Invalid value.
  5235  	//   "SCOPE_UNCHANGED" - An exploited vulnerability can only affect resources
  5236  	// managed by the same security authority.
  5237  	//   "SCOPE_CHANGED" - An exploited vulnerability can affect resources beyond
  5238  	// the security scope managed by the security authority of the vulnerable
  5239  	// component.
  5240  	Scope string `json:"scope,omitempty"`
  5241  	// UserInteraction: This metric captures the requirement for a human user,
  5242  	// other than the attacker, to participate in the successful compromise of the
  5243  	// vulnerable component.
  5244  	//
  5245  	// Possible values:
  5246  	//   "USER_INTERACTION_UNSPECIFIED" - Invalid value.
  5247  	//   "USER_INTERACTION_NONE" - The vulnerable system can be exploited without
  5248  	// interaction from any user.
  5249  	//   "USER_INTERACTION_REQUIRED" - Successful exploitation of this
  5250  	// vulnerability requires a user to take some action before the vulnerability
  5251  	// can be exploited.
  5252  	UserInteraction string `json:"userInteraction,omitempty"`
  5253  	// ForceSendFields is a list of field names (e.g. "AttackComplexity") to
  5254  	// unconditionally include in API requests. By default, fields with empty or
  5255  	// default values are omitted from API requests. See
  5256  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5257  	// details.
  5258  	ForceSendFields []string `json:"-"`
  5259  	// NullFields is a list of field names (e.g. "AttackComplexity") to include in
  5260  	// API requests with the JSON null value. By default, fields with empty values
  5261  	// are omitted from API requests. See
  5262  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5263  	NullFields []string `json:"-"`
  5264  }
  5265  
  5266  func (s *GoogleCloudSecuritycenterV2Cvssv3) MarshalJSON() ([]byte, error) {
  5267  	type NoMethod GoogleCloudSecuritycenterV2Cvssv3
  5268  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5269  }
  5270  
  5271  func (s *GoogleCloudSecuritycenterV2Cvssv3) UnmarshalJSON(data []byte) error {
  5272  	type NoMethod GoogleCloudSecuritycenterV2Cvssv3
  5273  	var s1 struct {
  5274  		BaseScore gensupport.JSONFloat64 `json:"baseScore"`
  5275  		*NoMethod
  5276  	}
  5277  	s1.NoMethod = (*NoMethod)(s)
  5278  	if err := json.Unmarshal(data, &s1); err != nil {
  5279  		return err
  5280  	}
  5281  	s.BaseScore = float64(s1.BaseScore)
  5282  	return nil
  5283  }
  5284  
  5285  // GoogleCloudSecuritycenterV2Database: Represents database access information,
  5286  // such as queries. A database may be a sub-resource of an instance (as in the
  5287  // case of Cloud SQL instances or Cloud Spanner instances), or the database
  5288  // instance itself. Some database resources might not have the full resource
  5289  // name (https://google.aip.dev/122#full-resource-names) populated because
  5290  // these resource types, such as Cloud SQL databases, are not yet supported by
  5291  // Cloud Asset Inventory. In these cases only the display name is provided.
  5292  type GoogleCloudSecuritycenterV2Database struct {
  5293  	// DisplayName: The human-readable name of the database that the user connected
  5294  	// to.
  5295  	DisplayName string `json:"displayName,omitempty"`
  5296  	// Grantees: The target usernames, roles, or groups of an SQL privilege grant,
  5297  	// which is not an IAM policy change.
  5298  	Grantees []string `json:"grantees,omitempty"`
  5299  	// Name: Some database resources may not have the full resource name
  5300  	// (https://google.aip.dev/122#full-resource-names) populated because these
  5301  	// resource types are not yet supported by Cloud Asset Inventory (e.g. Cloud
  5302  	// SQL databases). In these cases only the display name will be provided. The
  5303  	// full resource name (https://google.aip.dev/122#full-resource-names) of the
  5304  	// database that the user connected to, if it is supported by Cloud Asset
  5305  	// Inventory.
  5306  	Name string `json:"name,omitempty"`
  5307  	// Query: The SQL statement that is associated with the database access.
  5308  	Query string `json:"query,omitempty"`
  5309  	// UserName: The username used to connect to the database. The username might
  5310  	// not be an IAM principal and does not have a set format.
  5311  	UserName string `json:"userName,omitempty"`
  5312  	// Version: The version of the database, for example, POSTGRES_14. See the
  5313  	// complete list
  5314  	// (https://cloud.google.com/sql/docs/mysql/admin-api/rest/v1/SqlDatabaseVersion).
  5315  	Version string `json:"version,omitempty"`
  5316  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  5317  	// unconditionally include in API requests. By default, fields with empty or
  5318  	// default values are omitted from API requests. See
  5319  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5320  	// details.
  5321  	ForceSendFields []string `json:"-"`
  5322  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  5323  	// requests with the JSON null value. By default, fields with empty values are
  5324  	// omitted from API requests. See
  5325  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5326  	NullFields []string `json:"-"`
  5327  }
  5328  
  5329  func (s *GoogleCloudSecuritycenterV2Database) MarshalJSON() ([]byte, error) {
  5330  	type NoMethod GoogleCloudSecuritycenterV2Database
  5331  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5332  }
  5333  
  5334  // GoogleCloudSecuritycenterV2Detection: Memory hash detection contributing to
  5335  // the binary family match.
  5336  type GoogleCloudSecuritycenterV2Detection struct {
  5337  	// Binary: The name of the binary associated with the memory hash signature
  5338  	// detection.
  5339  	Binary string `json:"binary,omitempty"`
  5340  	// PercentPagesMatched: The percentage of memory page hashes in the signature
  5341  	// that were matched.
  5342  	PercentPagesMatched float64 `json:"percentPagesMatched,omitempty"`
  5343  	// ForceSendFields is a list of field names (e.g. "Binary") to unconditionally
  5344  	// include in API requests. By default, fields with empty or default values are
  5345  	// omitted from API requests. See
  5346  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5347  	// details.
  5348  	ForceSendFields []string `json:"-"`
  5349  	// NullFields is a list of field names (e.g. "Binary") to include in API
  5350  	// requests with the JSON null value. By default, fields with empty values are
  5351  	// omitted from API requests. See
  5352  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5353  	NullFields []string `json:"-"`
  5354  }
  5355  
  5356  func (s *GoogleCloudSecuritycenterV2Detection) MarshalJSON() ([]byte, error) {
  5357  	type NoMethod GoogleCloudSecuritycenterV2Detection
  5358  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5359  }
  5360  
  5361  func (s *GoogleCloudSecuritycenterV2Detection) UnmarshalJSON(data []byte) error {
  5362  	type NoMethod GoogleCloudSecuritycenterV2Detection
  5363  	var s1 struct {
  5364  		PercentPagesMatched gensupport.JSONFloat64 `json:"percentPagesMatched"`
  5365  		*NoMethod
  5366  	}
  5367  	s1.NoMethod = (*NoMethod)(s)
  5368  	if err := json.Unmarshal(data, &s1); err != nil {
  5369  		return err
  5370  	}
  5371  	s.PercentPagesMatched = float64(s1.PercentPagesMatched)
  5372  	return nil
  5373  }
  5374  
  5375  // GoogleCloudSecuritycenterV2DiskPath: Path of the file in terms of underlying
  5376  // disk/partition identifiers.
  5377  type GoogleCloudSecuritycenterV2DiskPath struct {
  5378  	// PartitionUuid: UUID of the partition (format
  5379  	// https://wiki.archlinux.org/title/persistent_block_device_naming#by-uuid)
  5380  	PartitionUuid string `json:"partitionUuid,omitempty"`
  5381  	// RelativePath: Relative path of the file in the partition as a JSON encoded
  5382  	// string. Example: /home/user1/executable_file.sh
  5383  	RelativePath string `json:"relativePath,omitempty"`
  5384  	// ForceSendFields is a list of field names (e.g. "PartitionUuid") to
  5385  	// unconditionally include in API requests. By default, fields with empty or
  5386  	// default values are omitted from API requests. See
  5387  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5388  	// details.
  5389  	ForceSendFields []string `json:"-"`
  5390  	// NullFields is a list of field names (e.g. "PartitionUuid") to include in API
  5391  	// requests with the JSON null value. By default, fields with empty values are
  5392  	// omitted from API requests. See
  5393  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5394  	NullFields []string `json:"-"`
  5395  }
  5396  
  5397  func (s *GoogleCloudSecuritycenterV2DiskPath) MarshalJSON() ([]byte, error) {
  5398  	type NoMethod GoogleCloudSecuritycenterV2DiskPath
  5399  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5400  }
  5401  
  5402  // GoogleCloudSecuritycenterV2EnvironmentVariable: A name-value pair
  5403  // representing an environment variable used in an operating system process.
  5404  type GoogleCloudSecuritycenterV2EnvironmentVariable struct {
  5405  	// Name: Environment variable name as a JSON encoded string.
  5406  	Name string `json:"name,omitempty"`
  5407  	// Val: Environment variable value as a JSON encoded string.
  5408  	Val string `json:"val,omitempty"`
  5409  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  5410  	// include in API requests. By default, fields with empty or default values are
  5411  	// omitted from API requests. See
  5412  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5413  	// details.
  5414  	ForceSendFields []string `json:"-"`
  5415  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  5416  	// with the JSON null value. By default, fields with empty values are omitted
  5417  	// from API requests. See
  5418  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5419  	NullFields []string `json:"-"`
  5420  }
  5421  
  5422  func (s *GoogleCloudSecuritycenterV2EnvironmentVariable) MarshalJSON() ([]byte, error) {
  5423  	type NoMethod GoogleCloudSecuritycenterV2EnvironmentVariable
  5424  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5425  }
  5426  
  5427  // GoogleCloudSecuritycenterV2ExfilResource: Resource where data was
  5428  // exfiltrated from or exfiltrated to.
  5429  type GoogleCloudSecuritycenterV2ExfilResource struct {
  5430  	// Components: Subcomponents of the asset that was exfiltrated, like URIs used
  5431  	// during exfiltration, table names, databases, and filenames. For example,
  5432  	// multiple tables might have been exfiltrated from the same Cloud SQL
  5433  	// instance, or multiple files might have been exfiltrated from the same Cloud
  5434  	// Storage bucket.
  5435  	Components []string `json:"components,omitempty"`
  5436  	// Name: The resource's full resource name
  5437  	// (https://cloud.google.com/apis/design/resource_names#full_resource_name).
  5438  	Name string `json:"name,omitempty"`
  5439  	// ForceSendFields is a list of field names (e.g. "Components") to
  5440  	// unconditionally include in API requests. By default, fields with empty or
  5441  	// default values are omitted from API requests. See
  5442  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5443  	// details.
  5444  	ForceSendFields []string `json:"-"`
  5445  	// NullFields is a list of field names (e.g. "Components") to include in API
  5446  	// requests with the JSON null value. By default, fields with empty values are
  5447  	// omitted from API requests. See
  5448  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5449  	NullFields []string `json:"-"`
  5450  }
  5451  
  5452  func (s *GoogleCloudSecuritycenterV2ExfilResource) MarshalJSON() ([]byte, error) {
  5453  	type NoMethod GoogleCloudSecuritycenterV2ExfilResource
  5454  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5455  }
  5456  
  5457  // GoogleCloudSecuritycenterV2Exfiltration: Exfiltration represents a data
  5458  // exfiltration attempt from one or more sources to one or more targets. The
  5459  // `sources` attribute lists the sources of the exfiltrated data. The `targets`
  5460  // attribute lists the destinations the data was copied to.
  5461  type GoogleCloudSecuritycenterV2Exfiltration struct {
  5462  	// Sources: If there are multiple sources, then the data is considered "joined"
  5463  	// between them. For instance, BigQuery can join multiple tables, and each
  5464  	// table would be considered a source.
  5465  	Sources []*GoogleCloudSecuritycenterV2ExfilResource `json:"sources,omitempty"`
  5466  	// Targets: If there are multiple targets, each target would get a complete
  5467  	// copy of the "joined" source data.
  5468  	Targets []*GoogleCloudSecuritycenterV2ExfilResource `json:"targets,omitempty"`
  5469  	// TotalExfiltratedBytes: Total exfiltrated bytes processed for the entire job.
  5470  	TotalExfiltratedBytes int64 `json:"totalExfiltratedBytes,omitempty,string"`
  5471  	// ForceSendFields is a list of field names (e.g. "Sources") to unconditionally
  5472  	// include in API requests. By default, fields with empty or default values are
  5473  	// omitted from API requests. See
  5474  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5475  	// details.
  5476  	ForceSendFields []string `json:"-"`
  5477  	// NullFields is a list of field names (e.g. "Sources") to include in API
  5478  	// requests with the JSON null value. By default, fields with empty values are
  5479  	// omitted from API requests. See
  5480  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5481  	NullFields []string `json:"-"`
  5482  }
  5483  
  5484  func (s *GoogleCloudSecuritycenterV2Exfiltration) MarshalJSON() ([]byte, error) {
  5485  	type NoMethod GoogleCloudSecuritycenterV2Exfiltration
  5486  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5487  }
  5488  
  5489  // GoogleCloudSecuritycenterV2ExternalSystem: Representation of third party
  5490  // SIEM/SOAR fields within SCC.
  5491  type GoogleCloudSecuritycenterV2ExternalSystem struct {
  5492  	// Assignees: References primary/secondary etc assignees in the external
  5493  	// system.
  5494  	Assignees []string `json:"assignees,omitempty"`
  5495  	// CaseCloseTime: The time when the case was closed, as reported by the
  5496  	// external system.
  5497  	CaseCloseTime string `json:"caseCloseTime,omitempty"`
  5498  	// CaseCreateTime: The time when the case was created, as reported by the
  5499  	// external system.
  5500  	CaseCreateTime string `json:"caseCreateTime,omitempty"`
  5501  	// CasePriority: The priority of the finding's corresponding case in the
  5502  	// external system.
  5503  	CasePriority string `json:"casePriority,omitempty"`
  5504  	// CaseSla: The SLA of the finding's corresponding case in the external system.
  5505  	CaseSla string `json:"caseSla,omitempty"`
  5506  	// CaseUri: The link to the finding's corresponding case in the external
  5507  	// system.
  5508  	CaseUri string `json:"caseUri,omitempty"`
  5509  	// ExternalSystemUpdateTime: The time when the case was last updated, as
  5510  	// reported by the external system.
  5511  	ExternalSystemUpdateTime string `json:"externalSystemUpdateTime,omitempty"`
  5512  	// ExternalUid: The identifier that's used to track the finding's corresponding
  5513  	// case in the external system.
  5514  	ExternalUid string `json:"externalUid,omitempty"`
  5515  	// Name: Full resource name of the external system. The following list shows
  5516  	// some examples: +
  5517  	// `organizations/1234/sources/5678/findings/123456/externalSystems/jira` +
  5518  	// `organizations/1234/sources/5678/locations/us/findings/123456/externalSystems
  5519  	// /jira` + `folders/1234/sources/5678/findings/123456/externalSystems/jira` +
  5520  	// `folders/1234/sources/5678/locations/us/findings/123456/externalSystems/jira`
  5521  	//  + `projects/1234/sources/5678/findings/123456/externalSystems/jira` +
  5522  	// `projects/1234/sources/5678/locations/us/findings/123456/externalSystems/jira
  5523  	// `
  5524  	Name string `json:"name,omitempty"`
  5525  	// Status: The most recent status of the finding's corresponding case, as
  5526  	// reported by the external system.
  5527  	Status string `json:"status,omitempty"`
  5528  	// TicketInfo: Information about the ticket, if any, that is being used to
  5529  	// track the resolution of the issue that is identified by this finding.
  5530  	TicketInfo *GoogleCloudSecuritycenterV2TicketInfo `json:"ticketInfo,omitempty"`
  5531  	// ForceSendFields is a list of field names (e.g. "Assignees") to
  5532  	// unconditionally include in API requests. By default, fields with empty or
  5533  	// default values are omitted from API requests. See
  5534  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5535  	// details.
  5536  	ForceSendFields []string `json:"-"`
  5537  	// NullFields is a list of field names (e.g. "Assignees") to include in API
  5538  	// requests with the JSON null value. By default, fields with empty values are
  5539  	// omitted from API requests. See
  5540  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5541  	NullFields []string `json:"-"`
  5542  }
  5543  
  5544  func (s *GoogleCloudSecuritycenterV2ExternalSystem) MarshalJSON() ([]byte, error) {
  5545  	type NoMethod GoogleCloudSecuritycenterV2ExternalSystem
  5546  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5547  }
  5548  
  5549  // GoogleCloudSecuritycenterV2File: File information about the related
  5550  // binary/library used by an executable, or the script used by a script
  5551  // interpreter
  5552  type GoogleCloudSecuritycenterV2File struct {
  5553  	// Contents: Prefix of the file contents as a JSON-encoded string.
  5554  	Contents string `json:"contents,omitempty"`
  5555  	// DiskPath: Path of the file in terms of underlying disk/partition
  5556  	// identifiers.
  5557  	DiskPath *GoogleCloudSecuritycenterV2DiskPath `json:"diskPath,omitempty"`
  5558  	// HashedSize: The length in bytes of the file prefix that was hashed. If
  5559  	// hashed_size == size, any hashes reported represent the entire file.
  5560  	HashedSize int64 `json:"hashedSize,omitempty,string"`
  5561  	// PartiallyHashed: True when the hash covers only a prefix of the file.
  5562  	PartiallyHashed bool `json:"partiallyHashed,omitempty"`
  5563  	// Path: Absolute path of the file as a JSON encoded string.
  5564  	Path string `json:"path,omitempty"`
  5565  	// Sha256: SHA256 hash of the first hashed_size bytes of the file encoded as a
  5566  	// hex string. If hashed_size == size, sha256 represents the SHA256 hash of the
  5567  	// entire file.
  5568  	Sha256 string `json:"sha256,omitempty"`
  5569  	// Size: Size of the file in bytes.
  5570  	Size int64 `json:"size,omitempty,string"`
  5571  	// ForceSendFields is a list of field names (e.g. "Contents") to
  5572  	// unconditionally include in API requests. By default, fields with empty or
  5573  	// default values are omitted from API requests. See
  5574  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5575  	// details.
  5576  	ForceSendFields []string `json:"-"`
  5577  	// NullFields is a list of field names (e.g. "Contents") to include in API
  5578  	// requests with the JSON null value. By default, fields with empty values are
  5579  	// omitted from API requests. See
  5580  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5581  	NullFields []string `json:"-"`
  5582  }
  5583  
  5584  func (s *GoogleCloudSecuritycenterV2File) MarshalJSON() ([]byte, error) {
  5585  	type NoMethod GoogleCloudSecuritycenterV2File
  5586  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5587  }
  5588  
  5589  // GoogleCloudSecuritycenterV2Finding: Security Command Center finding. A
  5590  // finding is a record of assessment data like security, risk, health, or
  5591  // privacy, that is ingested into Security Command Center for presentation,
  5592  // notification, analysis, policy testing, and enforcement. For example, a
  5593  // cross-site scripting (XSS) vulnerability in an App Engine application is a
  5594  // finding.
  5595  type GoogleCloudSecuritycenterV2Finding struct {
  5596  	// Access: Access details associated with the finding, such as more information
  5597  	// on the caller, which method was accessed, and from where.
  5598  	Access *GoogleCloudSecuritycenterV2Access `json:"access,omitempty"`
  5599  	// Application: Represents an application associated with the finding.
  5600  	Application *GoogleCloudSecuritycenterV2Application `json:"application,omitempty"`
  5601  	// AttackExposure: The results of an attack path simulation relevant to this
  5602  	// finding.
  5603  	AttackExposure *GoogleCloudSecuritycenterV2AttackExposure `json:"attackExposure,omitempty"`
  5604  	// BackupDisasterRecovery: Fields related to Backup and DR findings.
  5605  	BackupDisasterRecovery *GoogleCloudSecuritycenterV2BackupDisasterRecovery `json:"backupDisasterRecovery,omitempty"`
  5606  	// CanonicalName: Output only. The canonical name of the finding. The following
  5607  	// list shows some examples: +
  5608  	// `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}`
  5609  	// +
  5610  	// `organizations/{organization_id}/sources/{source_id}/locations/{location_id}/
  5611  	// findings/{finding_id}` +
  5612  	// `folders/{folder_id}/sources/{source_id}/findings/{finding_id}` +
  5613  	// `folders/{folder_id}/sources/{source_id}/locations/{location_id}/findings/{fi
  5614  	// nding_id}` +
  5615  	// `projects/{project_id}/sources/{source_id}/findings/{finding_id}` +
  5616  	// `projects/{project_id}/sources/{source_id}/locations/{location_id}/findings/{
  5617  	// finding_id}` The prefix is the closest CRM ancestor of the resource
  5618  	// associated with the finding.
  5619  	CanonicalName string `json:"canonicalName,omitempty"`
  5620  	// Category: Immutable. The additional taxonomy group within findings from a
  5621  	// given source. Example: "XSS_FLASH_INJECTION"
  5622  	Category string `json:"category,omitempty"`
  5623  	// CloudArmor: Fields related to Cloud Armor findings.
  5624  	CloudArmor *GoogleCloudSecuritycenterV2CloudArmor `json:"cloudArmor,omitempty"`
  5625  	// CloudDlpDataProfile: Cloud DLP data profile that is associated with the
  5626  	// finding.
  5627  	CloudDlpDataProfile *GoogleCloudSecuritycenterV2CloudDlpDataProfile `json:"cloudDlpDataProfile,omitempty"`
  5628  	// CloudDlpInspection: Cloud Data Loss Prevention (Cloud DLP) inspection
  5629  	// results that are associated with the finding.
  5630  	CloudDlpInspection *GoogleCloudSecuritycenterV2CloudDlpInspection `json:"cloudDlpInspection,omitempty"`
  5631  	// Compliances: Contains compliance information for security standards
  5632  	// associated to the finding.
  5633  	Compliances []*GoogleCloudSecuritycenterV2Compliance `json:"compliances,omitempty"`
  5634  	// Connections: Contains information about the IP connection associated with
  5635  	// the finding.
  5636  	Connections []*GoogleCloudSecuritycenterV2Connection `json:"connections,omitempty"`
  5637  	// Contacts: Output only. Map containing the points of contact for the given
  5638  	// finding. The key represents the type of contact, while the value contains a
  5639  	// list of all the contacts that pertain. Please refer to:
  5640  	// https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories
  5641  	// { "security": { "contacts": [ { "email": "person1@company.com" }, { "email":
  5642  	// "person2@company.com" } ] } }
  5643  	Contacts map[string]GoogleCloudSecuritycenterV2ContactDetails `json:"contacts,omitempty"`
  5644  	// Containers: Containers associated with the finding. This field provides
  5645  	// information for both Kubernetes and non-Kubernetes containers.
  5646  	Containers []*GoogleCloudSecuritycenterV2Container `json:"containers,omitempty"`
  5647  	// CreateTime: Output only. The time at which the finding was created in
  5648  	// Security Command Center.
  5649  	CreateTime string `json:"createTime,omitempty"`
  5650  	// Database: Database associated with the finding.
  5651  	Database *GoogleCloudSecuritycenterV2Database `json:"database,omitempty"`
  5652  	// Description: Contains more details about the finding.
  5653  	Description string `json:"description,omitempty"`
  5654  	// EventTime: The time the finding was first detected. If an existing finding
  5655  	// is updated, then this is the time the update occurred. For example, if the
  5656  	// finding represents an open firewall, this property captures the time the
  5657  	// detector believes the firewall became open. The accuracy is determined by
  5658  	// the detector. If the finding is later resolved, then this time reflects when
  5659  	// the finding was resolved. This must not be set to a value greater than the
  5660  	// current timestamp.
  5661  	EventTime string `json:"eventTime,omitempty"`
  5662  	// Exfiltration: Represents exfiltrations associated with the finding.
  5663  	Exfiltration *GoogleCloudSecuritycenterV2Exfiltration `json:"exfiltration,omitempty"`
  5664  	// ExternalSystems: Output only. Third party SIEM/SOAR fields within SCC,
  5665  	// contains external system information and external system finding fields.
  5666  	ExternalSystems map[string]GoogleCloudSecuritycenterV2ExternalSystem `json:"externalSystems,omitempty"`
  5667  	// ExternalUri: The URI that, if available, points to a web page outside of
  5668  	// Security Command Center where additional information about the finding can
  5669  	// be found. This field is guaranteed to be either empty or a well formed URL.
  5670  	ExternalUri string `json:"externalUri,omitempty"`
  5671  	// Files: File associated with the finding.
  5672  	Files []*GoogleCloudSecuritycenterV2File `json:"files,omitempty"`
  5673  	// FindingClass: The class of the finding.
  5674  	//
  5675  	// Possible values:
  5676  	//   "FINDING_CLASS_UNSPECIFIED" - Unspecified finding class.
  5677  	//   "THREAT" - Describes unwanted or malicious activity.
  5678  	//   "VULNERABILITY" - Describes a potential weakness in software that
  5679  	// increases risk to Confidentiality & Integrity & Availability.
  5680  	//   "MISCONFIGURATION" - Describes a potential weakness in cloud
  5681  	// resource/asset configuration that increases risk.
  5682  	//   "OBSERVATION" - Describes a security observation that is for informational
  5683  	// purposes.
  5684  	//   "SCC_ERROR" - Describes an error that prevents some SCC functionality.
  5685  	//   "POSTURE_VIOLATION" - Describes a potential security risk due to a change
  5686  	// in the security posture.
  5687  	FindingClass string `json:"findingClass,omitempty"`
  5688  	// IamBindings: Represents IAM bindings associated with the finding.
  5689  	IamBindings []*GoogleCloudSecuritycenterV2IamBinding `json:"iamBindings,omitempty"`
  5690  	// Indicator: Represents what's commonly known as an *indicator of compromise*
  5691  	// (IoC) in computer forensics. This is an artifact observed on a network or in
  5692  	// an operating system that, with high confidence, indicates a computer
  5693  	// intrusion. For more information, see Indicator of compromise
  5694  	// (https://en.wikipedia.org/wiki/Indicator_of_compromise).
  5695  	Indicator *GoogleCloudSecuritycenterV2Indicator `json:"indicator,omitempty"`
  5696  	// KernelRootkit: Signature of the kernel rootkit.
  5697  	KernelRootkit *GoogleCloudSecuritycenterV2KernelRootkit `json:"kernelRootkit,omitempty"`
  5698  	// Kubernetes: Kubernetes resources associated with the finding.
  5699  	Kubernetes *GoogleCloudSecuritycenterV2Kubernetes `json:"kubernetes,omitempty"`
  5700  	// LoadBalancers: The load balancers associated with the finding.
  5701  	LoadBalancers []*GoogleCloudSecuritycenterV2LoadBalancer `json:"loadBalancers,omitempty"`
  5702  	// LogEntries: Log entries that are relevant to the finding.
  5703  	LogEntries []*GoogleCloudSecuritycenterV2LogEntry `json:"logEntries,omitempty"`
  5704  	// MitreAttack: MITRE ATT&CK tactics and techniques related to this finding.
  5705  	// See: https://attack.mitre.org
  5706  	MitreAttack *GoogleCloudSecuritycenterV2MitreAttack `json:"mitreAttack,omitempty"`
  5707  	// ModuleName: Unique identifier of the module which generated the finding.
  5708  	// Example:
  5709  	// folders/598186756061/securityHealthAnalyticsSettings/customModules/5679944116
  5710  	// 1885
  5711  	ModuleName string `json:"moduleName,omitempty"`
  5712  	// Mute: Indicates the mute state of a finding (either muted, unmuted or
  5713  	// undefined). Unlike other attributes of a finding, a finding provider
  5714  	// shouldn't set the value of mute.
  5715  	//
  5716  	// Possible values:
  5717  	//   "MUTE_UNSPECIFIED" - Unspecified.
  5718  	//   "MUTED" - Finding has been muted.
  5719  	//   "UNMUTED" - Finding has been unmuted.
  5720  	//   "UNDEFINED" - Finding has never been muted/unmuted.
  5721  	Mute string `json:"mute,omitempty"`
  5722  	// MuteInitiator: Records additional information about the mute operation, for
  5723  	// example, the mute configuration
  5724  	// (https://cloud.google.com/security-command-center/docs/how-to-mute-findings)
  5725  	// that muted the finding and the user who muted the finding.
  5726  	MuteInitiator string `json:"muteInitiator,omitempty"`
  5727  	// MuteUpdateTime: Output only. The most recent time this finding was muted or
  5728  	// unmuted.
  5729  	MuteUpdateTime string `json:"muteUpdateTime,omitempty"`
  5730  	// Name: The relative resource name
  5731  	// (https://cloud.google.com/apis/design/resource_names#relative_resource_name)
  5732  	// of the finding. The following list shows some examples: +
  5733  	// `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}`
  5734  	// +
  5735  	// `organizations/{organization_id}/sources/{source_id}/locations/{location_id}/
  5736  	// findings/{finding_id}` +
  5737  	// `folders/{folder_id}/sources/{source_id}/findings/{finding_id}` +
  5738  	// `folders/{folder_id}/sources/{source_id}/locations/{location_id}/findings/{fi
  5739  	// nding_id}` +
  5740  	// `projects/{project_id}/sources/{source_id}/findings/{finding_id}` +
  5741  	// `projects/{project_id}/sources/{source_id}/locations/{location_id}/findings/{
  5742  	// finding_id}`
  5743  	Name string `json:"name,omitempty"`
  5744  	// NextSteps: Steps to address the finding.
  5745  	NextSteps string `json:"nextSteps,omitempty"`
  5746  	// Notebook: Notebook associated with the finding.
  5747  	Notebook *GoogleCloudSecuritycenterV2Notebook `json:"notebook,omitempty"`
  5748  	// OrgPolicies: Contains information about the org policies associated with the
  5749  	// finding.
  5750  	OrgPolicies []*GoogleCloudSecuritycenterV2OrgPolicy `json:"orgPolicies,omitempty"`
  5751  	// Parent: The relative resource name of the source and location the finding
  5752  	// belongs to. See:
  5753  	// https://cloud.google.com/apis/design/resource_names#relative_resource_name
  5754  	// This field is immutable after creation time. The following list shows some
  5755  	// examples: + `organizations/{organization_id}/sources/{source_id}` +
  5756  	// `folders/{folders_id}/sources/{source_id}` +
  5757  	// `projects/{projects_id}/sources/{source_id}` +
  5758  	// `organizations/{organization_id}/sources/{source_id}/locations/{location_id}`
  5759  	//  + `folders/{folders_id}/sources/{source_id}/locations/{location_id}` +
  5760  	// `projects/{projects_id}/sources/{source_id}/locations/{location_id}`
  5761  	Parent string `json:"parent,omitempty"`
  5762  	// ParentDisplayName: Output only. The human readable display name of the
  5763  	// finding source such as "Event Threat Detection" or "Security Health
  5764  	// Analytics".
  5765  	ParentDisplayName string `json:"parentDisplayName,omitempty"`
  5766  	// Processes: Represents operating system processes associated with the
  5767  	// Finding.
  5768  	Processes []*GoogleCloudSecuritycenterV2Process `json:"processes,omitempty"`
  5769  	// ResourceName: Immutable. For findings on Google Cloud resources, the full
  5770  	// resource name of the Google Cloud resource this finding is for. See:
  5771  	// https://cloud.google.com/apis/design/resource_names#full_resource_name When
  5772  	// the finding is for a non-Google Cloud resource, the resourceName can be a
  5773  	// customer or partner defined string.
  5774  	ResourceName string `json:"resourceName,omitempty"`
  5775  	// SecurityMarks: Output only. User specified security marks. These marks are
  5776  	// entirely managed by the user and come from the SecurityMarks resource that
  5777  	// belongs to the finding.
  5778  	SecurityMarks *GoogleCloudSecuritycenterV2SecurityMarks `json:"securityMarks,omitempty"`
  5779  	// SecurityPosture: The security posture associated with the finding.
  5780  	SecurityPosture *GoogleCloudSecuritycenterV2SecurityPosture `json:"securityPosture,omitempty"`
  5781  	// Severity: The severity of the finding. This field is managed by the source
  5782  	// that writes the finding.
  5783  	//
  5784  	// Possible values:
  5785  	//   "SEVERITY_UNSPECIFIED" - This value is used for findings when a source
  5786  	// doesn't write a severity value.
  5787  	//   "CRITICAL" - Vulnerability: A critical vulnerability is easily
  5788  	// discoverable by an external actor, exploitable, and results in the direct
  5789  	// ability to execute arbitrary code, exfiltrate data, and otherwise gain
  5790  	// additional access and privileges to cloud resources and workloads. Examples
  5791  	// include publicly accessible unprotected user data and public SSH access with
  5792  	// weak or no passwords. Threat: Indicates a threat that is able to access,
  5793  	// modify, or delete data or execute unauthorized code within existing
  5794  	// resources.
  5795  	//   "HIGH" - Vulnerability: A high risk vulnerability can be easily discovered
  5796  	// and exploited in combination with other vulnerabilities in order to gain
  5797  	// direct access and the ability to execute arbitrary code, exfiltrate data,
  5798  	// and otherwise gain additional access and privileges to cloud resources and
  5799  	// workloads. An example is a database with weak or no passwords that is only
  5800  	// accessible internally. This database could easily be compromised by an actor
  5801  	// that had access to the internal network. Threat: Indicates a threat that is
  5802  	// able to create new computational resources in an environment but not able to
  5803  	// access data or execute code in existing resources.
  5804  	//   "MEDIUM" - Vulnerability: A medium risk vulnerability could be used by an
  5805  	// actor to gain access to resources or privileges that enable them to
  5806  	// eventually (through multiple steps or a complex exploit) gain access and the
  5807  	// ability to execute arbitrary code or exfiltrate data. An example is a
  5808  	// service account with access to more projects than it should have. If an
  5809  	// actor gains access to the service account, they could potentially use that
  5810  	// access to manipulate a project the service account was not intended to.
  5811  	// Threat: Indicates a threat that is able to cause operational impact but may
  5812  	// not access data or execute unauthorized code.
  5813  	//   "LOW" - Vulnerability: A low risk vulnerability hampers a security
  5814  	// organization's ability to detect vulnerabilities or active threats in their
  5815  	// deployment, or prevents the root cause investigation of security issues. An
  5816  	// example is monitoring and logs being disabled for resource configurations
  5817  	// and access. Threat: Indicates a threat that has obtained minimal access to
  5818  	// an environment but is not able to access data, execute code, or create
  5819  	// resources.
  5820  	Severity string `json:"severity,omitempty"`
  5821  	// SourceProperties: Source specific properties. These properties are managed
  5822  	// by the source that writes the finding. The key names in the
  5823  	// source_properties map must be between 1 and 255 characters, and must start
  5824  	// with a letter and contain alphanumeric characters or underscores only.
  5825  	SourceProperties googleapi.RawMessage `json:"sourceProperties,omitempty"`
  5826  	// State: Output only. The state of the finding.
  5827  	//
  5828  	// Possible values:
  5829  	//   "STATE_UNSPECIFIED" - Unspecified state.
  5830  	//   "ACTIVE" - The finding requires attention and has not been addressed yet.
  5831  	//   "INACTIVE" - The finding has been fixed, triaged as a non-issue or
  5832  	// otherwise addressed and is no longer active.
  5833  	State string `json:"state,omitempty"`
  5834  	// Vulnerability: Represents vulnerability-specific fields like CVE and CVSS
  5835  	// scores. CVE stands for Common Vulnerabilities and Exposures
  5836  	// (https://cve.mitre.org/about/)
  5837  	Vulnerability *GoogleCloudSecuritycenterV2Vulnerability `json:"vulnerability,omitempty"`
  5838  	// ForceSendFields is a list of field names (e.g. "Access") to unconditionally
  5839  	// include in API requests. By default, fields with empty or default values are
  5840  	// omitted from API requests. See
  5841  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5842  	// details.
  5843  	ForceSendFields []string `json:"-"`
  5844  	// NullFields is a list of field names (e.g. "Access") to include in API
  5845  	// requests with the JSON null value. By default, fields with empty values are
  5846  	// omitted from API requests. See
  5847  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5848  	NullFields []string `json:"-"`
  5849  }
  5850  
  5851  func (s *GoogleCloudSecuritycenterV2Finding) MarshalJSON() ([]byte, error) {
  5852  	type NoMethod GoogleCloudSecuritycenterV2Finding
  5853  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5854  }
  5855  
  5856  // GoogleCloudSecuritycenterV2Folder: Message that contains the resource name
  5857  // and display name of a folder resource.
  5858  type GoogleCloudSecuritycenterV2Folder struct {
  5859  	// ResourceFolder: Full resource name of this folder. See:
  5860  	// https://cloud.google.com/apis/design/resource_names#full_resource_name
  5861  	ResourceFolder string `json:"resourceFolder,omitempty"`
  5862  	// ResourceFolderDisplayName: The user defined display name for this folder.
  5863  	ResourceFolderDisplayName string `json:"resourceFolderDisplayName,omitempty"`
  5864  	// ForceSendFields is a list of field names (e.g. "ResourceFolder") to
  5865  	// unconditionally include in API requests. By default, fields with empty or
  5866  	// default values are omitted from API requests. See
  5867  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5868  	// details.
  5869  	ForceSendFields []string `json:"-"`
  5870  	// NullFields is a list of field names (e.g. "ResourceFolder") to include in
  5871  	// API requests with the JSON null value. By default, fields with empty values
  5872  	// are omitted from API requests. See
  5873  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5874  	NullFields []string `json:"-"`
  5875  }
  5876  
  5877  func (s *GoogleCloudSecuritycenterV2Folder) MarshalJSON() ([]byte, error) {
  5878  	type NoMethod GoogleCloudSecuritycenterV2Folder
  5879  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5880  }
  5881  
  5882  // GoogleCloudSecuritycenterV2Geolocation: Represents a geographical location
  5883  // for a given access.
  5884  type GoogleCloudSecuritycenterV2Geolocation struct {
  5885  	// RegionCode: A CLDR.
  5886  	RegionCode string `json:"regionCode,omitempty"`
  5887  	// ForceSendFields is a list of field names (e.g. "RegionCode") to
  5888  	// unconditionally include in API requests. By default, fields with empty or
  5889  	// default values are omitted from API requests. See
  5890  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5891  	// details.
  5892  	ForceSendFields []string `json:"-"`
  5893  	// NullFields is a list of field names (e.g. "RegionCode") to include in API
  5894  	// requests with the JSON null value. By default, fields with empty values are
  5895  	// omitted from API requests. See
  5896  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5897  	NullFields []string `json:"-"`
  5898  }
  5899  
  5900  func (s *GoogleCloudSecuritycenterV2Geolocation) MarshalJSON() ([]byte, error) {
  5901  	type NoMethod GoogleCloudSecuritycenterV2Geolocation
  5902  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5903  }
  5904  
  5905  // GoogleCloudSecuritycenterV2IamBinding: Represents a particular IAM binding,
  5906  // which captures a member's role addition, removal, or state.
  5907  type GoogleCloudSecuritycenterV2IamBinding struct {
  5908  	// Action: The action that was performed on a Binding.
  5909  	//
  5910  	// Possible values:
  5911  	//   "ACTION_UNSPECIFIED" - Unspecified.
  5912  	//   "ADD" - Addition of a Binding.
  5913  	//   "REMOVE" - Removal of a Binding.
  5914  	Action string `json:"action,omitempty"`
  5915  	// Member: A single identity requesting access for a Cloud Platform resource,
  5916  	// for example, "foo@google.com".
  5917  	Member string `json:"member,omitempty"`
  5918  	// Role: Role that is assigned to "members". For example, "roles/viewer",
  5919  	// "roles/editor", or "roles/owner".
  5920  	Role string `json:"role,omitempty"`
  5921  	// ForceSendFields is a list of field names (e.g. "Action") to unconditionally
  5922  	// include in API requests. By default, fields with empty or default values are
  5923  	// omitted from API requests. See
  5924  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5925  	// details.
  5926  	ForceSendFields []string `json:"-"`
  5927  	// NullFields is a list of field names (e.g. "Action") to include in API
  5928  	// requests with the JSON null value. By default, fields with empty values are
  5929  	// omitted from API requests. See
  5930  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5931  	NullFields []string `json:"-"`
  5932  }
  5933  
  5934  func (s *GoogleCloudSecuritycenterV2IamBinding) MarshalJSON() ([]byte, error) {
  5935  	type NoMethod GoogleCloudSecuritycenterV2IamBinding
  5936  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5937  }
  5938  
  5939  // GoogleCloudSecuritycenterV2Indicator: Represents what's commonly known as an
  5940  // _indicator of compromise_ (IoC) in computer forensics. This is an artifact
  5941  // observed on a network or in an operating system that, with high confidence,
  5942  // indicates a computer intrusion. For more information, see Indicator of
  5943  // compromise (https://en.wikipedia.org/wiki/Indicator_of_compromise).
  5944  type GoogleCloudSecuritycenterV2Indicator struct {
  5945  	// Domains: List of domains associated to the Finding.
  5946  	Domains []string `json:"domains,omitempty"`
  5947  	// IpAddresses: The list of IP addresses that are associated with the finding.
  5948  	IpAddresses []string `json:"ipAddresses,omitempty"`
  5949  	// Signatures: The list of matched signatures indicating that the given process
  5950  	// is present in the environment.
  5951  	Signatures []*GoogleCloudSecuritycenterV2ProcessSignature `json:"signatures,omitempty"`
  5952  	// Uris: The list of URIs associated to the Findings.
  5953  	Uris []string `json:"uris,omitempty"`
  5954  	// ForceSendFields is a list of field names (e.g. "Domains") to unconditionally
  5955  	// include in API requests. By default, fields with empty or default values are
  5956  	// omitted from API requests. See
  5957  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5958  	// details.
  5959  	ForceSendFields []string `json:"-"`
  5960  	// NullFields is a list of field names (e.g. "Domains") to include in API
  5961  	// requests with the JSON null value. By default, fields with empty values are
  5962  	// omitted from API requests. See
  5963  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5964  	NullFields []string `json:"-"`
  5965  }
  5966  
  5967  func (s *GoogleCloudSecuritycenterV2Indicator) MarshalJSON() ([]byte, error) {
  5968  	type NoMethod GoogleCloudSecuritycenterV2Indicator
  5969  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5970  }
  5971  
  5972  // GoogleCloudSecuritycenterV2KernelRootkit: Kernel mode rootkit signatures.
  5973  type GoogleCloudSecuritycenterV2KernelRootkit struct {
  5974  	// Name: Rootkit name, when available.
  5975  	Name string `json:"name,omitempty"`
  5976  	// UnexpectedCodeModification: True if unexpected modifications of kernel code
  5977  	// memory are present.
  5978  	UnexpectedCodeModification bool `json:"unexpectedCodeModification,omitempty"`
  5979  	// UnexpectedFtraceHandler: True if `ftrace` points are present with callbacks
  5980  	// pointing to regions that are not in the expected kernel or module code
  5981  	// range.
  5982  	UnexpectedFtraceHandler bool `json:"unexpectedFtraceHandler,omitempty"`
  5983  	// UnexpectedInterruptHandler: True if interrupt handlers that are are not in
  5984  	// the expected kernel or module code regions are present.
  5985  	UnexpectedInterruptHandler bool `json:"unexpectedInterruptHandler,omitempty"`
  5986  	// UnexpectedKernelCodePages: True if kernel code pages that are not in the
  5987  	// expected kernel or module code regions are present.
  5988  	UnexpectedKernelCodePages bool `json:"unexpectedKernelCodePages,omitempty"`
  5989  	// UnexpectedKprobeHandler: True if `kprobe` points are present with callbacks
  5990  	// pointing to regions that are not in the expected kernel or module code
  5991  	// range.
  5992  	UnexpectedKprobeHandler bool `json:"unexpectedKprobeHandler,omitempty"`
  5993  	// UnexpectedProcessesInRunqueue: True if unexpected processes in the scheduler
  5994  	// run queue are present. Such processes are in the run queue, but not in the
  5995  	// process task list.
  5996  	UnexpectedProcessesInRunqueue bool `json:"unexpectedProcessesInRunqueue,omitempty"`
  5997  	// UnexpectedReadOnlyDataModification: True if unexpected modifications of
  5998  	// kernel read-only data memory are present.
  5999  	UnexpectedReadOnlyDataModification bool `json:"unexpectedReadOnlyDataModification,omitempty"`
  6000  	// UnexpectedSystemCallHandler: True if system call handlers that are are not
  6001  	// in the expected kernel or module code regions are present.
  6002  	UnexpectedSystemCallHandler bool `json:"unexpectedSystemCallHandler,omitempty"`
  6003  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  6004  	// include in API requests. By default, fields with empty or default values are
  6005  	// omitted from API requests. See
  6006  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6007  	// details.
  6008  	ForceSendFields []string `json:"-"`
  6009  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  6010  	// with the JSON null value. By default, fields with empty values are omitted
  6011  	// from API requests. See
  6012  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6013  	NullFields []string `json:"-"`
  6014  }
  6015  
  6016  func (s *GoogleCloudSecuritycenterV2KernelRootkit) MarshalJSON() ([]byte, error) {
  6017  	type NoMethod GoogleCloudSecuritycenterV2KernelRootkit
  6018  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6019  }
  6020  
  6021  // GoogleCloudSecuritycenterV2Kubernetes: Kubernetes-related attributes.
  6022  type GoogleCloudSecuritycenterV2Kubernetes struct {
  6023  	// AccessReviews: Provides information on any Kubernetes access reviews
  6024  	// (privilege checks) relevant to the finding.
  6025  	AccessReviews []*GoogleCloudSecuritycenterV2AccessReview `json:"accessReviews,omitempty"`
  6026  	// Bindings: Provides Kubernetes role binding information for findings that
  6027  	// involve RoleBindings or ClusterRoleBindings
  6028  	// (https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control).
  6029  	Bindings []*GoogleCloudSecuritycenterV2Binding `json:"bindings,omitempty"`
  6030  	// NodePools: GKE node pools
  6031  	// (https://cloud.google.com/kubernetes-engine/docs/concepts/node-pools)
  6032  	// associated with the finding. This field contains node pool information for
  6033  	// each node, when it is available.
  6034  	NodePools []*GoogleCloudSecuritycenterV2NodePool `json:"nodePools,omitempty"`
  6035  	// Nodes: Provides Kubernetes node
  6036  	// (https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture#nodes)
  6037  	// information.
  6038  	Nodes []*GoogleCloudSecuritycenterV2Node `json:"nodes,omitempty"`
  6039  	// Objects: Kubernetes objects related to the finding.
  6040  	Objects []*GoogleCloudSecuritycenterV2Object `json:"objects,omitempty"`
  6041  	// Pods: Kubernetes Pods
  6042  	// (https://cloud.google.com/kubernetes-engine/docs/concepts/pod) associated
  6043  	// with the finding. This field contains Pod records for each container that is
  6044  	// owned by a Pod.
  6045  	Pods []*GoogleCloudSecuritycenterV2Pod `json:"pods,omitempty"`
  6046  	// Roles: Provides Kubernetes role information for findings that involve Roles
  6047  	// or ClusterRoles
  6048  	// (https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control).
  6049  	Roles []*GoogleCloudSecuritycenterV2Role `json:"roles,omitempty"`
  6050  	// ForceSendFields is a list of field names (e.g. "AccessReviews") to
  6051  	// unconditionally include in API requests. By default, fields with empty or
  6052  	// default values are omitted from API requests. See
  6053  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6054  	// details.
  6055  	ForceSendFields []string `json:"-"`
  6056  	// NullFields is a list of field names (e.g. "AccessReviews") to include in API
  6057  	// requests with the JSON null value. By default, fields with empty values are
  6058  	// omitted from API requests. See
  6059  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6060  	NullFields []string `json:"-"`
  6061  }
  6062  
  6063  func (s *GoogleCloudSecuritycenterV2Kubernetes) MarshalJSON() ([]byte, error) {
  6064  	type NoMethod GoogleCloudSecuritycenterV2Kubernetes
  6065  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6066  }
  6067  
  6068  // GoogleCloudSecuritycenterV2Label: Represents a generic name-value label. A
  6069  // label has separate name and value fields to support filtering with the
  6070  // `contains()` function. For more information, see Filtering on array-type
  6071  // fields
  6072  // (https://cloud.google.com/security-command-center/docs/how-to-api-list-findings#array-contains-filtering).
  6073  type GoogleCloudSecuritycenterV2Label struct {
  6074  	// Name: Name of the label.
  6075  	Name string `json:"name,omitempty"`
  6076  	// Value: Value that corresponds to the label's name.
  6077  	Value string `json:"value,omitempty"`
  6078  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  6079  	// include in API requests. By default, fields with empty or default values are
  6080  	// omitted from API requests. See
  6081  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6082  	// details.
  6083  	ForceSendFields []string `json:"-"`
  6084  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  6085  	// with the JSON null value. By default, fields with empty values are omitted
  6086  	// from API requests. See
  6087  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6088  	NullFields []string `json:"-"`
  6089  }
  6090  
  6091  func (s *GoogleCloudSecuritycenterV2Label) MarshalJSON() ([]byte, error) {
  6092  	type NoMethod GoogleCloudSecuritycenterV2Label
  6093  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6094  }
  6095  
  6096  // GoogleCloudSecuritycenterV2LoadBalancer: Contains information related to the
  6097  // load balancer associated with the finding.
  6098  type GoogleCloudSecuritycenterV2LoadBalancer struct {
  6099  	// Name: The name of the load balancer associated with the finding.
  6100  	Name string `json:"name,omitempty"`
  6101  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  6102  	// include in API requests. By default, fields with empty or default values are
  6103  	// omitted from API requests. See
  6104  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6105  	// details.
  6106  	ForceSendFields []string `json:"-"`
  6107  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  6108  	// with the JSON null value. By default, fields with empty values are omitted
  6109  	// from API requests. See
  6110  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6111  	NullFields []string `json:"-"`
  6112  }
  6113  
  6114  func (s *GoogleCloudSecuritycenterV2LoadBalancer) MarshalJSON() ([]byte, error) {
  6115  	type NoMethod GoogleCloudSecuritycenterV2LoadBalancer
  6116  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6117  }
  6118  
  6119  // GoogleCloudSecuritycenterV2LogEntry: An individual entry in a log.
  6120  type GoogleCloudSecuritycenterV2LogEntry struct {
  6121  	// CloudLoggingEntry: An individual entry in a log stored in Cloud Logging.
  6122  	CloudLoggingEntry *GoogleCloudSecuritycenterV2CloudLoggingEntry `json:"cloudLoggingEntry,omitempty"`
  6123  	// ForceSendFields is a list of field names (e.g. "CloudLoggingEntry") to
  6124  	// unconditionally include in API requests. By default, fields with empty or
  6125  	// default values are omitted from API requests. See
  6126  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6127  	// details.
  6128  	ForceSendFields []string `json:"-"`
  6129  	// NullFields is a list of field names (e.g. "CloudLoggingEntry") to include in
  6130  	// API requests with the JSON null value. By default, fields with empty values
  6131  	// are omitted from API requests. See
  6132  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6133  	NullFields []string `json:"-"`
  6134  }
  6135  
  6136  func (s *GoogleCloudSecuritycenterV2LogEntry) MarshalJSON() ([]byte, error) {
  6137  	type NoMethod GoogleCloudSecuritycenterV2LogEntry
  6138  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6139  }
  6140  
  6141  // GoogleCloudSecuritycenterV2MemoryHashSignature: A signature corresponding to
  6142  // memory page hashes.
  6143  type GoogleCloudSecuritycenterV2MemoryHashSignature struct {
  6144  	// BinaryFamily: The binary family.
  6145  	BinaryFamily string `json:"binaryFamily,omitempty"`
  6146  	// Detections: The list of memory hash detections contributing to the binary
  6147  	// family match.
  6148  	Detections []*GoogleCloudSecuritycenterV2Detection `json:"detections,omitempty"`
  6149  	// ForceSendFields is a list of field names (e.g. "BinaryFamily") to
  6150  	// unconditionally include in API requests. By default, fields with empty or
  6151  	// default values are omitted from API requests. See
  6152  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6153  	// details.
  6154  	ForceSendFields []string `json:"-"`
  6155  	// NullFields is a list of field names (e.g. "BinaryFamily") to include in API
  6156  	// requests with the JSON null value. By default, fields with empty values are
  6157  	// omitted from API requests. See
  6158  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6159  	NullFields []string `json:"-"`
  6160  }
  6161  
  6162  func (s *GoogleCloudSecuritycenterV2MemoryHashSignature) MarshalJSON() ([]byte, error) {
  6163  	type NoMethod GoogleCloudSecuritycenterV2MemoryHashSignature
  6164  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6165  }
  6166  
  6167  // GoogleCloudSecuritycenterV2MitreAttack: MITRE ATT&CK tactics and techniques
  6168  // related to this finding. See: https://attack.mitre.org
  6169  type GoogleCloudSecuritycenterV2MitreAttack struct {
  6170  	// AdditionalTactics: Additional MITRE ATT&CK tactics related to this finding,
  6171  	// if any.
  6172  	//
  6173  	// Possible values:
  6174  	//   "TACTIC_UNSPECIFIED" - Unspecified value.
  6175  	//   "RECONNAISSANCE" - TA0043
  6176  	//   "RESOURCE_DEVELOPMENT" - TA0042
  6177  	//   "INITIAL_ACCESS" - TA0001
  6178  	//   "EXECUTION" - TA0002
  6179  	//   "PERSISTENCE" - TA0003
  6180  	//   "PRIVILEGE_ESCALATION" - TA0004
  6181  	//   "DEFENSE_EVASION" - TA0005
  6182  	//   "CREDENTIAL_ACCESS" - TA0006
  6183  	//   "DISCOVERY" - TA0007
  6184  	//   "LATERAL_MOVEMENT" - TA0008
  6185  	//   "COLLECTION" - TA0009
  6186  	//   "COMMAND_AND_CONTROL" - TA0011
  6187  	//   "EXFILTRATION" - TA0010
  6188  	//   "IMPACT" - TA0040
  6189  	AdditionalTactics []string `json:"additionalTactics,omitempty"`
  6190  	// AdditionalTechniques: Additional MITRE ATT&CK techniques related to this
  6191  	// finding, if any, along with any of their respective parent techniques.
  6192  	//
  6193  	// Possible values:
  6194  	//   "TECHNIQUE_UNSPECIFIED" - Unspecified value.
  6195  	//   "MASQUERADING" - T1036
  6196  	//   "MATCH_LEGITIMATE_NAME_OR_LOCATION" - T1036.005
  6197  	//   "BOOT_OR_LOGON_INITIALIZATION_SCRIPTS" - T1037
  6198  	//   "STARTUP_ITEMS" - T1037.005
  6199  	//   "NETWORK_SERVICE_DISCOVERY" - T1046
  6200  	//   "PROCESS_DISCOVERY" - T1057
  6201  	//   "COMMAND_AND_SCRIPTING_INTERPRETER" - T1059
  6202  	//   "UNIX_SHELL" - T1059.004
  6203  	//   "PYTHON" - T1059.006
  6204  	//   "PERMISSION_GROUPS_DISCOVERY" - T1069
  6205  	//   "CLOUD_GROUPS" - T1069.003
  6206  	//   "APPLICATION_LAYER_PROTOCOL" - T1071
  6207  	//   "DNS" - T1071.004
  6208  	//   "SOFTWARE_DEPLOYMENT_TOOLS" - T1072
  6209  	//   "VALID_ACCOUNTS" - T1078
  6210  	//   "DEFAULT_ACCOUNTS" - T1078.001
  6211  	//   "LOCAL_ACCOUNTS" - T1078.003
  6212  	//   "CLOUD_ACCOUNTS" - T1078.004
  6213  	//   "PROXY" - T1090
  6214  	//   "EXTERNAL_PROXY" - T1090.002
  6215  	//   "MULTI_HOP_PROXY" - T1090.003
  6216  	//   "ACCOUNT_MANIPULATION" - T1098
  6217  	//   "ADDITIONAL_CLOUD_CREDENTIALS" - T1098.001
  6218  	//   "SSH_AUTHORIZED_KEYS" - T1098.004
  6219  	//   "ADDITIONAL_CONTAINER_CLUSTER_ROLES" - T1098.006
  6220  	//   "INGRESS_TOOL_TRANSFER" - T1105
  6221  	//   "NATIVE_API" - T1106
  6222  	//   "BRUTE_FORCE" - T1110
  6223  	//   "SHARED_MODULES" - T1129
  6224  	//   "ACCESS_TOKEN_MANIPULATION" - T1134
  6225  	//   "TOKEN_IMPERSONATION_OR_THEFT" - T1134.001
  6226  	//   "EXPLOIT_PUBLIC_FACING_APPLICATION" - T1190
  6227  	//   "DOMAIN_POLICY_MODIFICATION" - T1484
  6228  	//   "DATA_DESTRUCTION" - T1485
  6229  	//   "SERVICE_STOP" - T1489
  6230  	//   "INHIBIT_SYSTEM_RECOVERY" - T1490
  6231  	//   "RESOURCE_HIJACKING" - T1496
  6232  	//   "NETWORK_DENIAL_OF_SERVICE" - T1498
  6233  	//   "CLOUD_SERVICE_DISCOVERY" - T1526
  6234  	//   "STEAL_APPLICATION_ACCESS_TOKEN" - T1528
  6235  	//   "ACCOUNT_ACCESS_REMOVAL" - T1531
  6236  	//   "STEAL_WEB_SESSION_COOKIE" - T1539
  6237  	//   "CREATE_OR_MODIFY_SYSTEM_PROCESS" - T1543
  6238  	//   "ABUSE_ELEVATION_CONTROL_MECHANISM" - T1548
  6239  	//   "UNSECURED_CREDENTIALS" - T1552
  6240  	//   "MODIFY_AUTHENTICATION_PROCESS" - T1556
  6241  	//   "IMPAIR_DEFENSES" - T1562
  6242  	//   "DISABLE_OR_MODIFY_TOOLS" - T1562.001
  6243  	//   "EXFILTRATION_OVER_WEB_SERVICE" - T1567
  6244  	//   "EXFILTRATION_TO_CLOUD_STORAGE" - T1567.002
  6245  	//   "DYNAMIC_RESOLUTION" - T1568
  6246  	//   "LATERAL_TOOL_TRANSFER" - T1570
  6247  	//   "MODIFY_CLOUD_COMPUTE_INFRASTRUCTURE" - T1578
  6248  	//   "CREATE_SNAPSHOT" - T1578.001
  6249  	//   "CLOUD_INFRASTRUCTURE_DISCOVERY" - T1580
  6250  	//   "OBTAIN_CAPABILITIES" - T1588
  6251  	//   "ACTIVE_SCANNING" - T1595
  6252  	//   "SCANNING_IP_BLOCKS" - T1595.001
  6253  	//   "CONTAINER_AND_RESOURCE_DISCOVERY" - T1613
  6254  	AdditionalTechniques []string `json:"additionalTechniques,omitempty"`
  6255  	// PrimaryTactic: The MITRE ATT&CK tactic most closely represented by this
  6256  	// finding, if any.
  6257  	//
  6258  	// Possible values:
  6259  	//   "TACTIC_UNSPECIFIED" - Unspecified value.
  6260  	//   "RECONNAISSANCE" - TA0043
  6261  	//   "RESOURCE_DEVELOPMENT" - TA0042
  6262  	//   "INITIAL_ACCESS" - TA0001
  6263  	//   "EXECUTION" - TA0002
  6264  	//   "PERSISTENCE" - TA0003
  6265  	//   "PRIVILEGE_ESCALATION" - TA0004
  6266  	//   "DEFENSE_EVASION" - TA0005
  6267  	//   "CREDENTIAL_ACCESS" - TA0006
  6268  	//   "DISCOVERY" - TA0007
  6269  	//   "LATERAL_MOVEMENT" - TA0008
  6270  	//   "COLLECTION" - TA0009
  6271  	//   "COMMAND_AND_CONTROL" - TA0011
  6272  	//   "EXFILTRATION" - TA0010
  6273  	//   "IMPACT" - TA0040
  6274  	PrimaryTactic string `json:"primaryTactic,omitempty"`
  6275  	// PrimaryTechniques: The MITRE ATT&CK technique most closely represented by
  6276  	// this finding, if any. primary_techniques is a repeated field because there
  6277  	// are multiple levels of MITRE ATT&CK techniques. If the technique most
  6278  	// closely represented by this finding is a sub-technique (e.g.
  6279  	// `SCANNING_IP_BLOCKS`), both the sub-technique and its parent technique(s)
  6280  	// will be listed (e.g. `SCANNING_IP_BLOCKS`, `ACTIVE_SCANNING`).
  6281  	//
  6282  	// Possible values:
  6283  	//   "TECHNIQUE_UNSPECIFIED" - Unspecified value.
  6284  	//   "MASQUERADING" - T1036
  6285  	//   "MATCH_LEGITIMATE_NAME_OR_LOCATION" - T1036.005
  6286  	//   "BOOT_OR_LOGON_INITIALIZATION_SCRIPTS" - T1037
  6287  	//   "STARTUP_ITEMS" - T1037.005
  6288  	//   "NETWORK_SERVICE_DISCOVERY" - T1046
  6289  	//   "PROCESS_DISCOVERY" - T1057
  6290  	//   "COMMAND_AND_SCRIPTING_INTERPRETER" - T1059
  6291  	//   "UNIX_SHELL" - T1059.004
  6292  	//   "PYTHON" - T1059.006
  6293  	//   "PERMISSION_GROUPS_DISCOVERY" - T1069
  6294  	//   "CLOUD_GROUPS" - T1069.003
  6295  	//   "APPLICATION_LAYER_PROTOCOL" - T1071
  6296  	//   "DNS" - T1071.004
  6297  	//   "SOFTWARE_DEPLOYMENT_TOOLS" - T1072
  6298  	//   "VALID_ACCOUNTS" - T1078
  6299  	//   "DEFAULT_ACCOUNTS" - T1078.001
  6300  	//   "LOCAL_ACCOUNTS" - T1078.003
  6301  	//   "CLOUD_ACCOUNTS" - T1078.004
  6302  	//   "PROXY" - T1090
  6303  	//   "EXTERNAL_PROXY" - T1090.002
  6304  	//   "MULTI_HOP_PROXY" - T1090.003
  6305  	//   "ACCOUNT_MANIPULATION" - T1098
  6306  	//   "ADDITIONAL_CLOUD_CREDENTIALS" - T1098.001
  6307  	//   "SSH_AUTHORIZED_KEYS" - T1098.004
  6308  	//   "ADDITIONAL_CONTAINER_CLUSTER_ROLES" - T1098.006
  6309  	//   "INGRESS_TOOL_TRANSFER" - T1105
  6310  	//   "NATIVE_API" - T1106
  6311  	//   "BRUTE_FORCE" - T1110
  6312  	//   "SHARED_MODULES" - T1129
  6313  	//   "ACCESS_TOKEN_MANIPULATION" - T1134
  6314  	//   "TOKEN_IMPERSONATION_OR_THEFT" - T1134.001
  6315  	//   "EXPLOIT_PUBLIC_FACING_APPLICATION" - T1190
  6316  	//   "DOMAIN_POLICY_MODIFICATION" - T1484
  6317  	//   "DATA_DESTRUCTION" - T1485
  6318  	//   "SERVICE_STOP" - T1489
  6319  	//   "INHIBIT_SYSTEM_RECOVERY" - T1490
  6320  	//   "RESOURCE_HIJACKING" - T1496
  6321  	//   "NETWORK_DENIAL_OF_SERVICE" - T1498
  6322  	//   "CLOUD_SERVICE_DISCOVERY" - T1526
  6323  	//   "STEAL_APPLICATION_ACCESS_TOKEN" - T1528
  6324  	//   "ACCOUNT_ACCESS_REMOVAL" - T1531
  6325  	//   "STEAL_WEB_SESSION_COOKIE" - T1539
  6326  	//   "CREATE_OR_MODIFY_SYSTEM_PROCESS" - T1543
  6327  	//   "ABUSE_ELEVATION_CONTROL_MECHANISM" - T1548
  6328  	//   "UNSECURED_CREDENTIALS" - T1552
  6329  	//   "MODIFY_AUTHENTICATION_PROCESS" - T1556
  6330  	//   "IMPAIR_DEFENSES" - T1562
  6331  	//   "DISABLE_OR_MODIFY_TOOLS" - T1562.001
  6332  	//   "EXFILTRATION_OVER_WEB_SERVICE" - T1567
  6333  	//   "EXFILTRATION_TO_CLOUD_STORAGE" - T1567.002
  6334  	//   "DYNAMIC_RESOLUTION" - T1568
  6335  	//   "LATERAL_TOOL_TRANSFER" - T1570
  6336  	//   "MODIFY_CLOUD_COMPUTE_INFRASTRUCTURE" - T1578
  6337  	//   "CREATE_SNAPSHOT" - T1578.001
  6338  	//   "CLOUD_INFRASTRUCTURE_DISCOVERY" - T1580
  6339  	//   "OBTAIN_CAPABILITIES" - T1588
  6340  	//   "ACTIVE_SCANNING" - T1595
  6341  	//   "SCANNING_IP_BLOCKS" - T1595.001
  6342  	//   "CONTAINER_AND_RESOURCE_DISCOVERY" - T1613
  6343  	PrimaryTechniques []string `json:"primaryTechniques,omitempty"`
  6344  	// Version: The MITRE ATT&CK version referenced by the above fields. E.g. "8".
  6345  	Version string `json:"version,omitempty"`
  6346  	// ForceSendFields is a list of field names (e.g. "AdditionalTactics") to
  6347  	// unconditionally include in API requests. By default, fields with empty or
  6348  	// default values are omitted from API requests. See
  6349  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6350  	// details.
  6351  	ForceSendFields []string `json:"-"`
  6352  	// NullFields is a list of field names (e.g. "AdditionalTactics") to include in
  6353  	// API requests with the JSON null value. By default, fields with empty values
  6354  	// are omitted from API requests. See
  6355  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6356  	NullFields []string `json:"-"`
  6357  }
  6358  
  6359  func (s *GoogleCloudSecuritycenterV2MitreAttack) MarshalJSON() ([]byte, error) {
  6360  	type NoMethod GoogleCloudSecuritycenterV2MitreAttack
  6361  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6362  }
  6363  
  6364  // GoogleCloudSecuritycenterV2MuteConfig: A mute config is a Cloud SCC resource
  6365  // that contains the configuration to mute create/update events of findings.
  6366  type GoogleCloudSecuritycenterV2MuteConfig struct {
  6367  	// CreateTime: Output only. The time at which the mute config was created. This
  6368  	// field is set by the server and will be ignored if provided on config
  6369  	// creation.
  6370  	CreateTime string `json:"createTime,omitempty"`
  6371  	// Description: A description of the mute config.
  6372  	Description string `json:"description,omitempty"`
  6373  	// Filter: Required. An expression that defines the filter to apply across
  6374  	// create/update events of findings. While creating a filter string, be mindful
  6375  	// of the scope in which the mute configuration is being created. E.g., If a
  6376  	// filter contains project = X but is created under the project = Y scope, it
  6377  	// might not match any findings. The following field and operator combinations
  6378  	// are supported: * severity: `=`, `:` * category: `=`, `:` * resource.name:
  6379  	// `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name:
  6380  	// `=`, `:` * resource.folders.resource_folder: `=`, `:` *
  6381  	// resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` *
  6382  	// resource.type: `=`, `:` * finding_class: `=`, `:` * indicator.ip_addresses:
  6383  	// `=`, `:` * indicator.domains: `=`, `:`
  6384  	Filter string `json:"filter,omitempty"`
  6385  	// MostRecentEditor: Output only. Email address of the user who last edited the
  6386  	// mute config. This field is set by the server and will be ignored if provided
  6387  	// on config creation or update.
  6388  	MostRecentEditor string `json:"mostRecentEditor,omitempty"`
  6389  	// Name: This field will be ignored if provided on config creation. The
  6390  	// following list shows some examples of the format: +
  6391  	// `organizations/{organization}/muteConfigs/{mute_config}` +
  6392  	// `organizations/{organization}locations/{location}//muteConfigs/{mute_config}`
  6393  	//  + `folders/{folder}/muteConfigs/{mute_config}` +
  6394  	// `folders/{folder}/locations/{location}/muteConfigs/{mute_config}` +
  6395  	// `projects/{project}/muteConfigs/{mute_config}` +
  6396  	// `projects/{project}/locations/{location}/muteConfigs/{mute_config}`
  6397  	Name string `json:"name,omitempty"`
  6398  	// Type: Required. The type of the mute config, which determines what type of
  6399  	// mute state the config affects. Immutable after creation.
  6400  	//
  6401  	// Possible values:
  6402  	//   "MUTE_CONFIG_TYPE_UNSPECIFIED" - Unused.
  6403  	//   "STATIC" - A static mute config, which sets the static mute state of
  6404  	// future matching findings to muted. Once the static mute state has been set,
  6405  	// finding or config modifications will not affect the state.
  6406  	Type string `json:"type,omitempty"`
  6407  	// UpdateTime: Output only. The most recent time at which the mute config was
  6408  	// updated. This field is set by the server and will be ignored if provided on
  6409  	// config creation or update.
  6410  	UpdateTime string `json:"updateTime,omitempty"`
  6411  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  6412  	// unconditionally include in API requests. By default, fields with empty or
  6413  	// default values are omitted from API requests. See
  6414  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6415  	// details.
  6416  	ForceSendFields []string `json:"-"`
  6417  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  6418  	// requests with the JSON null value. By default, fields with empty values are
  6419  	// omitted from API requests. See
  6420  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6421  	NullFields []string `json:"-"`
  6422  }
  6423  
  6424  func (s *GoogleCloudSecuritycenterV2MuteConfig) MarshalJSON() ([]byte, error) {
  6425  	type NoMethod GoogleCloudSecuritycenterV2MuteConfig
  6426  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6427  }
  6428  
  6429  // GoogleCloudSecuritycenterV2Node: Kubernetes nodes associated with the
  6430  // finding.
  6431  type GoogleCloudSecuritycenterV2Node struct {
  6432  	// Name: Full resource name (https://google.aip.dev/122#full-resource-names) of
  6433  	// the Compute Engine VM running the cluster node.
  6434  	Name string `json:"name,omitempty"`
  6435  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  6436  	// include in API requests. By default, fields with empty or default values are
  6437  	// omitted from API requests. See
  6438  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6439  	// details.
  6440  	ForceSendFields []string `json:"-"`
  6441  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  6442  	// with the JSON null value. By default, fields with empty values are omitted
  6443  	// from API requests. See
  6444  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6445  	NullFields []string `json:"-"`
  6446  }
  6447  
  6448  func (s *GoogleCloudSecuritycenterV2Node) MarshalJSON() ([]byte, error) {
  6449  	type NoMethod GoogleCloudSecuritycenterV2Node
  6450  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6451  }
  6452  
  6453  // GoogleCloudSecuritycenterV2NodePool: Provides GKE node pool information.
  6454  type GoogleCloudSecuritycenterV2NodePool struct {
  6455  	// Name: Kubernetes node pool name.
  6456  	Name string `json:"name,omitempty"`
  6457  	// Nodes: Nodes associated with the finding.
  6458  	Nodes []*GoogleCloudSecuritycenterV2Node `json:"nodes,omitempty"`
  6459  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  6460  	// include in API requests. By default, fields with empty or default values are
  6461  	// omitted from API requests. See
  6462  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6463  	// details.
  6464  	ForceSendFields []string `json:"-"`
  6465  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  6466  	// with the JSON null value. By default, fields with empty values are omitted
  6467  	// from API requests. See
  6468  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6469  	NullFields []string `json:"-"`
  6470  }
  6471  
  6472  func (s *GoogleCloudSecuritycenterV2NodePool) MarshalJSON() ([]byte, error) {
  6473  	type NoMethod GoogleCloudSecuritycenterV2NodePool
  6474  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6475  }
  6476  
  6477  // GoogleCloudSecuritycenterV2Notebook: Represents a Jupyter notebook IPYNB
  6478  // file, such as a Colab Enterprise notebook
  6479  // (https://cloud.google.com/colab/docs/introduction) file, that is associated
  6480  // with a finding.
  6481  type GoogleCloudSecuritycenterV2Notebook struct {
  6482  	// LastAuthor: The user ID of the latest author to modify the notebook.
  6483  	LastAuthor string `json:"lastAuthor,omitempty"`
  6484  	// Name: The name of the notebook.
  6485  	Name string `json:"name,omitempty"`
  6486  	// NotebookUpdateTime: The most recent time the notebook was updated.
  6487  	NotebookUpdateTime string `json:"notebookUpdateTime,omitempty"`
  6488  	// Service: The source notebook service, for example, "Colab Enterprise".
  6489  	Service string `json:"service,omitempty"`
  6490  	// ForceSendFields is a list of field names (e.g. "LastAuthor") to
  6491  	// unconditionally include in API requests. By default, fields with empty or
  6492  	// default values are omitted from API requests. See
  6493  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6494  	// details.
  6495  	ForceSendFields []string `json:"-"`
  6496  	// NullFields is a list of field names (e.g. "LastAuthor") to include in API
  6497  	// requests with the JSON null value. By default, fields with empty values are
  6498  	// omitted from API requests. See
  6499  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6500  	NullFields []string `json:"-"`
  6501  }
  6502  
  6503  func (s *GoogleCloudSecuritycenterV2Notebook) MarshalJSON() ([]byte, error) {
  6504  	type NoMethod GoogleCloudSecuritycenterV2Notebook
  6505  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6506  }
  6507  
  6508  // GoogleCloudSecuritycenterV2NotificationMessage: Cloud SCC's Notification
  6509  type GoogleCloudSecuritycenterV2NotificationMessage struct {
  6510  	// Finding: If it's a Finding based notification config, this field will be
  6511  	// populated.
  6512  	Finding *GoogleCloudSecuritycenterV2Finding `json:"finding,omitempty"`
  6513  	// NotificationConfigName: Name of the notification config that generated
  6514  	// current notification.
  6515  	NotificationConfigName string `json:"notificationConfigName,omitempty"`
  6516  	// Resource: The Cloud resource tied to this notification's Finding.
  6517  	Resource *GoogleCloudSecuritycenterV2Resource `json:"resource,omitempty"`
  6518  	// ForceSendFields is a list of field names (e.g. "Finding") to unconditionally
  6519  	// include in API requests. By default, fields with empty or default values are
  6520  	// omitted from API requests. See
  6521  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6522  	// details.
  6523  	ForceSendFields []string `json:"-"`
  6524  	// NullFields is a list of field names (e.g. "Finding") to include in API
  6525  	// requests with the JSON null value. By default, fields with empty values are
  6526  	// omitted from API requests. See
  6527  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6528  	NullFields []string `json:"-"`
  6529  }
  6530  
  6531  func (s *GoogleCloudSecuritycenterV2NotificationMessage) MarshalJSON() ([]byte, error) {
  6532  	type NoMethod GoogleCloudSecuritycenterV2NotificationMessage
  6533  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6534  }
  6535  
  6536  // GoogleCloudSecuritycenterV2Object: Kubernetes object related to the finding,
  6537  // uniquely identified by GKNN. Used if the object Kind is not one of Pod,
  6538  // Node, NodePool, Binding, or AccessReview.
  6539  type GoogleCloudSecuritycenterV2Object struct {
  6540  	// Containers: Pod containers associated with this finding, if any.
  6541  	Containers []*GoogleCloudSecuritycenterV2Container `json:"containers,omitempty"`
  6542  	// Group: Kubernetes object group, such as "policy.k8s.io/v1".
  6543  	Group string `json:"group,omitempty"`
  6544  	// Kind: Kubernetes object kind, such as "Namespace".
  6545  	Kind string `json:"kind,omitempty"`
  6546  	// Name: Kubernetes object name. For details see
  6547  	// https://kubernetes.io/docs/concepts/overview/working-with-objects/names/.
  6548  	Name string `json:"name,omitempty"`
  6549  	// Ns: Kubernetes object namespace. Must be a valid DNS label. Named "ns" to
  6550  	// avoid collision with C++ namespace keyword. For details see
  6551  	// https://kubernetes.io/docs/tasks/administer-cluster/namespaces/.
  6552  	Ns string `json:"ns,omitempty"`
  6553  	// ForceSendFields is a list of field names (e.g. "Containers") to
  6554  	// unconditionally include in API requests. By default, fields with empty or
  6555  	// default values are omitted from API requests. See
  6556  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6557  	// details.
  6558  	ForceSendFields []string `json:"-"`
  6559  	// NullFields is a list of field names (e.g. "Containers") to include in API
  6560  	// requests with the JSON null value. By default, fields with empty values are
  6561  	// omitted from API requests. See
  6562  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6563  	NullFields []string `json:"-"`
  6564  }
  6565  
  6566  func (s *GoogleCloudSecuritycenterV2Object) MarshalJSON() ([]byte, error) {
  6567  	type NoMethod GoogleCloudSecuritycenterV2Object
  6568  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6569  }
  6570  
  6571  // GoogleCloudSecuritycenterV2OrgPolicy: Contains information about the org
  6572  // policies associated with the finding.
  6573  type GoogleCloudSecuritycenterV2OrgPolicy struct {
  6574  	// Name: The resource name of the org policy. Example:
  6575  	// "organizations/{organization_id}/policies/{constraint_name}"
  6576  	Name string `json:"name,omitempty"`
  6577  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  6578  	// include in API requests. By default, fields with empty or default values are
  6579  	// omitted from API requests. See
  6580  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6581  	// details.
  6582  	ForceSendFields []string `json:"-"`
  6583  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  6584  	// with the JSON null value. By default, fields with empty values are omitted
  6585  	// from API requests. See
  6586  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6587  	NullFields []string `json:"-"`
  6588  }
  6589  
  6590  func (s *GoogleCloudSecuritycenterV2OrgPolicy) MarshalJSON() ([]byte, error) {
  6591  	type NoMethod GoogleCloudSecuritycenterV2OrgPolicy
  6592  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6593  }
  6594  
  6595  // GoogleCloudSecuritycenterV2Package: Package is a generic definition of a
  6596  // package.
  6597  type GoogleCloudSecuritycenterV2Package struct {
  6598  	// CpeUri: The CPE URI where the vulnerability was detected.
  6599  	CpeUri string `json:"cpeUri,omitempty"`
  6600  	// PackageName: The name of the package where the vulnerability was detected.
  6601  	PackageName string `json:"packageName,omitempty"`
  6602  	// PackageType: Type of package, for example, os, maven, or go.
  6603  	PackageType string `json:"packageType,omitempty"`
  6604  	// PackageVersion: The version of the package.
  6605  	PackageVersion string `json:"packageVersion,omitempty"`
  6606  	// ForceSendFields is a list of field names (e.g. "CpeUri") to unconditionally
  6607  	// include in API requests. By default, fields with empty or default values are
  6608  	// omitted from API requests. See
  6609  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6610  	// details.
  6611  	ForceSendFields []string `json:"-"`
  6612  	// NullFields is a list of field names (e.g. "CpeUri") to include in API
  6613  	// requests with the JSON null value. By default, fields with empty values are
  6614  	// omitted from API requests. See
  6615  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6616  	NullFields []string `json:"-"`
  6617  }
  6618  
  6619  func (s *GoogleCloudSecuritycenterV2Package) MarshalJSON() ([]byte, error) {
  6620  	type NoMethod GoogleCloudSecuritycenterV2Package
  6621  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6622  }
  6623  
  6624  // GoogleCloudSecuritycenterV2Pod: A Kubernetes Pod.
  6625  type GoogleCloudSecuritycenterV2Pod struct {
  6626  	// Containers: Pod containers associated with this finding, if any.
  6627  	Containers []*GoogleCloudSecuritycenterV2Container `json:"containers,omitempty"`
  6628  	// Labels: Pod labels. For Kubernetes containers, these are applied to the
  6629  	// container.
  6630  	Labels []*GoogleCloudSecuritycenterV2Label `json:"labels,omitempty"`
  6631  	// Name: Kubernetes Pod name.
  6632  	Name string `json:"name,omitempty"`
  6633  	// Ns: Kubernetes Pod namespace.
  6634  	Ns string `json:"ns,omitempty"`
  6635  	// ForceSendFields is a list of field names (e.g. "Containers") to
  6636  	// unconditionally include in API requests. By default, fields with empty or
  6637  	// default values are omitted from API requests. See
  6638  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6639  	// details.
  6640  	ForceSendFields []string `json:"-"`
  6641  	// NullFields is a list of field names (e.g. "Containers") to include in API
  6642  	// requests with the JSON null value. By default, fields with empty values are
  6643  	// omitted from API requests. See
  6644  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6645  	NullFields []string `json:"-"`
  6646  }
  6647  
  6648  func (s *GoogleCloudSecuritycenterV2Pod) MarshalJSON() ([]byte, error) {
  6649  	type NoMethod GoogleCloudSecuritycenterV2Pod
  6650  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6651  }
  6652  
  6653  // GoogleCloudSecuritycenterV2PolicyDriftDetails: The policy field that
  6654  // violates the deployed posture and its expected and detected values.
  6655  type GoogleCloudSecuritycenterV2PolicyDriftDetails struct {
  6656  	// DetectedValue: The detected value that violates the deployed posture, for
  6657  	// example, `false` or `allowed_values={"projects/22831892"}`.
  6658  	DetectedValue string `json:"detectedValue,omitempty"`
  6659  	// ExpectedValue: The value of this field that was configured in a posture, for
  6660  	// example, `true` or `allowed_values={"projects/29831892"}`.
  6661  	ExpectedValue string `json:"expectedValue,omitempty"`
  6662  	// Field: The name of the updated field, for example
  6663  	// constraint.implementation.policy_rules[0].enforce
  6664  	Field string `json:"field,omitempty"`
  6665  	// ForceSendFields is a list of field names (e.g. "DetectedValue") to
  6666  	// unconditionally include in API requests. By default, fields with empty or
  6667  	// default values are omitted from API requests. See
  6668  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6669  	// details.
  6670  	ForceSendFields []string `json:"-"`
  6671  	// NullFields is a list of field names (e.g. "DetectedValue") to include in API
  6672  	// requests with the JSON null value. By default, fields with empty values are
  6673  	// omitted from API requests. See
  6674  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6675  	NullFields []string `json:"-"`
  6676  }
  6677  
  6678  func (s *GoogleCloudSecuritycenterV2PolicyDriftDetails) MarshalJSON() ([]byte, error) {
  6679  	type NoMethod GoogleCloudSecuritycenterV2PolicyDriftDetails
  6680  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6681  }
  6682  
  6683  // GoogleCloudSecuritycenterV2Process: Represents an operating system process.
  6684  type GoogleCloudSecuritycenterV2Process struct {
  6685  	// Args: Process arguments as JSON encoded strings.
  6686  	Args []string `json:"args,omitempty"`
  6687  	// ArgumentsTruncated: True if `args` is incomplete.
  6688  	ArgumentsTruncated bool `json:"argumentsTruncated,omitempty"`
  6689  	// Binary: File information for the process executable.
  6690  	Binary *GoogleCloudSecuritycenterV2File `json:"binary,omitempty"`
  6691  	// EnvVariables: Process environment variables.
  6692  	EnvVariables []*GoogleCloudSecuritycenterV2EnvironmentVariable `json:"envVariables,omitempty"`
  6693  	// EnvVariablesTruncated: True if `env_variables` is incomplete.
  6694  	EnvVariablesTruncated bool `json:"envVariablesTruncated,omitempty"`
  6695  	// Libraries: File information for libraries loaded by the process.
  6696  	Libraries []*GoogleCloudSecuritycenterV2File `json:"libraries,omitempty"`
  6697  	// Name: The process name, as displayed in utilities like `top` and `ps`. This
  6698  	// name can be accessed through `/proc/[pid]/comm` and changed with
  6699  	// `prctl(PR_SET_NAME)`.
  6700  	Name string `json:"name,omitempty"`
  6701  	// ParentPid: The parent process ID.
  6702  	ParentPid int64 `json:"parentPid,omitempty,string"`
  6703  	// Pid: The process ID.
  6704  	Pid int64 `json:"pid,omitempty,string"`
  6705  	// Script: When the process represents the invocation of a script, `binary`
  6706  	// provides information about the interpreter, while `script` provides
  6707  	// information about the script file provided to the interpreter.
  6708  	Script *GoogleCloudSecuritycenterV2File `json:"script,omitempty"`
  6709  	// ForceSendFields is a list of field names (e.g. "Args") to unconditionally
  6710  	// include in API requests. By default, fields with empty or default values are
  6711  	// omitted from API requests. See
  6712  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6713  	// details.
  6714  	ForceSendFields []string `json:"-"`
  6715  	// NullFields is a list of field names (e.g. "Args") to include in API requests
  6716  	// with the JSON null value. By default, fields with empty values are omitted
  6717  	// from API requests. See
  6718  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6719  	NullFields []string `json:"-"`
  6720  }
  6721  
  6722  func (s *GoogleCloudSecuritycenterV2Process) MarshalJSON() ([]byte, error) {
  6723  	type NoMethod GoogleCloudSecuritycenterV2Process
  6724  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6725  }
  6726  
  6727  // GoogleCloudSecuritycenterV2ProcessSignature: Indicates what signature
  6728  // matched this process.
  6729  type GoogleCloudSecuritycenterV2ProcessSignature struct {
  6730  	// MemoryHashSignature: Signature indicating that a binary family was matched.
  6731  	MemoryHashSignature *GoogleCloudSecuritycenterV2MemoryHashSignature `json:"memoryHashSignature,omitempty"`
  6732  	// SignatureType: Describes the type of resource associated with the signature.
  6733  	//
  6734  	// Possible values:
  6735  	//   "SIGNATURE_TYPE_UNSPECIFIED" - The default signature type.
  6736  	//   "SIGNATURE_TYPE_PROCESS" - Used for signatures concerning processes.
  6737  	//   "SIGNATURE_TYPE_FILE" - Used for signatures concerning disks.
  6738  	SignatureType string `json:"signatureType,omitempty"`
  6739  	// YaraRuleSignature: Signature indicating that a YARA rule was matched.
  6740  	YaraRuleSignature *GoogleCloudSecuritycenterV2YaraRuleSignature `json:"yaraRuleSignature,omitempty"`
  6741  	// ForceSendFields is a list of field names (e.g. "MemoryHashSignature") to
  6742  	// unconditionally include in API requests. By default, fields with empty or
  6743  	// default values are omitted from API requests. See
  6744  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6745  	// details.
  6746  	ForceSendFields []string `json:"-"`
  6747  	// NullFields is a list of field names (e.g. "MemoryHashSignature") to include
  6748  	// in API requests with the JSON null value. By default, fields with empty
  6749  	// values are omitted from API requests. See
  6750  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6751  	NullFields []string `json:"-"`
  6752  }
  6753  
  6754  func (s *GoogleCloudSecuritycenterV2ProcessSignature) MarshalJSON() ([]byte, error) {
  6755  	type NoMethod GoogleCloudSecuritycenterV2ProcessSignature
  6756  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6757  }
  6758  
  6759  // GoogleCloudSecuritycenterV2Reference: Additional Links
  6760  type GoogleCloudSecuritycenterV2Reference struct {
  6761  	// Source: Source of the reference e.g. NVD
  6762  	Source string `json:"source,omitempty"`
  6763  	// Uri: Uri for the mentioned source e.g.
  6764  	// https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527.
  6765  	Uri string `json:"uri,omitempty"`
  6766  	// ForceSendFields is a list of field names (e.g. "Source") to unconditionally
  6767  	// include in API requests. By default, fields with empty or default values are
  6768  	// omitted from API requests. See
  6769  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6770  	// details.
  6771  	ForceSendFields []string `json:"-"`
  6772  	// NullFields is a list of field names (e.g. "Source") to include in API
  6773  	// requests with the JSON null value. By default, fields with empty values are
  6774  	// omitted from API requests. See
  6775  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6776  	NullFields []string `json:"-"`
  6777  }
  6778  
  6779  func (s *GoogleCloudSecuritycenterV2Reference) MarshalJSON() ([]byte, error) {
  6780  	type NoMethod GoogleCloudSecuritycenterV2Reference
  6781  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6782  }
  6783  
  6784  // GoogleCloudSecuritycenterV2Requests: Information about the requests relevant
  6785  // to the finding.
  6786  type GoogleCloudSecuritycenterV2Requests struct {
  6787  	// LongTermAllowed: Allowed RPS (requests per second) over the long term.
  6788  	LongTermAllowed int64 `json:"longTermAllowed,omitempty"`
  6789  	// LongTermDenied: Denied RPS (requests per second) over the long term.
  6790  	LongTermDenied int64 `json:"longTermDenied,omitempty"`
  6791  	// Ratio: For 'Increasing deny ratio', the ratio is the denied traffic divided
  6792  	// by the allowed traffic. For 'Allowed traffic spike', the ratio is the
  6793  	// allowed traffic in the short term divided by allowed traffic in the long
  6794  	// term.
  6795  	Ratio float64 `json:"ratio,omitempty"`
  6796  	// ShortTermAllowed: Allowed RPS (requests per second) in the short term.
  6797  	ShortTermAllowed int64 `json:"shortTermAllowed,omitempty"`
  6798  	// ForceSendFields is a list of field names (e.g. "LongTermAllowed") to
  6799  	// unconditionally include in API requests. By default, fields with empty or
  6800  	// default values are omitted from API requests. See
  6801  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6802  	// details.
  6803  	ForceSendFields []string `json:"-"`
  6804  	// NullFields is a list of field names (e.g. "LongTermAllowed") to include in
  6805  	// API requests with the JSON null value. By default, fields with empty values
  6806  	// are omitted from API requests. See
  6807  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6808  	NullFields []string `json:"-"`
  6809  }
  6810  
  6811  func (s *GoogleCloudSecuritycenterV2Requests) MarshalJSON() ([]byte, error) {
  6812  	type NoMethod GoogleCloudSecuritycenterV2Requests
  6813  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6814  }
  6815  
  6816  func (s *GoogleCloudSecuritycenterV2Requests) UnmarshalJSON(data []byte) error {
  6817  	type NoMethod GoogleCloudSecuritycenterV2Requests
  6818  	var s1 struct {
  6819  		Ratio gensupport.JSONFloat64 `json:"ratio"`
  6820  		*NoMethod
  6821  	}
  6822  	s1.NoMethod = (*NoMethod)(s)
  6823  	if err := json.Unmarshal(data, &s1); err != nil {
  6824  		return err
  6825  	}
  6826  	s.Ratio = float64(s1.Ratio)
  6827  	return nil
  6828  }
  6829  
  6830  // GoogleCloudSecuritycenterV2Resource: Information related to the Google Cloud
  6831  // resource.
  6832  type GoogleCloudSecuritycenterV2Resource struct {
  6833  	// AwsMetadata: The AWS metadata associated with the finding.
  6834  	AwsMetadata *GoogleCloudSecuritycenterV2AwsMetadata `json:"awsMetadata,omitempty"`
  6835  	// CloudProvider: Indicates which cloud provider the finding is from.
  6836  	//
  6837  	// Possible values:
  6838  	//   "CLOUD_PROVIDER_UNSPECIFIED" - The cloud provider is unspecified.
  6839  	//   "GOOGLE_CLOUD_PLATFORM" - The cloud provider is Google Cloud Platform.
  6840  	//   "AMAZON_WEB_SERVICES" - The cloud provider is Amazon Web Services.
  6841  	//   "MICROSOFT_AZURE" - The cloud provider is Microsoft Azure.
  6842  	CloudProvider string `json:"cloudProvider,omitempty"`
  6843  	// DisplayName: The human readable name of the resource.
  6844  	DisplayName string `json:"displayName,omitempty"`
  6845  	// GcpMetadata: The GCP metadata associated with the finding.
  6846  	GcpMetadata *GcpMetadata `json:"gcpMetadata,omitempty"`
  6847  	// Location: The region or location of the service (if applicable).
  6848  	Location string `json:"location,omitempty"`
  6849  	// Name: The full resource name of the resource. See:
  6850  	// https://cloud.google.com/apis/design/resource_names#full_resource_name
  6851  	Name string `json:"name,omitempty"`
  6852  	// ResourcePath: Provides the path to the resource within the resource
  6853  	// hierarchy.
  6854  	ResourcePath *GoogleCloudSecuritycenterV2ResourcePath `json:"resourcePath,omitempty"`
  6855  	// ResourcePathString: A string representation of the resource path. For Google
  6856  	// Cloud, it has the format of
  6857  	// organizations/{organization_id}/folders/{folder_id}/folders/{folder_id}/proje
  6858  	// cts/{project_id} where there can be any number of folders. For AWS, it has
  6859  	// the format of
  6860  	// org/{organization_id}/ou/{organizational_unit_id}/ou/{organizational_unit_id}
  6861  	// /account/{account_id} where there can be any number of organizational units.
  6862  	// For Azure, it has the format of
  6863  	// mg/{management_group_id}/mg/{management_group_id}/subscription/{subscription_
  6864  	// id}/rg/{resource_group_name} where there can be any number of management
  6865  	// groups.
  6866  	ResourcePathString string `json:"resourcePathString,omitempty"`
  6867  	// Service: The service or resource provider associated with the resource.
  6868  	Service string `json:"service,omitempty"`
  6869  	// Type: The full resource type of the resource.
  6870  	Type string `json:"type,omitempty"`
  6871  	// ForceSendFields is a list of field names (e.g. "AwsMetadata") to
  6872  	// unconditionally include in API requests. By default, fields with empty or
  6873  	// default values are omitted from API requests. See
  6874  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6875  	// details.
  6876  	ForceSendFields []string `json:"-"`
  6877  	// NullFields is a list of field names (e.g. "AwsMetadata") to include in API
  6878  	// requests with the JSON null value. By default, fields with empty values are
  6879  	// omitted from API requests. See
  6880  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6881  	NullFields []string `json:"-"`
  6882  }
  6883  
  6884  func (s *GoogleCloudSecuritycenterV2Resource) MarshalJSON() ([]byte, error) {
  6885  	type NoMethod GoogleCloudSecuritycenterV2Resource
  6886  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6887  }
  6888  
  6889  // GoogleCloudSecuritycenterV2ResourcePath: Represents the path of resources
  6890  // leading up to the resource this finding is about.
  6891  type GoogleCloudSecuritycenterV2ResourcePath struct {
  6892  	// Nodes: The list of nodes that make the up resource path, ordered from lowest
  6893  	// level to highest level.
  6894  	Nodes []*GoogleCloudSecuritycenterV2ResourcePathNode `json:"nodes,omitempty"`
  6895  	// ForceSendFields is a list of field names (e.g. "Nodes") to unconditionally
  6896  	// include in API requests. By default, fields with empty or default values are
  6897  	// omitted from API requests. See
  6898  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6899  	// details.
  6900  	ForceSendFields []string `json:"-"`
  6901  	// NullFields is a list of field names (e.g. "Nodes") to include in API
  6902  	// requests with the JSON null value. By default, fields with empty values are
  6903  	// omitted from API requests. See
  6904  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6905  	NullFields []string `json:"-"`
  6906  }
  6907  
  6908  func (s *GoogleCloudSecuritycenterV2ResourcePath) MarshalJSON() ([]byte, error) {
  6909  	type NoMethod GoogleCloudSecuritycenterV2ResourcePath
  6910  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6911  }
  6912  
  6913  // GoogleCloudSecuritycenterV2ResourcePathNode: A node within the resource
  6914  // path. Each node represents a resource within the resource hierarchy.
  6915  type GoogleCloudSecuritycenterV2ResourcePathNode struct {
  6916  	// DisplayName: The display name of the resource this node represents.
  6917  	DisplayName string `json:"displayName,omitempty"`
  6918  	// Id: The ID of the resource this node represents.
  6919  	Id string `json:"id,omitempty"`
  6920  	// NodeType: The type of resource this node represents.
  6921  	//
  6922  	// Possible values:
  6923  	//   "RESOURCE_PATH_NODE_TYPE_UNSPECIFIED" - Node type is unspecified.
  6924  	//   "GCP_ORGANIZATION" - The node represents a Google Cloud organization.
  6925  	//   "GCP_FOLDER" - The node represents a Google Cloud folder.
  6926  	//   "GCP_PROJECT" - The node represents a Google Cloud project.
  6927  	//   "AWS_ORGANIZATION" - The node represents an AWS organization.
  6928  	//   "AWS_ORGANIZATIONAL_UNIT" - The node represents an AWS organizational
  6929  	// unit.
  6930  	//   "AWS_ACCOUNT" - The node represents an AWS account.
  6931  	//   "AZURE_MANAGEMENT_GROUP" - The node represents an Azure management group.
  6932  	//   "AZURE_SUBSCRIPTION" - The node represents an Azure subscription.
  6933  	//   "AZURE_RESOURCE_GROUP" - The node represents an Azure resource group.
  6934  	NodeType string `json:"nodeType,omitempty"`
  6935  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  6936  	// unconditionally include in API requests. By default, fields with empty or
  6937  	// default values are omitted from API requests. See
  6938  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6939  	// details.
  6940  	ForceSendFields []string `json:"-"`
  6941  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  6942  	// requests with the JSON null value. By default, fields with empty values are
  6943  	// omitted from API requests. See
  6944  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6945  	NullFields []string `json:"-"`
  6946  }
  6947  
  6948  func (s *GoogleCloudSecuritycenterV2ResourcePathNode) MarshalJSON() ([]byte, error) {
  6949  	type NoMethod GoogleCloudSecuritycenterV2ResourcePathNode
  6950  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6951  }
  6952  
  6953  // GoogleCloudSecuritycenterV2ResourceValueConfig: A resource value config
  6954  // (RVC) is a mapping configuration of user's resources to resource values.
  6955  // Used in Attack path simulations.
  6956  type GoogleCloudSecuritycenterV2ResourceValueConfig struct {
  6957  	// CloudProvider: Cloud provider this configuration applies to
  6958  	//
  6959  	// Possible values:
  6960  	//   "CLOUD_PROVIDER_UNSPECIFIED" - The cloud provider is unspecified.
  6961  	//   "GOOGLE_CLOUD_PLATFORM" - The cloud provider is Google Cloud Platform.
  6962  	//   "AMAZON_WEB_SERVICES" - The cloud provider is Amazon Web Services.
  6963  	//   "MICROSOFT_AZURE" - The cloud provider is Microsoft Azure.
  6964  	CloudProvider string `json:"cloudProvider,omitempty"`
  6965  	// CreateTime: Output only. Timestamp this resource value config was created.
  6966  	CreateTime string `json:"createTime,omitempty"`
  6967  	// Description: Description of the resource value config.
  6968  	Description string `json:"description,omitempty"`
  6969  	// Name: Name for the resource value config
  6970  	Name string `json:"name,omitempty"`
  6971  	// ResourceLabelsSelector: List of resource labels to search for, evaluated
  6972  	// with AND. E.g. "resource_labels_selector": {"key": "value", "env": "prod"}
  6973  	// will match resources with labels "key": "value" AND "env": "prod"
  6974  	// https://cloud.google.com/resource-manager/docs/creating-managing-labels
  6975  	ResourceLabelsSelector map[string]string `json:"resourceLabelsSelector,omitempty"`
  6976  	// ResourceType: Apply resource_value only to resources that match
  6977  	// resource_type. resource_type will be checked with "AND" of other resources.
  6978  	// E.g. "storage.googleapis.com/Bucket" with resource_value "HIGH" will apply
  6979  	// "HIGH" value only to "storage.googleapis.com/Bucket" resources.
  6980  	ResourceType string `json:"resourceType,omitempty"`
  6981  	// ResourceValue: Resource value level this expression represents Only required
  6982  	// when there is no SDP mapping in the request
  6983  	//
  6984  	// Possible values:
  6985  	//   "RESOURCE_VALUE_UNSPECIFIED" - Unspecific value
  6986  	//   "HIGH" - High resource value
  6987  	//   "MEDIUM" - Medium resource value
  6988  	//   "LOW" - Low resource value
  6989  	//   "NONE" - No resource value, e.g. ignore these resources
  6990  	ResourceValue string `json:"resourceValue,omitempty"`
  6991  	// Scope: Project or folder to scope this config to. For example, "project/456"
  6992  	// would apply this config only to resources in "project/456" scope will be
  6993  	// checked with "AND" of other resources.
  6994  	Scope string `json:"scope,omitempty"`
  6995  	// SensitiveDataProtectionMapping: A mapping of the sensitivity on Sensitive
  6996  	// Data Protection finding to resource values. This mapping can only be used in
  6997  	// combination with a resource_type that is related to BigQuery, e.g.
  6998  	// "bigquery.googleapis.com/Dataset".
  6999  	SensitiveDataProtectionMapping *GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping `json:"sensitiveDataProtectionMapping,omitempty"`
  7000  	// TagValues: Required. Tag values combined with AND to check against. Values
  7001  	// in the form "tagValues/123" E.g. [ "tagValues/123", "tagValues/456",
  7002  	// "tagValues/789" ]
  7003  	// https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing
  7004  	TagValues []string `json:"tagValues,omitempty"`
  7005  	// UpdateTime: Output only. Timestamp this resource value config was last
  7006  	// updated.
  7007  	UpdateTime string `json:"updateTime,omitempty"`
  7008  	// ForceSendFields is a list of field names (e.g. "CloudProvider") to
  7009  	// unconditionally include in API requests. By default, fields with empty or
  7010  	// default values are omitted from API requests. See
  7011  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7012  	// details.
  7013  	ForceSendFields []string `json:"-"`
  7014  	// NullFields is a list of field names (e.g. "CloudProvider") to include in API
  7015  	// requests with the JSON null value. By default, fields with empty values are
  7016  	// omitted from API requests. See
  7017  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7018  	NullFields []string `json:"-"`
  7019  }
  7020  
  7021  func (s *GoogleCloudSecuritycenterV2ResourceValueConfig) MarshalJSON() ([]byte, error) {
  7022  	type NoMethod GoogleCloudSecuritycenterV2ResourceValueConfig
  7023  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7024  }
  7025  
  7026  // GoogleCloudSecuritycenterV2Role: Kubernetes Role or ClusterRole.
  7027  type GoogleCloudSecuritycenterV2Role struct {
  7028  	// Kind: Role type.
  7029  	//
  7030  	// Possible values:
  7031  	//   "KIND_UNSPECIFIED" - Role type is not specified.
  7032  	//   "ROLE" - Kubernetes Role.
  7033  	//   "CLUSTER_ROLE" - Kubernetes ClusterRole.
  7034  	Kind string `json:"kind,omitempty"`
  7035  	// Name: Role name.
  7036  	Name string `json:"name,omitempty"`
  7037  	// Ns: Role namespace.
  7038  	Ns string `json:"ns,omitempty"`
  7039  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  7040  	// include in API requests. By default, fields with empty or default values are
  7041  	// omitted from API requests. See
  7042  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7043  	// details.
  7044  	ForceSendFields []string `json:"-"`
  7045  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  7046  	// with the JSON null value. By default, fields with empty values are omitted
  7047  	// from API requests. See
  7048  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7049  	NullFields []string `json:"-"`
  7050  }
  7051  
  7052  func (s *GoogleCloudSecuritycenterV2Role) MarshalJSON() ([]byte, error) {
  7053  	type NoMethod GoogleCloudSecuritycenterV2Role
  7054  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7055  }
  7056  
  7057  // GoogleCloudSecuritycenterV2SecurityBulletin: SecurityBulletin are
  7058  // notifications of vulnerabilities of Google products.
  7059  type GoogleCloudSecuritycenterV2SecurityBulletin struct {
  7060  	// BulletinId: ID of the bulletin corresponding to the vulnerability.
  7061  	BulletinId string `json:"bulletinId,omitempty"`
  7062  	// SubmissionTime: Submission time of this Security Bulletin.
  7063  	SubmissionTime string `json:"submissionTime,omitempty"`
  7064  	// SuggestedUpgradeVersion: This represents a version that the cluster
  7065  	// receiving this notification should be upgraded to, based on its current
  7066  	// version. For example, 1.15.0
  7067  	SuggestedUpgradeVersion string `json:"suggestedUpgradeVersion,omitempty"`
  7068  	// ForceSendFields is a list of field names (e.g. "BulletinId") to
  7069  	// unconditionally include in API requests. By default, fields with empty or
  7070  	// default values are omitted from API requests. See
  7071  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7072  	// details.
  7073  	ForceSendFields []string `json:"-"`
  7074  	// NullFields is a list of field names (e.g. "BulletinId") to include in API
  7075  	// requests with the JSON null value. By default, fields with empty values are
  7076  	// omitted from API requests. See
  7077  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7078  	NullFields []string `json:"-"`
  7079  }
  7080  
  7081  func (s *GoogleCloudSecuritycenterV2SecurityBulletin) MarshalJSON() ([]byte, error) {
  7082  	type NoMethod GoogleCloudSecuritycenterV2SecurityBulletin
  7083  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7084  }
  7085  
  7086  // GoogleCloudSecuritycenterV2SecurityMarks: User specified security marks that
  7087  // are attached to the parent Security Command Center resource. Security marks
  7088  // are scoped within a Security Command Center organization -- they can be
  7089  // modified and viewed by all users who have proper permissions on the
  7090  // organization.
  7091  type GoogleCloudSecuritycenterV2SecurityMarks struct {
  7092  	// CanonicalName: The canonical name of the marks. The following list shows
  7093  	// some examples: +
  7094  	// `organizations/{organization_id}/assets/{asset_id}/securityMarks` +
  7095  	// `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/se
  7096  	// curityMarks` +
  7097  	// `organizations/{organization_id}/sources/{source_id}/locations/{location}/fin
  7098  	// dings/{finding_id}/securityMarks` +
  7099  	// `folders/{folder_id}/assets/{asset_id}/securityMarks` +
  7100  	// `folders/{folder_id}/sources/{source_id}/findings/{finding_id}/securityMarks`
  7101  	//  +
  7102  	// `folders/{folder_id}/sources/{source_id}/locations/{location}/findings/{findi
  7103  	// ng_id}/securityMarks` +
  7104  	// `projects/{project_number}/assets/{asset_id}/securityMarks` +
  7105  	// `projects/{project_number}/sources/{source_id}/findings/{finding_id}/security
  7106  	// Marks` +
  7107  	// `projects/{project_number}/sources/{source_id}/locations/{location}/findings/
  7108  	// {finding_id}/securityMarks`
  7109  	CanonicalName string `json:"canonicalName,omitempty"`
  7110  	// Marks: Mutable user specified security marks belonging to the parent
  7111  	// resource. Constraints are as follows: * Keys and values are treated as case
  7112  	// insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys
  7113  	// must be letters, numbers, underscores, or dashes * Values have leading and
  7114  	// trailing whitespace trimmed, remaining characters must be between 1 - 4096
  7115  	// characters (inclusive)
  7116  	Marks map[string]string `json:"marks,omitempty"`
  7117  	// Name: The relative resource name of the SecurityMarks. See:
  7118  	// https://cloud.google.com/apis/design/resource_names#relative_resource_name
  7119  	// The following list shows some examples: +
  7120  	// `organizations/{organization_id}/assets/{asset_id}/securityMarks` +
  7121  	// `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/se
  7122  	// curityMarks` +
  7123  	// `organizations/{organization_id}/sources/{source_id}/locations/{location}/fin
  7124  	// dings/{finding_id}/securityMarks`
  7125  	Name string `json:"name,omitempty"`
  7126  	// ForceSendFields is a list of field names (e.g. "CanonicalName") to
  7127  	// unconditionally include in API requests. By default, fields with empty or
  7128  	// default values are omitted from API requests. See
  7129  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7130  	// details.
  7131  	ForceSendFields []string `json:"-"`
  7132  	// NullFields is a list of field names (e.g. "CanonicalName") to include in API
  7133  	// requests with the JSON null value. By default, fields with empty values are
  7134  	// omitted from API requests. See
  7135  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7136  	NullFields []string `json:"-"`
  7137  }
  7138  
  7139  func (s *GoogleCloudSecuritycenterV2SecurityMarks) MarshalJSON() ([]byte, error) {
  7140  	type NoMethod GoogleCloudSecuritycenterV2SecurityMarks
  7141  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7142  }
  7143  
  7144  // GoogleCloudSecuritycenterV2SecurityPolicy: Information about the Google
  7145  // Cloud Armor security policy
  7146  // (https://cloud.google.com/armor/docs/security-policy-overview) relevant to
  7147  // the finding.
  7148  type GoogleCloudSecuritycenterV2SecurityPolicy struct {
  7149  	// Name: The name of the Google Cloud Armor security policy, for example,
  7150  	// "my-security-policy".
  7151  	Name string `json:"name,omitempty"`
  7152  	// Preview: Whether or not the associated rule or policy is in preview mode.
  7153  	Preview bool `json:"preview,omitempty"`
  7154  	// Type: The type of Google Cloud Armor security policy for example, 'backend
  7155  	// security policy', 'edge security policy', 'network edge security policy', or
  7156  	// 'always-on DDoS protection'.
  7157  	Type string `json:"type,omitempty"`
  7158  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  7159  	// include in API requests. By default, fields with empty or default values are
  7160  	// omitted from API requests. See
  7161  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7162  	// details.
  7163  	ForceSendFields []string `json:"-"`
  7164  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  7165  	// with the JSON null value. By default, fields with empty values are omitted
  7166  	// from API requests. See
  7167  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7168  	NullFields []string `json:"-"`
  7169  }
  7170  
  7171  func (s *GoogleCloudSecuritycenterV2SecurityPolicy) MarshalJSON() ([]byte, error) {
  7172  	type NoMethod GoogleCloudSecuritycenterV2SecurityPolicy
  7173  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7174  }
  7175  
  7176  // GoogleCloudSecuritycenterV2SecurityPosture: Represents a posture that is
  7177  // deployed on Google Cloud by the Security Command Center Posture Management
  7178  // service. A posture contains one or more policy sets. A policy set is a group
  7179  // of policies that enforce a set of security rules on Google Cloud.
  7180  type GoogleCloudSecuritycenterV2SecurityPosture struct {
  7181  	// ChangedPolicy: The name of the updated policy, for example,
  7182  	// `projects/{project_id}/policies/{constraint_name}`.
  7183  	ChangedPolicy string `json:"changedPolicy,omitempty"`
  7184  	// Name: Name of the posture, for example, `CIS-Posture`.
  7185  	Name string `json:"name,omitempty"`
  7186  	// Policy: The ID of the updated policy, for example, `compute-policy-1`.
  7187  	Policy string `json:"policy,omitempty"`
  7188  	// PolicyDriftDetails: The details about a change in an updated policy that
  7189  	// violates the deployed posture.
  7190  	PolicyDriftDetails []*GoogleCloudSecuritycenterV2PolicyDriftDetails `json:"policyDriftDetails,omitempty"`
  7191  	// PolicySet: The name of the updated policy set, for example, `cis-policyset`.
  7192  	PolicySet string `json:"policySet,omitempty"`
  7193  	// PostureDeployment: The name of the posture deployment, for example,
  7194  	// `organizations/{org_id}/posturedeployments/{posture_deployment_id}`.
  7195  	PostureDeployment string `json:"postureDeployment,omitempty"`
  7196  	// PostureDeploymentResource: The project, folder, or organization on which the
  7197  	// posture is deployed, for example, `projects/{project_number}`.
  7198  	PostureDeploymentResource string `json:"postureDeploymentResource,omitempty"`
  7199  	// RevisionId: The version of the posture, for example, `c7cfa2a8`.
  7200  	RevisionId string `json:"revisionId,omitempty"`
  7201  	// ForceSendFields is a list of field names (e.g. "ChangedPolicy") to
  7202  	// unconditionally include in API requests. By default, fields with empty or
  7203  	// default values are omitted from API requests. See
  7204  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7205  	// details.
  7206  	ForceSendFields []string `json:"-"`
  7207  	// NullFields is a list of field names (e.g. "ChangedPolicy") to include in API
  7208  	// requests with the JSON null value. By default, fields with empty values are
  7209  	// omitted from API requests. See
  7210  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7211  	NullFields []string `json:"-"`
  7212  }
  7213  
  7214  func (s *GoogleCloudSecuritycenterV2SecurityPosture) MarshalJSON() ([]byte, error) {
  7215  	type NoMethod GoogleCloudSecuritycenterV2SecurityPosture
  7216  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7217  }
  7218  
  7219  // GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping: Resource value
  7220  // mapping for Sensitive Data Protection findings If any of these mappings have
  7221  // a resource value that is not unspecified, the resource_value field will be
  7222  // ignored when reading this configuration.
  7223  type GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping struct {
  7224  	// HighSensitivityMapping: Resource value mapping for high-sensitivity
  7225  	// Sensitive Data Protection findings
  7226  	//
  7227  	// Possible values:
  7228  	//   "RESOURCE_VALUE_UNSPECIFIED" - Unspecific value
  7229  	//   "HIGH" - High resource value
  7230  	//   "MEDIUM" - Medium resource value
  7231  	//   "LOW" - Low resource value
  7232  	//   "NONE" - No resource value, e.g. ignore these resources
  7233  	HighSensitivityMapping string `json:"highSensitivityMapping,omitempty"`
  7234  	// MediumSensitivityMapping: Resource value mapping for medium-sensitivity
  7235  	// Sensitive Data Protection findings
  7236  	//
  7237  	// Possible values:
  7238  	//   "RESOURCE_VALUE_UNSPECIFIED" - Unspecific value
  7239  	//   "HIGH" - High resource value
  7240  	//   "MEDIUM" - Medium resource value
  7241  	//   "LOW" - Low resource value
  7242  	//   "NONE" - No resource value, e.g. ignore these resources
  7243  	MediumSensitivityMapping string `json:"mediumSensitivityMapping,omitempty"`
  7244  	// ForceSendFields is a list of field names (e.g. "HighSensitivityMapping") to
  7245  	// unconditionally include in API requests. By default, fields with empty or
  7246  	// default values are omitted from API requests. See
  7247  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7248  	// details.
  7249  	ForceSendFields []string `json:"-"`
  7250  	// NullFields is a list of field names (e.g. "HighSensitivityMapping") to
  7251  	// include in API requests with the JSON null value. By default, fields with
  7252  	// empty values are omitted from API requests. See
  7253  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7254  	NullFields []string `json:"-"`
  7255  }
  7256  
  7257  func (s *GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping) MarshalJSON() ([]byte, error) {
  7258  	type NoMethod GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping
  7259  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7260  }
  7261  
  7262  // GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo: Identity delegation
  7263  // history of an authenticated service account.
  7264  type GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo struct {
  7265  	// PrincipalEmail: The email address of a Google account.
  7266  	PrincipalEmail string `json:"principalEmail,omitempty"`
  7267  	// PrincipalSubject: A string representing the principal_subject associated
  7268  	// with the identity. As compared to `principal_email`, supports principals
  7269  	// that aren't associated with email addresses, such as third party principals.
  7270  	// For most identities, the format will be
  7271  	// `principal://iam.googleapis.com/{identity pool name}/subjects/{subject}`
  7272  	// except for some GKE identities (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD)
  7273  	// that are still in the legacy format `serviceAccount:{identity pool
  7274  	// name}[{subject}]`
  7275  	PrincipalSubject string `json:"principalSubject,omitempty"`
  7276  	// ForceSendFields is a list of field names (e.g. "PrincipalEmail") to
  7277  	// unconditionally include in API requests. By default, fields with empty or
  7278  	// default values are omitted from API requests. See
  7279  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7280  	// details.
  7281  	ForceSendFields []string `json:"-"`
  7282  	// NullFields is a list of field names (e.g. "PrincipalEmail") to include in
  7283  	// API requests with the JSON null value. By default, fields with empty values
  7284  	// are omitted from API requests. See
  7285  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7286  	NullFields []string `json:"-"`
  7287  }
  7288  
  7289  func (s *GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo) MarshalJSON() ([]byte, error) {
  7290  	type NoMethod GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo
  7291  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7292  }
  7293  
  7294  // GoogleCloudSecuritycenterV2Subject: Represents a Kubernetes subject.
  7295  type GoogleCloudSecuritycenterV2Subject struct {
  7296  	// Kind: Authentication type for the subject.
  7297  	//
  7298  	// Possible values:
  7299  	//   "AUTH_TYPE_UNSPECIFIED" - Authentication is not specified.
  7300  	//   "USER" - User with valid certificate.
  7301  	//   "SERVICEACCOUNT" - Users managed by Kubernetes API with credentials stored
  7302  	// as secrets.
  7303  	//   "GROUP" - Collection of users.
  7304  	Kind string `json:"kind,omitempty"`
  7305  	// Name: Name for the subject.
  7306  	Name string `json:"name,omitempty"`
  7307  	// Ns: Namespace for the subject.
  7308  	Ns string `json:"ns,omitempty"`
  7309  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  7310  	// include in API requests. By default, fields with empty or default values are
  7311  	// omitted from API requests. See
  7312  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7313  	// details.
  7314  	ForceSendFields []string `json:"-"`
  7315  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  7316  	// with the JSON null value. By default, fields with empty values are omitted
  7317  	// from API requests. See
  7318  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7319  	NullFields []string `json:"-"`
  7320  }
  7321  
  7322  func (s *GoogleCloudSecuritycenterV2Subject) MarshalJSON() ([]byte, error) {
  7323  	type NoMethod GoogleCloudSecuritycenterV2Subject
  7324  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7325  }
  7326  
  7327  // GoogleCloudSecuritycenterV2TicketInfo: Information about the ticket, if any,
  7328  // that is being used to track the resolution of the issue that is identified
  7329  // by this finding.
  7330  type GoogleCloudSecuritycenterV2TicketInfo struct {
  7331  	// Assignee: The assignee of the ticket in the ticket system.
  7332  	Assignee string `json:"assignee,omitempty"`
  7333  	// Description: The description of the ticket in the ticket system.
  7334  	Description string `json:"description,omitempty"`
  7335  	// Id: The identifier of the ticket in the ticket system.
  7336  	Id string `json:"id,omitempty"`
  7337  	// Status: The latest status of the ticket, as reported by the ticket system.
  7338  	Status string `json:"status,omitempty"`
  7339  	// UpdateTime: The time when the ticket was last updated, as reported by the
  7340  	// ticket system.
  7341  	UpdateTime string `json:"updateTime,omitempty"`
  7342  	// Uri: The link to the ticket in the ticket system.
  7343  	Uri string `json:"uri,omitempty"`
  7344  	// ForceSendFields is a list of field names (e.g. "Assignee") to
  7345  	// unconditionally include in API requests. By default, fields with empty or
  7346  	// default values are omitted from API requests. See
  7347  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7348  	// details.
  7349  	ForceSendFields []string `json:"-"`
  7350  	// NullFields is a list of field names (e.g. "Assignee") to include in API
  7351  	// requests with the JSON null value. By default, fields with empty values are
  7352  	// omitted from API requests. See
  7353  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7354  	NullFields []string `json:"-"`
  7355  }
  7356  
  7357  func (s *GoogleCloudSecuritycenterV2TicketInfo) MarshalJSON() ([]byte, error) {
  7358  	type NoMethod GoogleCloudSecuritycenterV2TicketInfo
  7359  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7360  }
  7361  
  7362  // GoogleCloudSecuritycenterV2Vulnerability: Refers to common vulnerability
  7363  // fields e.g. cve, cvss, cwe etc.
  7364  type GoogleCloudSecuritycenterV2Vulnerability struct {
  7365  	// Cve: CVE stands for Common Vulnerabilities and Exposures
  7366  	// (https://cve.mitre.org/about/)
  7367  	Cve *GoogleCloudSecuritycenterV2Cve `json:"cve,omitempty"`
  7368  	// FixedPackage: The fixed package is relevant to the finding.
  7369  	FixedPackage *GoogleCloudSecuritycenterV2Package `json:"fixedPackage,omitempty"`
  7370  	// OffendingPackage: The offending package is relevant to the finding.
  7371  	OffendingPackage *GoogleCloudSecuritycenterV2Package `json:"offendingPackage,omitempty"`
  7372  	// SecurityBulletin: The security bulletin is relevant to this finding.
  7373  	SecurityBulletin *GoogleCloudSecuritycenterV2SecurityBulletin `json:"securityBulletin,omitempty"`
  7374  	// ForceSendFields is a list of field names (e.g. "Cve") to unconditionally
  7375  	// include in API requests. By default, fields with empty or default values are
  7376  	// omitted from API requests. See
  7377  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7378  	// details.
  7379  	ForceSendFields []string `json:"-"`
  7380  	// NullFields is a list of field names (e.g. "Cve") to include in API requests
  7381  	// with the JSON null value. By default, fields with empty values are omitted
  7382  	// from API requests. See
  7383  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7384  	NullFields []string `json:"-"`
  7385  }
  7386  
  7387  func (s *GoogleCloudSecuritycenterV2Vulnerability) MarshalJSON() ([]byte, error) {
  7388  	type NoMethod GoogleCloudSecuritycenterV2Vulnerability
  7389  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7390  }
  7391  
  7392  // GoogleCloudSecuritycenterV2YaraRuleSignature: A signature corresponding to a
  7393  // YARA rule.
  7394  type GoogleCloudSecuritycenterV2YaraRuleSignature struct {
  7395  	// YaraRule: The name of the YARA rule.
  7396  	YaraRule string `json:"yaraRule,omitempty"`
  7397  	// ForceSendFields is a list of field names (e.g. "YaraRule") to
  7398  	// unconditionally include in API requests. By default, fields with empty or
  7399  	// default values are omitted from API requests. See
  7400  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7401  	// details.
  7402  	ForceSendFields []string `json:"-"`
  7403  	// NullFields is a list of field names (e.g. "YaraRule") to include in API
  7404  	// requests with the JSON null value. By default, fields with empty values are
  7405  	// omitted from API requests. See
  7406  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7407  	NullFields []string `json:"-"`
  7408  }
  7409  
  7410  func (s *GoogleCloudSecuritycenterV2YaraRuleSignature) MarshalJSON() ([]byte, error) {
  7411  	type NoMethod GoogleCloudSecuritycenterV2YaraRuleSignature
  7412  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7413  }
  7414  
  7415  // GroupAssetsRequest: Request message for grouping by assets.
  7416  type GroupAssetsRequest struct {
  7417  	// CompareDuration: When compare_duration is set, the GroupResult's
  7418  	// "state_change" property is updated to indicate whether the asset was added,
  7419  	// removed, or remained present during the compare_duration period of time that
  7420  	// precedes the read_time. This is the time between (read_time -
  7421  	// compare_duration) and read_time. The state change value is derived based on
  7422  	// the presence of the asset at the two points in time. Intermediate state
  7423  	// changes between the two times don't affect the result. For example, the
  7424  	// results aren't affected if the asset is removed and re-created again.
  7425  	// Possible "state_change" values when compare_duration is specified: *
  7426  	// "ADDED": indicates that the asset was not present at the start of
  7427  	// compare_duration, but present at reference_time. * "REMOVED": indicates that
  7428  	// the asset was present at the start of compare_duration, but not present at
  7429  	// reference_time. * "ACTIVE": indicates that the asset was present at both the
  7430  	// start and the end of the time period defined by compare_duration and
  7431  	// reference_time. If compare_duration is not specified, then the only possible
  7432  	// state_change is "UNUSED", which will be the state_change set for all assets
  7433  	// present at read_time. If this field is set then `state_change` must be a
  7434  	// specified field in `group_by`.
  7435  	CompareDuration string `json:"compareDuration,omitempty"`
  7436  	// Filter: Expression that defines the filter to apply across assets. The
  7437  	// expression is a list of zero or more restrictions combined via logical
  7438  	// operators `AND` and `OR`. Parentheses are supported, and `OR` has higher
  7439  	// precedence than `AND`. Restrictions have the form ` ` and may have a `-`
  7440  	// character in front of them to indicate negation. The fields map to those
  7441  	// defined in the Asset resource. Examples include: * name *
  7442  	// security_center_properties.resource_name * resource_properties.a_property *
  7443  	// security_marks.marks.marka The supported operators are: * `=` for all value
  7444  	// types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring
  7445  	// matching, for strings. The supported value types are: * string literals in
  7446  	// quotes. * integer literals without quotes. * boolean literals `true` and
  7447  	// `false` without quotes. The following field and operator combinations are
  7448  	// supported: * name: `=` * update_time: `=`, `>`, `<`, `>=`, `<=` Usage: This
  7449  	// should be milliseconds since epoch or an RFC3339 string. Examples:
  7450  	// `update_time = "2019-06-10T16:07:18-07:00" `update_time = 1560208038000` *
  7451  	// create_time: `=`, `>`, `<`, `>=`, `<=` Usage: This should be milliseconds
  7452  	// since epoch or an RFC3339 string. Examples: `create_time =
  7453  	// "2019-06-10T16:07:18-07:00" `create_time = 1560208038000` *
  7454  	// iam_policy.policy_blob: `=`, `:` * resource_properties: `=`, `:`, `>`, `<`,
  7455  	// `>=`, `<=` * security_marks.marks: `=`, `:` *
  7456  	// security_center_properties.resource_name: `=`, `:` *
  7457  	// security_center_properties.resource_display_name: `=`, `:` *
  7458  	// security_center_properties.resource_type: `=`, `:` *
  7459  	// security_center_properties.resource_parent: `=`, `:` *
  7460  	// security_center_properties.resource_parent_display_name: `=`, `:` *
  7461  	// security_center_properties.resource_project: `=`, `:` *
  7462  	// security_center_properties.resource_project_display_name: `=`, `:` *
  7463  	// security_center_properties.resource_owners: `=`, `:` For example,
  7464  	// `resource_properties.size = 100` is a valid filter string. Use a partial
  7465  	// match on the empty string to filter based on a property existing:
  7466  	// `resource_properties.my_property : "" Use a negated partial match on the
  7467  	// empty string to filter based on a property not existing:
  7468  	// `-resource_properties.my_property : ""
  7469  	Filter string `json:"filter,omitempty"`
  7470  	// GroupBy: Required. Expression that defines what assets fields to use for
  7471  	// grouping. The string value should follow SQL syntax: comma separated list of
  7472  	// fields. For example:
  7473  	// "security_center_properties.resource_project,security_center_properties.proje
  7474  	// ct". The following fields are supported when compare_duration is not set: *
  7475  	// security_center_properties.resource_project *
  7476  	// security_center_properties.resource_project_display_name *
  7477  	// security_center_properties.resource_type *
  7478  	// security_center_properties.resource_parent *
  7479  	// security_center_properties.resource_parent_display_name The following fields
  7480  	// are supported when compare_duration is set: *
  7481  	// security_center_properties.resource_type *
  7482  	// security_center_properties.resource_project_display_name *
  7483  	// security_center_properties.resource_parent_display_name
  7484  	GroupBy string `json:"groupBy,omitempty"`
  7485  	// PageSize: The maximum number of results to return in a single response.
  7486  	// Default is 10, minimum is 1, maximum is 1000.
  7487  	PageSize int64 `json:"pageSize,omitempty"`
  7488  	// PageToken: The value returned by the last `GroupAssetsResponse`; indicates
  7489  	// that this is a continuation of a prior `GroupAssets` call, and that the
  7490  	// system should return the next page of data.
  7491  	PageToken string `json:"pageToken,omitempty"`
  7492  	// ReadTime: Time used as a reference point when filtering assets. The filter
  7493  	// is limited to assets existing at the supplied time and their values are
  7494  	// those at that specific time. Absence of this field will default to the API's
  7495  	// version of NOW.
  7496  	ReadTime string `json:"readTime,omitempty"`
  7497  	// ForceSendFields is a list of field names (e.g. "CompareDuration") to
  7498  	// unconditionally include in API requests. By default, fields with empty or
  7499  	// default values are omitted from API requests. See
  7500  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7501  	// details.
  7502  	ForceSendFields []string `json:"-"`
  7503  	// NullFields is a list of field names (e.g. "CompareDuration") to include in
  7504  	// API requests with the JSON null value. By default, fields with empty values
  7505  	// are omitted from API requests. See
  7506  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7507  	NullFields []string `json:"-"`
  7508  }
  7509  
  7510  func (s *GroupAssetsRequest) MarshalJSON() ([]byte, error) {
  7511  	type NoMethod GroupAssetsRequest
  7512  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7513  }
  7514  
  7515  // GroupAssetsResponse: Response message for grouping by assets.
  7516  type GroupAssetsResponse struct {
  7517  	// GroupByResults: Group results. There exists an element for each existing
  7518  	// unique combination of property/values. The element contains a count for the
  7519  	// number of times those specific property/values appear.
  7520  	GroupByResults []*GroupResult `json:"groupByResults,omitempty"`
  7521  	// NextPageToken: Token to retrieve the next page of results, or empty if there
  7522  	// are no more results.
  7523  	NextPageToken string `json:"nextPageToken,omitempty"`
  7524  	// ReadTime: Time used for executing the groupBy request.
  7525  	ReadTime string `json:"readTime,omitempty"`
  7526  	// TotalSize: The total number of results matching the query.
  7527  	TotalSize int64 `json:"totalSize,omitempty"`
  7528  
  7529  	// ServerResponse contains the HTTP response code and headers from the server.
  7530  	googleapi.ServerResponse `json:"-"`
  7531  	// ForceSendFields is a list of field names (e.g. "GroupByResults") to
  7532  	// unconditionally include in API requests. By default, fields with empty or
  7533  	// default values are omitted from API requests. See
  7534  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7535  	// details.
  7536  	ForceSendFields []string `json:"-"`
  7537  	// NullFields is a list of field names (e.g. "GroupByResults") to include in
  7538  	// API requests with the JSON null value. By default, fields with empty values
  7539  	// are omitted from API requests. See
  7540  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7541  	NullFields []string `json:"-"`
  7542  }
  7543  
  7544  func (s *GroupAssetsResponse) MarshalJSON() ([]byte, error) {
  7545  	type NoMethod GroupAssetsResponse
  7546  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7547  }
  7548  
  7549  // GroupFindingsRequest: Request message for grouping by findings.
  7550  type GroupFindingsRequest struct {
  7551  	// CompareDuration: When compare_duration is set, the GroupResult's
  7552  	// "state_change" attribute is updated to indicate whether the finding had its
  7553  	// state changed, the finding's state remained unchanged, or if the finding was
  7554  	// added during the compare_duration period of time that precedes the
  7555  	// read_time. This is the time between (read_time - compare_duration) and
  7556  	// read_time. The state_change value is derived based on the presence and state
  7557  	// of the finding at the two points in time. Intermediate state changes between
  7558  	// the two times don't affect the result. For example, the results aren't
  7559  	// affected if the finding is made inactive and then active again. Possible
  7560  	// "state_change" values when compare_duration is specified: * "CHANGED":
  7561  	// indicates that the finding was present and matched the given filter at the
  7562  	// start of compare_duration, but changed its state at read_time. *
  7563  	// "UNCHANGED": indicates that the finding was present and matched the given
  7564  	// filter at the start of compare_duration and did not change state at
  7565  	// read_time. * "ADDED": indicates that the finding did not match the given
  7566  	// filter or was not present at the start of compare_duration, but was present
  7567  	// at read_time. * "REMOVED": indicates that the finding was present and
  7568  	// matched the filter at the start of compare_duration, but did not match the
  7569  	// filter at read_time. If compare_duration is not specified, then the only
  7570  	// possible state_change is "UNUSED", which will be the state_change set for
  7571  	// all findings present at read_time. If this field is set then `state_change`
  7572  	// must be a specified field in `group_by`.
  7573  	CompareDuration string `json:"compareDuration,omitempty"`
  7574  	// Filter: Expression that defines the filter to apply across findings. The
  7575  	// expression is a list of one or more restrictions combined via logical
  7576  	// operators `AND` and `OR`. Parentheses are supported, and `OR` has higher
  7577  	// precedence than `AND`. Restrictions have the form ` ` and may have a `-`
  7578  	// character in front of them to indicate negation. Examples include: * name *
  7579  	// source_properties.a_property * security_marks.marks.marka The supported
  7580  	// operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer
  7581  	// values. * `:`, meaning substring matching, for strings. The supported value
  7582  	// types are: * string literals in quotes. * integer literals without quotes. *
  7583  	// boolean literals `true` and `false` without quotes. The following field and
  7584  	// operator combinations are supported: * name: `=` * parent: `=`, `:` *
  7585  	// resource_name: `=`, `:` * state: `=`, `:` * category: `=`, `:` *
  7586  	// external_uri: `=`, `:` * event_time: `=`, `>`, `<`, `>=`, `<=` Usage: This
  7587  	// should be milliseconds since epoch or an RFC3339 string. Examples:
  7588  	// `event_time = "2019-06-10T16:07:18-07:00" `event_time = 1560208038000` *
  7589  	// severity: `=`, `:` * workflow_state: `=`, `:` * security_marks.marks: `=`,
  7590  	// `:` * source_properties: `=`, `:`, `>`, `<`, `>=`, `<=` For example,
  7591  	// `source_properties.size = 100` is a valid filter string. Use a partial match
  7592  	// on the empty string to filter based on a property existing:
  7593  	// `source_properties.my_property : "" Use a negated partial match on the
  7594  	// empty string to filter based on a property not existing:
  7595  	// `-source_properties.my_property : "" * resource: * resource.name: `=`, `:`
  7596  	// * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` *
  7597  	// resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` *
  7598  	// resource.type: `=`, `:`
  7599  	Filter string `json:"filter,omitempty"`
  7600  	// GroupBy: Required. Expression that defines what assets fields to use for
  7601  	// grouping (including `state_change`). The string value should follow SQL
  7602  	// syntax: comma separated list of fields. For example: "parent,resource_name".
  7603  	// The following fields are supported when compare_duration is set: *
  7604  	// state_change
  7605  	GroupBy string `json:"groupBy,omitempty"`
  7606  	// PageSize: The maximum number of results to return in a single response.
  7607  	// Default is 10, minimum is 1, maximum is 1000.
  7608  	PageSize int64 `json:"pageSize,omitempty"`
  7609  	// PageToken: The value returned by the last `GroupFindingsResponse`; indicates
  7610  	// that this is a continuation of a prior `GroupFindings` call, and that the
  7611  	// system should return the next page of data.
  7612  	PageToken string `json:"pageToken,omitempty"`
  7613  	// ReadTime: Time used as a reference point when filtering findings. The filter
  7614  	// is limited to findings existing at the supplied time and their values are
  7615  	// those at that specific time. Absence of this field will default to the API's
  7616  	// version of NOW.
  7617  	ReadTime string `json:"readTime,omitempty"`
  7618  	// ForceSendFields is a list of field names (e.g. "CompareDuration") to
  7619  	// unconditionally include in API requests. By default, fields with empty or
  7620  	// default values are omitted from API requests. See
  7621  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7622  	// details.
  7623  	ForceSendFields []string `json:"-"`
  7624  	// NullFields is a list of field names (e.g. "CompareDuration") to include in
  7625  	// API requests with the JSON null value. By default, fields with empty values
  7626  	// are omitted from API requests. See
  7627  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7628  	NullFields []string `json:"-"`
  7629  }
  7630  
  7631  func (s *GroupFindingsRequest) MarshalJSON() ([]byte, error) {
  7632  	type NoMethod GroupFindingsRequest
  7633  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7634  }
  7635  
  7636  // GroupFindingsResponse: Response message for group by findings.
  7637  type GroupFindingsResponse struct {
  7638  	// GroupByResults: Group results. There exists an element for each existing
  7639  	// unique combination of property/values. The element contains a count for the
  7640  	// number of times those specific property/values appear.
  7641  	GroupByResults []*GroupResult `json:"groupByResults,omitempty"`
  7642  	// NextPageToken: Token to retrieve the next page of results, or empty if there
  7643  	// are no more results.
  7644  	NextPageToken string `json:"nextPageToken,omitempty"`
  7645  	// ReadTime: Time used for executing the groupBy request.
  7646  	ReadTime string `json:"readTime,omitempty"`
  7647  	// TotalSize: The total number of results matching the query.
  7648  	TotalSize int64 `json:"totalSize,omitempty"`
  7649  
  7650  	// ServerResponse contains the HTTP response code and headers from the server.
  7651  	googleapi.ServerResponse `json:"-"`
  7652  	// ForceSendFields is a list of field names (e.g. "GroupByResults") to
  7653  	// unconditionally include in API requests. By default, fields with empty or
  7654  	// default values are omitted from API requests. See
  7655  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7656  	// details.
  7657  	ForceSendFields []string `json:"-"`
  7658  	// NullFields is a list of field names (e.g. "GroupByResults") to include in
  7659  	// API requests with the JSON null value. By default, fields with empty values
  7660  	// are omitted from API requests. See
  7661  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7662  	NullFields []string `json:"-"`
  7663  }
  7664  
  7665  func (s *GroupFindingsResponse) MarshalJSON() ([]byte, error) {
  7666  	type NoMethod GroupFindingsResponse
  7667  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7668  }
  7669  
  7670  // GroupResult: Result containing the properties and count of a groupBy
  7671  // request.
  7672  type GroupResult struct {
  7673  	// Count: Total count of resources for the given properties.
  7674  	Count int64 `json:"count,omitempty,string"`
  7675  	// Properties: Properties matching the groupBy fields in the request.
  7676  	Properties googleapi.RawMessage `json:"properties,omitempty"`
  7677  	// ForceSendFields is a list of field names (e.g. "Count") to unconditionally
  7678  	// include in API requests. By default, fields with empty or default values are
  7679  	// omitted from API requests. See
  7680  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7681  	// details.
  7682  	ForceSendFields []string `json:"-"`
  7683  	// NullFields is a list of field names (e.g. "Count") to include in API
  7684  	// requests with the JSON null value. By default, fields with empty values are
  7685  	// omitted from API requests. See
  7686  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7687  	NullFields []string `json:"-"`
  7688  }
  7689  
  7690  func (s *GroupResult) MarshalJSON() ([]byte, error) {
  7691  	type NoMethod GroupResult
  7692  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7693  }
  7694  
  7695  // IamBinding: Represents a particular IAM binding, which captures a member's
  7696  // role addition, removal, or state.
  7697  type IamBinding struct {
  7698  	// Action: The action that was performed on a Binding.
  7699  	//
  7700  	// Possible values:
  7701  	//   "ACTION_UNSPECIFIED" - Unspecified.
  7702  	//   "ADD" - Addition of a Binding.
  7703  	//   "REMOVE" - Removal of a Binding.
  7704  	Action string `json:"action,omitempty"`
  7705  	// Member: A single identity requesting access for a Cloud Platform resource,
  7706  	// for example, "foo@google.com".
  7707  	Member string `json:"member,omitempty"`
  7708  	// Role: Role that is assigned to "members". For example, "roles/viewer",
  7709  	// "roles/editor", or "roles/owner".
  7710  	Role string `json:"role,omitempty"`
  7711  	// ForceSendFields is a list of field names (e.g. "Action") to unconditionally
  7712  	// include in API requests. By default, fields with empty or default values are
  7713  	// omitted from API requests. See
  7714  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7715  	// details.
  7716  	ForceSendFields []string `json:"-"`
  7717  	// NullFields is a list of field names (e.g. "Action") to include in API
  7718  	// requests with the JSON null value. By default, fields with empty values are
  7719  	// omitted from API requests. See
  7720  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7721  	NullFields []string `json:"-"`
  7722  }
  7723  
  7724  func (s *IamBinding) MarshalJSON() ([]byte, error) {
  7725  	type NoMethod IamBinding
  7726  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7727  }
  7728  
  7729  // IamPolicy: Cloud IAM Policy information associated with the Google Cloud
  7730  // resource described by the Security Command Center asset. This information is
  7731  // managed and defined by the Google Cloud resource and cannot be modified by
  7732  // the user.
  7733  type IamPolicy struct {
  7734  	// PolicyBlob: The JSON representation of the Policy associated with the asset.
  7735  	// See https://cloud.google.com/iam/reference/rest/v1/Policy for format
  7736  	// details.
  7737  	PolicyBlob string `json:"policyBlob,omitempty"`
  7738  	// ForceSendFields is a list of field names (e.g. "PolicyBlob") to
  7739  	// unconditionally include in API requests. By default, fields with empty or
  7740  	// default values are omitted from API requests. See
  7741  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7742  	// details.
  7743  	ForceSendFields []string `json:"-"`
  7744  	// NullFields is a list of field names (e.g. "PolicyBlob") to include in API
  7745  	// requests with the JSON null value. By default, fields with empty values are
  7746  	// omitted from API requests. See
  7747  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7748  	NullFields []string `json:"-"`
  7749  }
  7750  
  7751  func (s *IamPolicy) MarshalJSON() ([]byte, error) {
  7752  	type NoMethod IamPolicy
  7753  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7754  }
  7755  
  7756  // Indicator: Represents what's commonly known as an _indicator of compromise_
  7757  // (IoC) in computer forensics. This is an artifact observed on a network or in
  7758  // an operating system that, with high confidence, indicates a computer
  7759  // intrusion. For more information, see Indicator of compromise
  7760  // (https://en.wikipedia.org/wiki/Indicator_of_compromise).
  7761  type Indicator struct {
  7762  	// Domains: List of domains associated to the Finding.
  7763  	Domains []string `json:"domains,omitempty"`
  7764  	// IpAddresses: The list of IP addresses that are associated with the finding.
  7765  	IpAddresses []string `json:"ipAddresses,omitempty"`
  7766  	// Signatures: The list of matched signatures indicating that the given process
  7767  	// is present in the environment.
  7768  	Signatures []*ProcessSignature `json:"signatures,omitempty"`
  7769  	// Uris: The list of URIs associated to the Findings.
  7770  	Uris []string `json:"uris,omitempty"`
  7771  	// ForceSendFields is a list of field names (e.g. "Domains") to unconditionally
  7772  	// include in API requests. By default, fields with empty or default values are
  7773  	// omitted from API requests. See
  7774  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7775  	// details.
  7776  	ForceSendFields []string `json:"-"`
  7777  	// NullFields is a list of field names (e.g. "Domains") to include in API
  7778  	// requests with the JSON null value. By default, fields with empty values are
  7779  	// omitted from API requests. See
  7780  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7781  	NullFields []string `json:"-"`
  7782  }
  7783  
  7784  func (s *Indicator) MarshalJSON() ([]byte, error) {
  7785  	type NoMethod Indicator
  7786  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7787  }
  7788  
  7789  // KernelRootkit: Kernel mode rootkit signatures.
  7790  type KernelRootkit struct {
  7791  	// Name: Rootkit name, when available.
  7792  	Name string `json:"name,omitempty"`
  7793  	// UnexpectedCodeModification: True if unexpected modifications of kernel code
  7794  	// memory are present.
  7795  	UnexpectedCodeModification bool `json:"unexpectedCodeModification,omitempty"`
  7796  	// UnexpectedFtraceHandler: True if `ftrace` points are present with callbacks
  7797  	// pointing to regions that are not in the expected kernel or module code
  7798  	// range.
  7799  	UnexpectedFtraceHandler bool `json:"unexpectedFtraceHandler,omitempty"`
  7800  	// UnexpectedInterruptHandler: True if interrupt handlers that are are not in
  7801  	// the expected kernel or module code regions are present.
  7802  	UnexpectedInterruptHandler bool `json:"unexpectedInterruptHandler,omitempty"`
  7803  	// UnexpectedKernelCodePages: True if kernel code pages that are not in the
  7804  	// expected kernel or module code regions are present.
  7805  	UnexpectedKernelCodePages bool `json:"unexpectedKernelCodePages,omitempty"`
  7806  	// UnexpectedKprobeHandler: True if `kprobe` points are present with callbacks
  7807  	// pointing to regions that are not in the expected kernel or module code
  7808  	// range.
  7809  	UnexpectedKprobeHandler bool `json:"unexpectedKprobeHandler,omitempty"`
  7810  	// UnexpectedProcessesInRunqueue: True if unexpected processes in the scheduler
  7811  	// run queue are present. Such processes are in the run queue, but not in the
  7812  	// process task list.
  7813  	UnexpectedProcessesInRunqueue bool `json:"unexpectedProcessesInRunqueue,omitempty"`
  7814  	// UnexpectedReadOnlyDataModification: True if unexpected modifications of
  7815  	// kernel read-only data memory are present.
  7816  	UnexpectedReadOnlyDataModification bool `json:"unexpectedReadOnlyDataModification,omitempty"`
  7817  	// UnexpectedSystemCallHandler: True if system call handlers that are are not
  7818  	// in the expected kernel or module code regions are present.
  7819  	UnexpectedSystemCallHandler bool `json:"unexpectedSystemCallHandler,omitempty"`
  7820  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  7821  	// include in API requests. By default, fields with empty or default values are
  7822  	// omitted from API requests. See
  7823  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7824  	// details.
  7825  	ForceSendFields []string `json:"-"`
  7826  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  7827  	// with the JSON null value. By default, fields with empty values are omitted
  7828  	// from API requests. See
  7829  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7830  	NullFields []string `json:"-"`
  7831  }
  7832  
  7833  func (s *KernelRootkit) MarshalJSON() ([]byte, error) {
  7834  	type NoMethod KernelRootkit
  7835  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7836  }
  7837  
  7838  // Kubernetes: Kubernetes-related attributes.
  7839  type Kubernetes struct {
  7840  	// AccessReviews: Provides information on any Kubernetes access reviews
  7841  	// (privilege checks) relevant to the finding.
  7842  	AccessReviews []*AccessReview `json:"accessReviews,omitempty"`
  7843  	// Bindings: Provides Kubernetes role binding information for findings that
  7844  	// involve RoleBindings or ClusterRoleBindings
  7845  	// (https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control).
  7846  	Bindings []*GoogleCloudSecuritycenterV1Binding `json:"bindings,omitempty"`
  7847  	// NodePools: GKE node pools
  7848  	// (https://cloud.google.com/kubernetes-engine/docs/concepts/node-pools)
  7849  	// associated with the finding. This field contains node pool information for
  7850  	// each node, when it is available.
  7851  	NodePools []*NodePool `json:"nodePools,omitempty"`
  7852  	// Nodes: Provides Kubernetes node
  7853  	// (https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture#nodes)
  7854  	// information.
  7855  	Nodes []*Node `json:"nodes,omitempty"`
  7856  	// Objects: Kubernetes objects related to the finding.
  7857  	Objects []*Object `json:"objects,omitempty"`
  7858  	// Pods: Kubernetes Pods
  7859  	// (https://cloud.google.com/kubernetes-engine/docs/concepts/pod) associated
  7860  	// with the finding. This field contains Pod records for each container that is
  7861  	// owned by a Pod.
  7862  	Pods []*Pod `json:"pods,omitempty"`
  7863  	// Roles: Provides Kubernetes role information for findings that involve Roles
  7864  	// or ClusterRoles
  7865  	// (https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control).
  7866  	Roles []*Role `json:"roles,omitempty"`
  7867  	// ForceSendFields is a list of field names (e.g. "AccessReviews") to
  7868  	// unconditionally include in API requests. By default, fields with empty or
  7869  	// default values are omitted from API requests. See
  7870  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7871  	// details.
  7872  	ForceSendFields []string `json:"-"`
  7873  	// NullFields is a list of field names (e.g. "AccessReviews") to include in API
  7874  	// requests with the JSON null value. By default, fields with empty values are
  7875  	// omitted from API requests. See
  7876  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7877  	NullFields []string `json:"-"`
  7878  }
  7879  
  7880  func (s *Kubernetes) MarshalJSON() ([]byte, error) {
  7881  	type NoMethod Kubernetes
  7882  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7883  }
  7884  
  7885  // Label: Represents a generic name-value label. A label has separate name and
  7886  // value fields to support filtering with the `contains()` function. For more
  7887  // information, see Filtering on array-type fields
  7888  // (https://cloud.google.com/security-command-center/docs/how-to-api-list-findings#array-contains-filtering).
  7889  type Label struct {
  7890  	// Name: Name of the label.
  7891  	Name string `json:"name,omitempty"`
  7892  	// Value: Value that corresponds to the label's name.
  7893  	Value string `json:"value,omitempty"`
  7894  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  7895  	// include in API requests. By default, fields with empty or default values are
  7896  	// omitted from API requests. See
  7897  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7898  	// details.
  7899  	ForceSendFields []string `json:"-"`
  7900  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  7901  	// with the JSON null value. By default, fields with empty values are omitted
  7902  	// from API requests. See
  7903  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7904  	NullFields []string `json:"-"`
  7905  }
  7906  
  7907  func (s *Label) MarshalJSON() ([]byte, error) {
  7908  	type NoMethod Label
  7909  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7910  }
  7911  
  7912  // ListAssetsResponse: Response message for listing assets.
  7913  type ListAssetsResponse struct {
  7914  	// ListAssetsResults: Assets matching the list request.
  7915  	ListAssetsResults []*ListAssetsResult `json:"listAssetsResults,omitempty"`
  7916  	// NextPageToken: Token to retrieve the next page of results, or empty if there
  7917  	// are no more results.
  7918  	NextPageToken string `json:"nextPageToken,omitempty"`
  7919  	// ReadTime: Time used for executing the list request.
  7920  	ReadTime string `json:"readTime,omitempty"`
  7921  	// TotalSize: The total number of assets matching the query.
  7922  	TotalSize int64 `json:"totalSize,omitempty"`
  7923  
  7924  	// ServerResponse contains the HTTP response code and headers from the server.
  7925  	googleapi.ServerResponse `json:"-"`
  7926  	// ForceSendFields is a list of field names (e.g. "ListAssetsResults") to
  7927  	// unconditionally include in API requests. By default, fields with empty or
  7928  	// default values are omitted from API requests. See
  7929  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7930  	// details.
  7931  	ForceSendFields []string `json:"-"`
  7932  	// NullFields is a list of field names (e.g. "ListAssetsResults") to include in
  7933  	// API requests with the JSON null value. By default, fields with empty values
  7934  	// are omitted from API requests. See
  7935  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7936  	NullFields []string `json:"-"`
  7937  }
  7938  
  7939  func (s *ListAssetsResponse) MarshalJSON() ([]byte, error) {
  7940  	type NoMethod ListAssetsResponse
  7941  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7942  }
  7943  
  7944  // ListAssetsResult: Result containing the Asset and its State.
  7945  type ListAssetsResult struct {
  7946  	// Asset: Asset matching the search request.
  7947  	Asset *Asset `json:"asset,omitempty"`
  7948  	// StateChange: State change of the asset between the points in time.
  7949  	//
  7950  	// Possible values:
  7951  	//   "UNUSED" - State change is unused, this is the canonical default for this
  7952  	// enum.
  7953  	//   "ADDED" - Asset was added between the points in time.
  7954  	//   "REMOVED" - Asset was removed between the points in time.
  7955  	//   "ACTIVE" - Asset was present at both point(s) in time.
  7956  	StateChange string `json:"stateChange,omitempty"`
  7957  	// ForceSendFields is a list of field names (e.g. "Asset") to unconditionally
  7958  	// include in API requests. By default, fields with empty or default values are
  7959  	// omitted from API requests. See
  7960  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7961  	// details.
  7962  	ForceSendFields []string `json:"-"`
  7963  	// NullFields is a list of field names (e.g. "Asset") to include in API
  7964  	// requests with the JSON null value. By default, fields with empty values are
  7965  	// omitted from API requests. See
  7966  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7967  	NullFields []string `json:"-"`
  7968  }
  7969  
  7970  func (s *ListAssetsResult) MarshalJSON() ([]byte, error) {
  7971  	type NoMethod ListAssetsResult
  7972  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7973  }
  7974  
  7975  // ListAttackPathsResponse: Response message for listing the attack paths for a
  7976  // given simulation or valued resource.
  7977  type ListAttackPathsResponse struct {
  7978  	// AttackPaths: The attack paths that the attack path simulation identified.
  7979  	AttackPaths []*AttackPath `json:"attackPaths,omitempty"`
  7980  	// NextPageToken: Token to retrieve the next page of results, or empty if there
  7981  	// are no more results.
  7982  	NextPageToken string `json:"nextPageToken,omitempty"`
  7983  
  7984  	// ServerResponse contains the HTTP response code and headers from the server.
  7985  	googleapi.ServerResponse `json:"-"`
  7986  	// ForceSendFields is a list of field names (e.g. "AttackPaths") to
  7987  	// unconditionally include in API requests. By default, fields with empty or
  7988  	// default values are omitted from API requests. See
  7989  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7990  	// details.
  7991  	ForceSendFields []string `json:"-"`
  7992  	// NullFields is a list of field names (e.g. "AttackPaths") to include in API
  7993  	// requests with the JSON null value. By default, fields with empty values are
  7994  	// omitted from API requests. See
  7995  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7996  	NullFields []string `json:"-"`
  7997  }
  7998  
  7999  func (s *ListAttackPathsResponse) MarshalJSON() ([]byte, error) {
  8000  	type NoMethod ListAttackPathsResponse
  8001  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8002  }
  8003  
  8004  // ListBigQueryExportsResponse: Response message for listing BigQuery exports.
  8005  type ListBigQueryExportsResponse struct {
  8006  	// BigQueryExports: The BigQuery exports from the specified parent.
  8007  	BigQueryExports []*GoogleCloudSecuritycenterV1BigQueryExport `json:"bigQueryExports,omitempty"`
  8008  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
  8009  	// next page. If this field is omitted, there are no subsequent pages.
  8010  	NextPageToken string `json:"nextPageToken,omitempty"`
  8011  
  8012  	// ServerResponse contains the HTTP response code and headers from the server.
  8013  	googleapi.ServerResponse `json:"-"`
  8014  	// ForceSendFields is a list of field names (e.g. "BigQueryExports") to
  8015  	// unconditionally include in API requests. By default, fields with empty or
  8016  	// default values are omitted from API requests. See
  8017  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8018  	// details.
  8019  	ForceSendFields []string `json:"-"`
  8020  	// NullFields is a list of field names (e.g. "BigQueryExports") to include in
  8021  	// API requests with the JSON null value. By default, fields with empty values
  8022  	// are omitted from API requests. See
  8023  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8024  	NullFields []string `json:"-"`
  8025  }
  8026  
  8027  func (s *ListBigQueryExportsResponse) MarshalJSON() ([]byte, error) {
  8028  	type NoMethod ListBigQueryExportsResponse
  8029  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8030  }
  8031  
  8032  // ListDescendantEventThreatDetectionCustomModulesResponse: Response for
  8033  // listing current and descendant resident Event Threat Detection custom
  8034  // modules.
  8035  type ListDescendantEventThreatDetectionCustomModulesResponse struct {
  8036  	// EventThreatDetectionCustomModules: Custom modules belonging to the requested
  8037  	// parent.
  8038  	EventThreatDetectionCustomModules []*EventThreatDetectionCustomModule `json:"eventThreatDetectionCustomModules,omitempty"`
  8039  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
  8040  	// next page. If this field is omitted, there are no subsequent pages.
  8041  	NextPageToken string `json:"nextPageToken,omitempty"`
  8042  
  8043  	// ServerResponse contains the HTTP response code and headers from the server.
  8044  	googleapi.ServerResponse `json:"-"`
  8045  	// ForceSendFields is a list of field names (e.g.
  8046  	// "EventThreatDetectionCustomModules") to unconditionally include in API
  8047  	// requests. By default, fields with empty or default values are omitted from
  8048  	// API requests. See
  8049  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8050  	// details.
  8051  	ForceSendFields []string `json:"-"`
  8052  	// NullFields is a list of field names (e.g.
  8053  	// "EventThreatDetectionCustomModules") to include in API requests with the
  8054  	// JSON null value. By default, fields with empty values are omitted from API
  8055  	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-NullFields for
  8056  	// more details.
  8057  	NullFields []string `json:"-"`
  8058  }
  8059  
  8060  func (s *ListDescendantEventThreatDetectionCustomModulesResponse) MarshalJSON() ([]byte, error) {
  8061  	type NoMethod ListDescendantEventThreatDetectionCustomModulesResponse
  8062  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8063  }
  8064  
  8065  // ListDescendantSecurityHealthAnalyticsCustomModulesResponse: Response message
  8066  // for listing descendant Security Health Analytics custom modules.
  8067  type ListDescendantSecurityHealthAnalyticsCustomModulesResponse struct {
  8068  	// NextPageToken: If not empty, indicates that there may be more custom modules
  8069  	// to be returned.
  8070  	NextPageToken string `json:"nextPageToken,omitempty"`
  8071  	// SecurityHealthAnalyticsCustomModules: Custom modules belonging to the
  8072  	// requested parent and its descendants.
  8073  	SecurityHealthAnalyticsCustomModules []*GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule `json:"securityHealthAnalyticsCustomModules,omitempty"`
  8074  
  8075  	// ServerResponse contains the HTTP response code and headers from the server.
  8076  	googleapi.ServerResponse `json:"-"`
  8077  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  8078  	// unconditionally include in API requests. By default, fields with empty or
  8079  	// default values are omitted from API requests. See
  8080  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8081  	// details.
  8082  	ForceSendFields []string `json:"-"`
  8083  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  8084  	// requests with the JSON null value. By default, fields with empty values are
  8085  	// omitted from API requests. See
  8086  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8087  	NullFields []string `json:"-"`
  8088  }
  8089  
  8090  func (s *ListDescendantSecurityHealthAnalyticsCustomModulesResponse) MarshalJSON() ([]byte, error) {
  8091  	type NoMethod ListDescendantSecurityHealthAnalyticsCustomModulesResponse
  8092  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8093  }
  8094  
  8095  // ListEffectiveEventThreatDetectionCustomModulesResponse: Response for listing
  8096  // EffectiveEventThreatDetectionCustomModules.
  8097  type ListEffectiveEventThreatDetectionCustomModulesResponse struct {
  8098  	// EffectiveEventThreatDetectionCustomModules: Effective custom modules
  8099  	// belonging to the requested parent.
  8100  	EffectiveEventThreatDetectionCustomModules []*EffectiveEventThreatDetectionCustomModule `json:"effectiveEventThreatDetectionCustomModules,omitempty"`
  8101  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
  8102  	// next page. If this field is omitted, there are no subsequent pages.
  8103  	NextPageToken string `json:"nextPageToken,omitempty"`
  8104  
  8105  	// ServerResponse contains the HTTP response code and headers from the server.
  8106  	googleapi.ServerResponse `json:"-"`
  8107  	// ForceSendFields is a list of field names (e.g.
  8108  	// "EffectiveEventThreatDetectionCustomModules") to unconditionally include in
  8109  	// API requests. By default, fields with empty or default values are omitted
  8110  	// from API requests. See
  8111  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8112  	// details.
  8113  	ForceSendFields []string `json:"-"`
  8114  	// NullFields is a list of field names (e.g.
  8115  	// "EffectiveEventThreatDetectionCustomModules") to include in API requests
  8116  	// with the JSON null value. By default, fields with empty values are omitted
  8117  	// from API requests. See
  8118  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8119  	NullFields []string `json:"-"`
  8120  }
  8121  
  8122  func (s *ListEffectiveEventThreatDetectionCustomModulesResponse) MarshalJSON() ([]byte, error) {
  8123  	type NoMethod ListEffectiveEventThreatDetectionCustomModulesResponse
  8124  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8125  }
  8126  
  8127  // ListEffectiveSecurityHealthAnalyticsCustomModulesResponse: Response message
  8128  // for listing effective Security Health Analytics custom modules.
  8129  type ListEffectiveSecurityHealthAnalyticsCustomModulesResponse struct {
  8130  	// EffectiveSecurityHealthAnalyticsCustomModules: Effective custom modules
  8131  	// belonging to the requested parent.
  8132  	EffectiveSecurityHealthAnalyticsCustomModules []*GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule `json:"effectiveSecurityHealthAnalyticsCustomModules,omitempty"`
  8133  	// NextPageToken: If not empty, indicates that there may be more effective
  8134  	// custom modules to be returned.
  8135  	NextPageToken string `json:"nextPageToken,omitempty"`
  8136  
  8137  	// ServerResponse contains the HTTP response code and headers from the server.
  8138  	googleapi.ServerResponse `json:"-"`
  8139  	// ForceSendFields is a list of field names (e.g.
  8140  	// "EffectiveSecurityHealthAnalyticsCustomModules") to unconditionally include
  8141  	// in API requests. By default, fields with empty or default values are omitted
  8142  	// from API requests. See
  8143  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8144  	// details.
  8145  	ForceSendFields []string `json:"-"`
  8146  	// NullFields is a list of field names (e.g.
  8147  	// "EffectiveSecurityHealthAnalyticsCustomModules") to include in API requests
  8148  	// with the JSON null value. By default, fields with empty values are omitted
  8149  	// from API requests. See
  8150  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8151  	NullFields []string `json:"-"`
  8152  }
  8153  
  8154  func (s *ListEffectiveSecurityHealthAnalyticsCustomModulesResponse) MarshalJSON() ([]byte, error) {
  8155  	type NoMethod ListEffectiveSecurityHealthAnalyticsCustomModulesResponse
  8156  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8157  }
  8158  
  8159  // ListEventThreatDetectionCustomModulesResponse: Response for listing Event
  8160  // Threat Detection custom modules.
  8161  type ListEventThreatDetectionCustomModulesResponse struct {
  8162  	// EventThreatDetectionCustomModules: Custom modules belonging to the requested
  8163  	// parent.
  8164  	EventThreatDetectionCustomModules []*EventThreatDetectionCustomModule `json:"eventThreatDetectionCustomModules,omitempty"`
  8165  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
  8166  	// next page. If this field is omitted, there are no subsequent pages.
  8167  	NextPageToken string `json:"nextPageToken,omitempty"`
  8168  
  8169  	// ServerResponse contains the HTTP response code and headers from the server.
  8170  	googleapi.ServerResponse `json:"-"`
  8171  	// ForceSendFields is a list of field names (e.g.
  8172  	// "EventThreatDetectionCustomModules") to unconditionally include in API
  8173  	// requests. By default, fields with empty or default values are omitted from
  8174  	// API requests. See
  8175  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8176  	// details.
  8177  	ForceSendFields []string `json:"-"`
  8178  	// NullFields is a list of field names (e.g.
  8179  	// "EventThreatDetectionCustomModules") to include in API requests with the
  8180  	// JSON null value. By default, fields with empty values are omitted from API
  8181  	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-NullFields for
  8182  	// more details.
  8183  	NullFields []string `json:"-"`
  8184  }
  8185  
  8186  func (s *ListEventThreatDetectionCustomModulesResponse) MarshalJSON() ([]byte, error) {
  8187  	type NoMethod ListEventThreatDetectionCustomModulesResponse
  8188  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8189  }
  8190  
  8191  // ListFindingsResponse: Response message for listing findings.
  8192  type ListFindingsResponse struct {
  8193  	// ListFindingsResults: Findings matching the list request.
  8194  	ListFindingsResults []*ListFindingsResult `json:"listFindingsResults,omitempty"`
  8195  	// NextPageToken: Token to retrieve the next page of results, or empty if there
  8196  	// are no more results.
  8197  	NextPageToken string `json:"nextPageToken,omitempty"`
  8198  	// ReadTime: Time used for executing the list request.
  8199  	ReadTime string `json:"readTime,omitempty"`
  8200  	// TotalSize: The total number of findings matching the query.
  8201  	TotalSize int64 `json:"totalSize,omitempty"`
  8202  
  8203  	// ServerResponse contains the HTTP response code and headers from the server.
  8204  	googleapi.ServerResponse `json:"-"`
  8205  	// ForceSendFields is a list of field names (e.g. "ListFindingsResults") to
  8206  	// unconditionally include in API requests. By default, fields with empty or
  8207  	// default values are omitted from API requests. See
  8208  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8209  	// details.
  8210  	ForceSendFields []string `json:"-"`
  8211  	// NullFields is a list of field names (e.g. "ListFindingsResults") to include
  8212  	// in API requests with the JSON null value. By default, fields with empty
  8213  	// values are omitted from API requests. See
  8214  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8215  	NullFields []string `json:"-"`
  8216  }
  8217  
  8218  func (s *ListFindingsResponse) MarshalJSON() ([]byte, error) {
  8219  	type NoMethod ListFindingsResponse
  8220  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8221  }
  8222  
  8223  // ListFindingsResult: Result containing the Finding and its StateChange.
  8224  type ListFindingsResult struct {
  8225  	// Finding: Finding matching the search request.
  8226  	Finding *Finding `json:"finding,omitempty"`
  8227  	// Resource: Output only. Resource that is associated with this finding.
  8228  	Resource *Resource `json:"resource,omitempty"`
  8229  	// StateChange: State change of the finding between the points in time.
  8230  	//
  8231  	// Possible values:
  8232  	//   "UNUSED" - State change is unused, this is the canonical default for this
  8233  	// enum.
  8234  	//   "CHANGED" - The finding has changed state in some way between the points
  8235  	// in time and existed at both points.
  8236  	//   "UNCHANGED" - The finding has not changed state between the points in time
  8237  	// and existed at both points.
  8238  	//   "ADDED" - The finding was created between the points in time.
  8239  	//   "REMOVED" - The finding at timestamp does not match the filter specified,
  8240  	// but it did at timestamp - compare_duration.
  8241  	StateChange string `json:"stateChange,omitempty"`
  8242  	// ForceSendFields is a list of field names (e.g. "Finding") to unconditionally
  8243  	// include in API requests. By default, fields with empty or default values are
  8244  	// omitted from API requests. See
  8245  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8246  	// details.
  8247  	ForceSendFields []string `json:"-"`
  8248  	// NullFields is a list of field names (e.g. "Finding") to include in API
  8249  	// requests with the JSON null value. By default, fields with empty values are
  8250  	// omitted from API requests. See
  8251  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8252  	NullFields []string `json:"-"`
  8253  }
  8254  
  8255  func (s *ListFindingsResult) MarshalJSON() ([]byte, error) {
  8256  	type NoMethod ListFindingsResult
  8257  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8258  }
  8259  
  8260  // ListMuteConfigsResponse: Response message for listing mute configs.
  8261  type ListMuteConfigsResponse struct {
  8262  	// MuteConfigs: The mute configs from the specified parent.
  8263  	MuteConfigs []*GoogleCloudSecuritycenterV1MuteConfig `json:"muteConfigs,omitempty"`
  8264  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
  8265  	// next page. If this field is omitted, there are no subsequent pages.
  8266  	NextPageToken string `json:"nextPageToken,omitempty"`
  8267  
  8268  	// ServerResponse contains the HTTP response code and headers from the server.
  8269  	googleapi.ServerResponse `json:"-"`
  8270  	// ForceSendFields is a list of field names (e.g. "MuteConfigs") to
  8271  	// unconditionally include in API requests. By default, fields with empty or
  8272  	// default values are omitted from API requests. See
  8273  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8274  	// details.
  8275  	ForceSendFields []string `json:"-"`
  8276  	// NullFields is a list of field names (e.g. "MuteConfigs") to include in API
  8277  	// requests with the JSON null value. By default, fields with empty values are
  8278  	// omitted from API requests. See
  8279  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8280  	NullFields []string `json:"-"`
  8281  }
  8282  
  8283  func (s *ListMuteConfigsResponse) MarshalJSON() ([]byte, error) {
  8284  	type NoMethod ListMuteConfigsResponse
  8285  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8286  }
  8287  
  8288  // ListNotificationConfigsResponse: Response message for listing notification
  8289  // configs.
  8290  type ListNotificationConfigsResponse struct {
  8291  	// NextPageToken: Token to retrieve the next page of results, or empty if there
  8292  	// are no more results.
  8293  	NextPageToken string `json:"nextPageToken,omitempty"`
  8294  	// NotificationConfigs: Notification configs belonging to the requested parent.
  8295  	NotificationConfigs []*NotificationConfig `json:"notificationConfigs,omitempty"`
  8296  
  8297  	// ServerResponse contains the HTTP response code and headers from the server.
  8298  	googleapi.ServerResponse `json:"-"`
  8299  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  8300  	// unconditionally include in API requests. By default, fields with empty or
  8301  	// default values are omitted from API requests. See
  8302  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8303  	// details.
  8304  	ForceSendFields []string `json:"-"`
  8305  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  8306  	// requests with the JSON null value. By default, fields with empty values are
  8307  	// omitted from API requests. See
  8308  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8309  	NullFields []string `json:"-"`
  8310  }
  8311  
  8312  func (s *ListNotificationConfigsResponse) MarshalJSON() ([]byte, error) {
  8313  	type NoMethod ListNotificationConfigsResponse
  8314  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8315  }
  8316  
  8317  // ListOperationsResponse: The response message for Operations.ListOperations.
  8318  type ListOperationsResponse struct {
  8319  	// NextPageToken: The standard List next-page token.
  8320  	NextPageToken string `json:"nextPageToken,omitempty"`
  8321  	// Operations: A list of operations that matches the specified filter in the
  8322  	// request.
  8323  	Operations []*Operation `json:"operations,omitempty"`
  8324  
  8325  	// ServerResponse contains the HTTP response code and headers from the server.
  8326  	googleapi.ServerResponse `json:"-"`
  8327  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  8328  	// unconditionally include in API requests. By default, fields with empty or
  8329  	// default values are omitted from API requests. See
  8330  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8331  	// details.
  8332  	ForceSendFields []string `json:"-"`
  8333  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  8334  	// requests with the JSON null value. By default, fields with empty values are
  8335  	// omitted from API requests. See
  8336  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8337  	NullFields []string `json:"-"`
  8338  }
  8339  
  8340  func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) {
  8341  	type NoMethod ListOperationsResponse
  8342  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8343  }
  8344  
  8345  // ListResourceValueConfigsResponse: Response message to list resource value
  8346  // configs
  8347  type ListResourceValueConfigsResponse struct {
  8348  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
  8349  	// next page. If this field is empty, there are no subsequent pages.
  8350  	NextPageToken string `json:"nextPageToken,omitempty"`
  8351  	// ResourceValueConfigs: The resource value configs from the specified parent.
  8352  	ResourceValueConfigs []*GoogleCloudSecuritycenterV1ResourceValueConfig `json:"resourceValueConfigs,omitempty"`
  8353  
  8354  	// ServerResponse contains the HTTP response code and headers from the server.
  8355  	googleapi.ServerResponse `json:"-"`
  8356  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  8357  	// unconditionally include in API requests. By default, fields with empty or
  8358  	// default values are omitted from API requests. See
  8359  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8360  	// details.
  8361  	ForceSendFields []string `json:"-"`
  8362  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  8363  	// requests with the JSON null value. By default, fields with empty values are
  8364  	// omitted from API requests. See
  8365  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8366  	NullFields []string `json:"-"`
  8367  }
  8368  
  8369  func (s *ListResourceValueConfigsResponse) MarshalJSON() ([]byte, error) {
  8370  	type NoMethod ListResourceValueConfigsResponse
  8371  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8372  }
  8373  
  8374  // ListSecurityHealthAnalyticsCustomModulesResponse: Response message for
  8375  // listing Security Health Analytics custom modules.
  8376  type ListSecurityHealthAnalyticsCustomModulesResponse struct {
  8377  	// NextPageToken: If not empty, indicates that there may be more custom modules
  8378  	// to be returned.
  8379  	NextPageToken string `json:"nextPageToken,omitempty"`
  8380  	// SecurityHealthAnalyticsCustomModules: Custom modules belonging to the
  8381  	// requested parent.
  8382  	SecurityHealthAnalyticsCustomModules []*GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule `json:"securityHealthAnalyticsCustomModules,omitempty"`
  8383  
  8384  	// ServerResponse contains the HTTP response code and headers from the server.
  8385  	googleapi.ServerResponse `json:"-"`
  8386  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  8387  	// unconditionally include in API requests. By default, fields with empty or
  8388  	// default values are omitted from API requests. See
  8389  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8390  	// details.
  8391  	ForceSendFields []string `json:"-"`
  8392  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  8393  	// requests with the JSON null value. By default, fields with empty values are
  8394  	// omitted from API requests. See
  8395  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8396  	NullFields []string `json:"-"`
  8397  }
  8398  
  8399  func (s *ListSecurityHealthAnalyticsCustomModulesResponse) MarshalJSON() ([]byte, error) {
  8400  	type NoMethod ListSecurityHealthAnalyticsCustomModulesResponse
  8401  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8402  }
  8403  
  8404  // ListSourcesResponse: Response message for listing sources.
  8405  type ListSourcesResponse struct {
  8406  	// NextPageToken: Token to retrieve the next page of results, or empty if there
  8407  	// are no more results.
  8408  	NextPageToken string `json:"nextPageToken,omitempty"`
  8409  	// Sources: Sources belonging to the requested parent.
  8410  	Sources []*Source `json:"sources,omitempty"`
  8411  
  8412  	// ServerResponse contains the HTTP response code and headers from the server.
  8413  	googleapi.ServerResponse `json:"-"`
  8414  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  8415  	// unconditionally include in API requests. By default, fields with empty or
  8416  	// default values are omitted from API requests. See
  8417  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8418  	// details.
  8419  	ForceSendFields []string `json:"-"`
  8420  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  8421  	// requests with the JSON null value. By default, fields with empty values are
  8422  	// omitted from API requests. See
  8423  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8424  	NullFields []string `json:"-"`
  8425  }
  8426  
  8427  func (s *ListSourcesResponse) MarshalJSON() ([]byte, error) {
  8428  	type NoMethod ListSourcesResponse
  8429  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8430  }
  8431  
  8432  // ListValuedResourcesResponse: Response message for listing the valued
  8433  // resources for a given simulation.
  8434  type ListValuedResourcesResponse struct {
  8435  	// NextPageToken: Token to retrieve the next page of results, or empty if there
  8436  	// are no more results.
  8437  	NextPageToken string `json:"nextPageToken,omitempty"`
  8438  	// TotalSize: The estimated total number of results matching the query.
  8439  	TotalSize int64 `json:"totalSize,omitempty"`
  8440  	// ValuedResources: The valued resources that the attack path simulation
  8441  	// identified.
  8442  	ValuedResources []*ValuedResource `json:"valuedResources,omitempty"`
  8443  
  8444  	// ServerResponse contains the HTTP response code and headers from the server.
  8445  	googleapi.ServerResponse `json:"-"`
  8446  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  8447  	// unconditionally include in API requests. By default, fields with empty or
  8448  	// default values are omitted from API requests. See
  8449  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8450  	// details.
  8451  	ForceSendFields []string `json:"-"`
  8452  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  8453  	// requests with the JSON null value. By default, fields with empty values are
  8454  	// omitted from API requests. See
  8455  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8456  	NullFields []string `json:"-"`
  8457  }
  8458  
  8459  func (s *ListValuedResourcesResponse) MarshalJSON() ([]byte, error) {
  8460  	type NoMethod ListValuedResourcesResponse
  8461  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8462  }
  8463  
  8464  // LoadBalancer: Contains information related to the load balancer associated
  8465  // with the finding.
  8466  type LoadBalancer struct {
  8467  	// Name: The name of the load balancer associated with the finding.
  8468  	Name string `json:"name,omitempty"`
  8469  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  8470  	// include in API requests. By default, fields with empty or default values are
  8471  	// omitted from API requests. See
  8472  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8473  	// details.
  8474  	ForceSendFields []string `json:"-"`
  8475  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  8476  	// with the JSON null value. By default, fields with empty values are omitted
  8477  	// from API requests. See
  8478  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8479  	NullFields []string `json:"-"`
  8480  }
  8481  
  8482  func (s *LoadBalancer) MarshalJSON() ([]byte, error) {
  8483  	type NoMethod LoadBalancer
  8484  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8485  }
  8486  
  8487  // LogEntry: An individual entry in a log.
  8488  type LogEntry struct {
  8489  	// CloudLoggingEntry: An individual entry in a log stored in Cloud Logging.
  8490  	CloudLoggingEntry *CloudLoggingEntry `json:"cloudLoggingEntry,omitempty"`
  8491  	// ForceSendFields is a list of field names (e.g. "CloudLoggingEntry") to
  8492  	// unconditionally include in API requests. By default, fields with empty or
  8493  	// default values are omitted from API requests. See
  8494  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8495  	// details.
  8496  	ForceSendFields []string `json:"-"`
  8497  	// NullFields is a list of field names (e.g. "CloudLoggingEntry") to include in
  8498  	// API requests with the JSON null value. By default, fields with empty values
  8499  	// are omitted from API requests. See
  8500  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8501  	NullFields []string `json:"-"`
  8502  }
  8503  
  8504  func (s *LogEntry) MarshalJSON() ([]byte, error) {
  8505  	type NoMethod LogEntry
  8506  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8507  }
  8508  
  8509  // MemoryHashSignature: A signature corresponding to memory page hashes.
  8510  type MemoryHashSignature struct {
  8511  	// BinaryFamily: The binary family.
  8512  	BinaryFamily string `json:"binaryFamily,omitempty"`
  8513  	// Detections: The list of memory hash detections contributing to the binary
  8514  	// family match.
  8515  	Detections []*Detection `json:"detections,omitempty"`
  8516  	// ForceSendFields is a list of field names (e.g. "BinaryFamily") to
  8517  	// unconditionally include in API requests. By default, fields with empty or
  8518  	// default values are omitted from API requests. See
  8519  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8520  	// details.
  8521  	ForceSendFields []string `json:"-"`
  8522  	// NullFields is a list of field names (e.g. "BinaryFamily") to include in API
  8523  	// requests with the JSON null value. By default, fields with empty values are
  8524  	// omitted from API requests. See
  8525  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8526  	NullFields []string `json:"-"`
  8527  }
  8528  
  8529  func (s *MemoryHashSignature) MarshalJSON() ([]byte, error) {
  8530  	type NoMethod MemoryHashSignature
  8531  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8532  }
  8533  
  8534  // MitreAttack: MITRE ATT&CK tactics and techniques related to this finding.
  8535  // See: https://attack.mitre.org
  8536  type MitreAttack struct {
  8537  	// AdditionalTactics: Additional MITRE ATT&CK tactics related to this finding,
  8538  	// if any.
  8539  	//
  8540  	// Possible values:
  8541  	//   "TACTIC_UNSPECIFIED" - Unspecified value.
  8542  	//   "RECONNAISSANCE" - TA0043
  8543  	//   "RESOURCE_DEVELOPMENT" - TA0042
  8544  	//   "INITIAL_ACCESS" - TA0001
  8545  	//   "EXECUTION" - TA0002
  8546  	//   "PERSISTENCE" - TA0003
  8547  	//   "PRIVILEGE_ESCALATION" - TA0004
  8548  	//   "DEFENSE_EVASION" - TA0005
  8549  	//   "CREDENTIAL_ACCESS" - TA0006
  8550  	//   "DISCOVERY" - TA0007
  8551  	//   "LATERAL_MOVEMENT" - TA0008
  8552  	//   "COLLECTION" - TA0009
  8553  	//   "COMMAND_AND_CONTROL" - TA0011
  8554  	//   "EXFILTRATION" - TA0010
  8555  	//   "IMPACT" - TA0040
  8556  	AdditionalTactics []string `json:"additionalTactics,omitempty"`
  8557  	// AdditionalTechniques: Additional MITRE ATT&CK techniques related to this
  8558  	// finding, if any, along with any of their respective parent techniques.
  8559  	//
  8560  	// Possible values:
  8561  	//   "TECHNIQUE_UNSPECIFIED" - Unspecified value.
  8562  	//   "MASQUERADING" - T1036
  8563  	//   "MATCH_LEGITIMATE_NAME_OR_LOCATION" - T1036.005
  8564  	//   "BOOT_OR_LOGON_INITIALIZATION_SCRIPTS" - T1037
  8565  	//   "STARTUP_ITEMS" - T1037.005
  8566  	//   "NETWORK_SERVICE_DISCOVERY" - T1046
  8567  	//   "PROCESS_DISCOVERY" - T1057
  8568  	//   "COMMAND_AND_SCRIPTING_INTERPRETER" - T1059
  8569  	//   "UNIX_SHELL" - T1059.004
  8570  	//   "PYTHON" - T1059.006
  8571  	//   "PERMISSION_GROUPS_DISCOVERY" - T1069
  8572  	//   "CLOUD_GROUPS" - T1069.003
  8573  	//   "APPLICATION_LAYER_PROTOCOL" - T1071
  8574  	//   "DNS" - T1071.004
  8575  	//   "SOFTWARE_DEPLOYMENT_TOOLS" - T1072
  8576  	//   "VALID_ACCOUNTS" - T1078
  8577  	//   "DEFAULT_ACCOUNTS" - T1078.001
  8578  	//   "LOCAL_ACCOUNTS" - T1078.003
  8579  	//   "CLOUD_ACCOUNTS" - T1078.004
  8580  	//   "PROXY" - T1090
  8581  	//   "EXTERNAL_PROXY" - T1090.002
  8582  	//   "MULTI_HOP_PROXY" - T1090.003
  8583  	//   "ACCOUNT_MANIPULATION" - T1098
  8584  	//   "ADDITIONAL_CLOUD_CREDENTIALS" - T1098.001
  8585  	//   "SSH_AUTHORIZED_KEYS" - T1098.004
  8586  	//   "ADDITIONAL_CONTAINER_CLUSTER_ROLES" - T1098.006
  8587  	//   "INGRESS_TOOL_TRANSFER" - T1105
  8588  	//   "NATIVE_API" - T1106
  8589  	//   "BRUTE_FORCE" - T1110
  8590  	//   "SHARED_MODULES" - T1129
  8591  	//   "ACCESS_TOKEN_MANIPULATION" - T1134
  8592  	//   "TOKEN_IMPERSONATION_OR_THEFT" - T1134.001
  8593  	//   "EXPLOIT_PUBLIC_FACING_APPLICATION" - T1190
  8594  	//   "DOMAIN_POLICY_MODIFICATION" - T1484
  8595  	//   "DATA_DESTRUCTION" - T1485
  8596  	//   "SERVICE_STOP" - T1489
  8597  	//   "INHIBIT_SYSTEM_RECOVERY" - T1490
  8598  	//   "RESOURCE_HIJACKING" - T1496
  8599  	//   "NETWORK_DENIAL_OF_SERVICE" - T1498
  8600  	//   "CLOUD_SERVICE_DISCOVERY" - T1526
  8601  	//   "STEAL_APPLICATION_ACCESS_TOKEN" - T1528
  8602  	//   "ACCOUNT_ACCESS_REMOVAL" - T1531
  8603  	//   "STEAL_WEB_SESSION_COOKIE" - T1539
  8604  	//   "CREATE_OR_MODIFY_SYSTEM_PROCESS" - T1543
  8605  	//   "ABUSE_ELEVATION_CONTROL_MECHANISM" - T1548
  8606  	//   "UNSECURED_CREDENTIALS" - T1552
  8607  	//   "MODIFY_AUTHENTICATION_PROCESS" - T1556
  8608  	//   "IMPAIR_DEFENSES" - T1562
  8609  	//   "DISABLE_OR_MODIFY_TOOLS" - T1562.001
  8610  	//   "EXFILTRATION_OVER_WEB_SERVICE" - T1567
  8611  	//   "EXFILTRATION_TO_CLOUD_STORAGE" - T1567.002
  8612  	//   "DYNAMIC_RESOLUTION" - T1568
  8613  	//   "LATERAL_TOOL_TRANSFER" - T1570
  8614  	//   "MODIFY_CLOUD_COMPUTE_INFRASTRUCTURE" - T1578
  8615  	//   "CREATE_SNAPSHOT" - T1578.001
  8616  	//   "CLOUD_INFRASTRUCTURE_DISCOVERY" - T1580
  8617  	//   "OBTAIN_CAPABILITIES" - T1588
  8618  	//   "ACTIVE_SCANNING" - T1595
  8619  	//   "SCANNING_IP_BLOCKS" - T1595.001
  8620  	//   "CONTAINER_AND_RESOURCE_DISCOVERY" - T1613
  8621  	AdditionalTechniques []string `json:"additionalTechniques,omitempty"`
  8622  	// PrimaryTactic: The MITRE ATT&CK tactic most closely represented by this
  8623  	// finding, if any.
  8624  	//
  8625  	// Possible values:
  8626  	//   "TACTIC_UNSPECIFIED" - Unspecified value.
  8627  	//   "RECONNAISSANCE" - TA0043
  8628  	//   "RESOURCE_DEVELOPMENT" - TA0042
  8629  	//   "INITIAL_ACCESS" - TA0001
  8630  	//   "EXECUTION" - TA0002
  8631  	//   "PERSISTENCE" - TA0003
  8632  	//   "PRIVILEGE_ESCALATION" - TA0004
  8633  	//   "DEFENSE_EVASION" - TA0005
  8634  	//   "CREDENTIAL_ACCESS" - TA0006
  8635  	//   "DISCOVERY" - TA0007
  8636  	//   "LATERAL_MOVEMENT" - TA0008
  8637  	//   "COLLECTION" - TA0009
  8638  	//   "COMMAND_AND_CONTROL" - TA0011
  8639  	//   "EXFILTRATION" - TA0010
  8640  	//   "IMPACT" - TA0040
  8641  	PrimaryTactic string `json:"primaryTactic,omitempty"`
  8642  	// PrimaryTechniques: The MITRE ATT&CK technique most closely represented by
  8643  	// this finding, if any. primary_techniques is a repeated field because there
  8644  	// are multiple levels of MITRE ATT&CK techniques. If the technique most
  8645  	// closely represented by this finding is a sub-technique (e.g.
  8646  	// `SCANNING_IP_BLOCKS`), both the sub-technique and its parent technique(s)
  8647  	// will be listed (e.g. `SCANNING_IP_BLOCKS`, `ACTIVE_SCANNING`).
  8648  	//
  8649  	// Possible values:
  8650  	//   "TECHNIQUE_UNSPECIFIED" - Unspecified value.
  8651  	//   "MASQUERADING" - T1036
  8652  	//   "MATCH_LEGITIMATE_NAME_OR_LOCATION" - T1036.005
  8653  	//   "BOOT_OR_LOGON_INITIALIZATION_SCRIPTS" - T1037
  8654  	//   "STARTUP_ITEMS" - T1037.005
  8655  	//   "NETWORK_SERVICE_DISCOVERY" - T1046
  8656  	//   "PROCESS_DISCOVERY" - T1057
  8657  	//   "COMMAND_AND_SCRIPTING_INTERPRETER" - T1059
  8658  	//   "UNIX_SHELL" - T1059.004
  8659  	//   "PYTHON" - T1059.006
  8660  	//   "PERMISSION_GROUPS_DISCOVERY" - T1069
  8661  	//   "CLOUD_GROUPS" - T1069.003
  8662  	//   "APPLICATION_LAYER_PROTOCOL" - T1071
  8663  	//   "DNS" - T1071.004
  8664  	//   "SOFTWARE_DEPLOYMENT_TOOLS" - T1072
  8665  	//   "VALID_ACCOUNTS" - T1078
  8666  	//   "DEFAULT_ACCOUNTS" - T1078.001
  8667  	//   "LOCAL_ACCOUNTS" - T1078.003
  8668  	//   "CLOUD_ACCOUNTS" - T1078.004
  8669  	//   "PROXY" - T1090
  8670  	//   "EXTERNAL_PROXY" - T1090.002
  8671  	//   "MULTI_HOP_PROXY" - T1090.003
  8672  	//   "ACCOUNT_MANIPULATION" - T1098
  8673  	//   "ADDITIONAL_CLOUD_CREDENTIALS" - T1098.001
  8674  	//   "SSH_AUTHORIZED_KEYS" - T1098.004
  8675  	//   "ADDITIONAL_CONTAINER_CLUSTER_ROLES" - T1098.006
  8676  	//   "INGRESS_TOOL_TRANSFER" - T1105
  8677  	//   "NATIVE_API" - T1106
  8678  	//   "BRUTE_FORCE" - T1110
  8679  	//   "SHARED_MODULES" - T1129
  8680  	//   "ACCESS_TOKEN_MANIPULATION" - T1134
  8681  	//   "TOKEN_IMPERSONATION_OR_THEFT" - T1134.001
  8682  	//   "EXPLOIT_PUBLIC_FACING_APPLICATION" - T1190
  8683  	//   "DOMAIN_POLICY_MODIFICATION" - T1484
  8684  	//   "DATA_DESTRUCTION" - T1485
  8685  	//   "SERVICE_STOP" - T1489
  8686  	//   "INHIBIT_SYSTEM_RECOVERY" - T1490
  8687  	//   "RESOURCE_HIJACKING" - T1496
  8688  	//   "NETWORK_DENIAL_OF_SERVICE" - T1498
  8689  	//   "CLOUD_SERVICE_DISCOVERY" - T1526
  8690  	//   "STEAL_APPLICATION_ACCESS_TOKEN" - T1528
  8691  	//   "ACCOUNT_ACCESS_REMOVAL" - T1531
  8692  	//   "STEAL_WEB_SESSION_COOKIE" - T1539
  8693  	//   "CREATE_OR_MODIFY_SYSTEM_PROCESS" - T1543
  8694  	//   "ABUSE_ELEVATION_CONTROL_MECHANISM" - T1548
  8695  	//   "UNSECURED_CREDENTIALS" - T1552
  8696  	//   "MODIFY_AUTHENTICATION_PROCESS" - T1556
  8697  	//   "IMPAIR_DEFENSES" - T1562
  8698  	//   "DISABLE_OR_MODIFY_TOOLS" - T1562.001
  8699  	//   "EXFILTRATION_OVER_WEB_SERVICE" - T1567
  8700  	//   "EXFILTRATION_TO_CLOUD_STORAGE" - T1567.002
  8701  	//   "DYNAMIC_RESOLUTION" - T1568
  8702  	//   "LATERAL_TOOL_TRANSFER" - T1570
  8703  	//   "MODIFY_CLOUD_COMPUTE_INFRASTRUCTURE" - T1578
  8704  	//   "CREATE_SNAPSHOT" - T1578.001
  8705  	//   "CLOUD_INFRASTRUCTURE_DISCOVERY" - T1580
  8706  	//   "OBTAIN_CAPABILITIES" - T1588
  8707  	//   "ACTIVE_SCANNING" - T1595
  8708  	//   "SCANNING_IP_BLOCKS" - T1595.001
  8709  	//   "CONTAINER_AND_RESOURCE_DISCOVERY" - T1613
  8710  	PrimaryTechniques []string `json:"primaryTechniques,omitempty"`
  8711  	// Version: The MITRE ATT&CK version referenced by the above fields. E.g. "8".
  8712  	Version string `json:"version,omitempty"`
  8713  	// ForceSendFields is a list of field names (e.g. "AdditionalTactics") to
  8714  	// unconditionally include in API requests. By default, fields with empty or
  8715  	// default values are omitted from API requests. See
  8716  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8717  	// details.
  8718  	ForceSendFields []string `json:"-"`
  8719  	// NullFields is a list of field names (e.g. "AdditionalTactics") to include in
  8720  	// API requests with the JSON null value. By default, fields with empty values
  8721  	// are omitted from API requests. See
  8722  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8723  	NullFields []string `json:"-"`
  8724  }
  8725  
  8726  func (s *MitreAttack) MarshalJSON() ([]byte, error) {
  8727  	type NoMethod MitreAttack
  8728  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8729  }
  8730  
  8731  // Node: Kubernetes nodes associated with the finding.
  8732  type Node struct {
  8733  	// Name: Full resource name (https://google.aip.dev/122#full-resource-names) of
  8734  	// the Compute Engine VM running the cluster node.
  8735  	Name string `json:"name,omitempty"`
  8736  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  8737  	// include in API requests. By default, fields with empty or default values are
  8738  	// omitted from API requests. See
  8739  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8740  	// details.
  8741  	ForceSendFields []string `json:"-"`
  8742  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  8743  	// with the JSON null value. By default, fields with empty values are omitted
  8744  	// from API requests. See
  8745  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8746  	NullFields []string `json:"-"`
  8747  }
  8748  
  8749  func (s *Node) MarshalJSON() ([]byte, error) {
  8750  	type NoMethod Node
  8751  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8752  }
  8753  
  8754  // NodePool: Provides GKE node pool information.
  8755  type NodePool struct {
  8756  	// Name: Kubernetes node pool name.
  8757  	Name string `json:"name,omitempty"`
  8758  	// Nodes: Nodes associated with the finding.
  8759  	Nodes []*Node `json:"nodes,omitempty"`
  8760  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  8761  	// include in API requests. By default, fields with empty or default values are
  8762  	// omitted from API requests. See
  8763  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8764  	// details.
  8765  	ForceSendFields []string `json:"-"`
  8766  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  8767  	// with the JSON null value. By default, fields with empty values are omitted
  8768  	// from API requests. See
  8769  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8770  	NullFields []string `json:"-"`
  8771  }
  8772  
  8773  func (s *NodePool) MarshalJSON() ([]byte, error) {
  8774  	type NoMethod NodePool
  8775  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8776  }
  8777  
  8778  // Notebook: Represents a Jupyter notebook IPYNB file, such as a Colab
  8779  // Enterprise notebook (https://cloud.google.com/colab/docs/introduction) file,
  8780  // that is associated with a finding.
  8781  type Notebook struct {
  8782  	// LastAuthor: The user ID of the latest author to modify the notebook.
  8783  	LastAuthor string `json:"lastAuthor,omitempty"`
  8784  	// Name: The name of the notebook.
  8785  	Name string `json:"name,omitempty"`
  8786  	// NotebookUpdateTime: The most recent time the notebook was updated.
  8787  	NotebookUpdateTime string `json:"notebookUpdateTime,omitempty"`
  8788  	// Service: The source notebook service, for example, "Colab Enterprise".
  8789  	Service string `json:"service,omitempty"`
  8790  	// ForceSendFields is a list of field names (e.g. "LastAuthor") to
  8791  	// unconditionally include in API requests. By default, fields with empty or
  8792  	// default values are omitted from API requests. See
  8793  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8794  	// details.
  8795  	ForceSendFields []string `json:"-"`
  8796  	// NullFields is a list of field names (e.g. "LastAuthor") to include in API
  8797  	// requests with the JSON null value. By default, fields with empty values are
  8798  	// omitted from API requests. See
  8799  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8800  	NullFields []string `json:"-"`
  8801  }
  8802  
  8803  func (s *Notebook) MarshalJSON() ([]byte, error) {
  8804  	type NoMethod Notebook
  8805  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8806  }
  8807  
  8808  // NotificationConfig: Cloud Security Command Center (Cloud SCC) notification
  8809  // configs. A notification config is a Cloud SCC resource that contains the
  8810  // configuration to send notifications for create/update events of findings,
  8811  // assets and etc.
  8812  type NotificationConfig struct {
  8813  	// Description: The description of the notification config (max of 1024
  8814  	// characters).
  8815  	Description string `json:"description,omitempty"`
  8816  	// Name: The relative resource name of this notification config. See:
  8817  	// https://cloud.google.com/apis/design/resource_names#relative_resource_name
  8818  	// Example:
  8819  	// "organizations/{organization_id}/notificationConfigs/notify_public_bucket",
  8820  	// "folders/{folder_id}/notificationConfigs/notify_public_bucket", or
  8821  	// "projects/{project_id}/notificationConfigs/notify_public_bucket".
  8822  	Name string `json:"name,omitempty"`
  8823  	// PubsubTopic: The Pub/Sub topic to send notifications to. Its format is
  8824  	// "projects/[project_id]/topics/[topic]".
  8825  	PubsubTopic string `json:"pubsubTopic,omitempty"`
  8826  	// ServiceAccount: Output only. The service account that needs
  8827  	// "pubsub.topics.publish" permission to publish to the Pub/Sub topic.
  8828  	ServiceAccount string `json:"serviceAccount,omitempty"`
  8829  	// StreamingConfig: The config for triggering streaming-based notifications.
  8830  	StreamingConfig *StreamingConfig `json:"streamingConfig,omitempty"`
  8831  
  8832  	// ServerResponse contains the HTTP response code and headers from the server.
  8833  	googleapi.ServerResponse `json:"-"`
  8834  	// ForceSendFields is a list of field names (e.g. "Description") to
  8835  	// unconditionally include in API requests. By default, fields with empty or
  8836  	// default values are omitted from API requests. See
  8837  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8838  	// details.
  8839  	ForceSendFields []string `json:"-"`
  8840  	// NullFields is a list of field names (e.g. "Description") to include in API
  8841  	// requests with the JSON null value. By default, fields with empty values are
  8842  	// omitted from API requests. See
  8843  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8844  	NullFields []string `json:"-"`
  8845  }
  8846  
  8847  func (s *NotificationConfig) MarshalJSON() ([]byte, error) {
  8848  	type NoMethod NotificationConfig
  8849  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8850  }
  8851  
  8852  // Object: Kubernetes object related to the finding, uniquely identified by
  8853  // GKNN. Used if the object Kind is not one of Pod, Node, NodePool, Binding, or
  8854  // AccessReview.
  8855  type Object struct {
  8856  	// Containers: Pod containers associated with this finding, if any.
  8857  	Containers []*Container `json:"containers,omitempty"`
  8858  	// Group: Kubernetes object group, such as "policy.k8s.io/v1".
  8859  	Group string `json:"group,omitempty"`
  8860  	// Kind: Kubernetes object kind, such as "Namespace".
  8861  	Kind string `json:"kind,omitempty"`
  8862  	// Name: Kubernetes object name. For details see
  8863  	// https://kubernetes.io/docs/concepts/overview/working-with-objects/names/.
  8864  	Name string `json:"name,omitempty"`
  8865  	// Ns: Kubernetes object namespace. Must be a valid DNS label. Named "ns" to
  8866  	// avoid collision with C++ namespace keyword. For details see
  8867  	// https://kubernetes.io/docs/tasks/administer-cluster/namespaces/.
  8868  	Ns string `json:"ns,omitempty"`
  8869  	// ForceSendFields is a list of field names (e.g. "Containers") to
  8870  	// unconditionally include in API requests. By default, fields with empty or
  8871  	// default values are omitted from API requests. See
  8872  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8873  	// details.
  8874  	ForceSendFields []string `json:"-"`
  8875  	// NullFields is a list of field names (e.g. "Containers") to include in API
  8876  	// requests with the JSON null value. By default, fields with empty values are
  8877  	// omitted from API requests. See
  8878  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8879  	NullFields []string `json:"-"`
  8880  }
  8881  
  8882  func (s *Object) MarshalJSON() ([]byte, error) {
  8883  	type NoMethod Object
  8884  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8885  }
  8886  
  8887  // Operation: This resource represents a long-running operation that is the
  8888  // result of a network API call.
  8889  type Operation struct {
  8890  	// Done: If the value is `false`, it means the operation is still in progress.
  8891  	// If `true`, the operation is completed, and either `error` or `response` is
  8892  	// available.
  8893  	Done bool `json:"done,omitempty"`
  8894  	// Error: The error result of the operation in case of failure or cancellation.
  8895  	Error *Status `json:"error,omitempty"`
  8896  	// Metadata: Service-specific metadata associated with the operation. It
  8897  	// typically contains progress information and common metadata such as create
  8898  	// time. Some services might not provide such metadata. Any method that returns
  8899  	// a long-running operation should document the metadata type, if any.
  8900  	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
  8901  	// Name: The server-assigned name, which is only unique within the same service
  8902  	// that originally returns it. If you use the default HTTP mapping, the `name`
  8903  	// should be a resource name ending with `operations/{unique_id}`.
  8904  	Name string `json:"name,omitempty"`
  8905  	// Response: The normal, successful response of the operation. If the original
  8906  	// method returns no data on success, such as `Delete`, the response is
  8907  	// `google.protobuf.Empty`. If the original method is standard
  8908  	// `Get`/`Create`/`Update`, the response should be the resource. For other
  8909  	// methods, the response should have the type `XxxResponse`, where `Xxx` is the
  8910  	// original method name. For example, if the original method name is
  8911  	// `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
  8912  	Response googleapi.RawMessage `json:"response,omitempty"`
  8913  
  8914  	// ServerResponse contains the HTTP response code and headers from the server.
  8915  	googleapi.ServerResponse `json:"-"`
  8916  	// ForceSendFields is a list of field names (e.g. "Done") to unconditionally
  8917  	// include in API requests. By default, fields with empty or default values are
  8918  	// omitted from API requests. See
  8919  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8920  	// details.
  8921  	ForceSendFields []string `json:"-"`
  8922  	// NullFields is a list of field names (e.g. "Done") to include in API requests
  8923  	// with the JSON null value. By default, fields with empty values are omitted
  8924  	// from API requests. See
  8925  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8926  	NullFields []string `json:"-"`
  8927  }
  8928  
  8929  func (s *Operation) MarshalJSON() ([]byte, error) {
  8930  	type NoMethod Operation
  8931  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8932  }
  8933  
  8934  // OrgPolicy: Contains information about the org policies associated with the
  8935  // finding.
  8936  type OrgPolicy struct {
  8937  	// Name: The resource name of the org policy. Example:
  8938  	// "organizations/{organization_id}/policies/{constraint_name}"
  8939  	Name string `json:"name,omitempty"`
  8940  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  8941  	// include in API requests. By default, fields with empty or default values are
  8942  	// omitted from API requests. See
  8943  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8944  	// details.
  8945  	ForceSendFields []string `json:"-"`
  8946  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  8947  	// with the JSON null value. By default, fields with empty values are omitted
  8948  	// from API requests. See
  8949  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8950  	NullFields []string `json:"-"`
  8951  }
  8952  
  8953  func (s *OrgPolicy) MarshalJSON() ([]byte, error) {
  8954  	type NoMethod OrgPolicy
  8955  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8956  }
  8957  
  8958  // OrganizationSettings: User specified settings that are attached to the
  8959  // Security Command Center organization.
  8960  type OrganizationSettings struct {
  8961  	// AssetDiscoveryConfig: The configuration used for Asset Discovery runs.
  8962  	AssetDiscoveryConfig *AssetDiscoveryConfig `json:"assetDiscoveryConfig,omitempty"`
  8963  	// EnableAssetDiscovery: A flag that indicates if Asset Discovery should be
  8964  	// enabled. If the flag is set to `true`, then discovery of assets will occur.
  8965  	// If it is set to `false`, all historical assets will remain, but discovery of
  8966  	// future assets will not occur.
  8967  	EnableAssetDiscovery bool `json:"enableAssetDiscovery,omitempty"`
  8968  	// Name: The relative resource name of the settings. See:
  8969  	// https://cloud.google.com/apis/design/resource_names#relative_resource_name
  8970  	// Example: "organizations/{organization_id}/organizationSettings".
  8971  	Name string `json:"name,omitempty"`
  8972  
  8973  	// ServerResponse contains the HTTP response code and headers from the server.
  8974  	googleapi.ServerResponse `json:"-"`
  8975  	// ForceSendFields is a list of field names (e.g. "AssetDiscoveryConfig") to
  8976  	// unconditionally include in API requests. By default, fields with empty or
  8977  	// default values are omitted from API requests. See
  8978  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8979  	// details.
  8980  	ForceSendFields []string `json:"-"`
  8981  	// NullFields is a list of field names (e.g. "AssetDiscoveryConfig") to include
  8982  	// in API requests with the JSON null value. By default, fields with empty
  8983  	// values are omitted from API requests. See
  8984  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8985  	NullFields []string `json:"-"`
  8986  }
  8987  
  8988  func (s *OrganizationSettings) MarshalJSON() ([]byte, error) {
  8989  	type NoMethod OrganizationSettings
  8990  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8991  }
  8992  
  8993  // Package: Package is a generic definition of a package.
  8994  type Package struct {
  8995  	// CpeUri: The CPE URI where the vulnerability was detected.
  8996  	CpeUri string `json:"cpeUri,omitempty"`
  8997  	// PackageName: The name of the package where the vulnerability was detected.
  8998  	PackageName string `json:"packageName,omitempty"`
  8999  	// PackageType: Type of package, for example, os, maven, or go.
  9000  	PackageType string `json:"packageType,omitempty"`
  9001  	// PackageVersion: The version of the package.
  9002  	PackageVersion string `json:"packageVersion,omitempty"`
  9003  	// ForceSendFields is a list of field names (e.g. "CpeUri") to unconditionally
  9004  	// include in API requests. By default, fields with empty or default values are
  9005  	// omitted from API requests. See
  9006  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9007  	// details.
  9008  	ForceSendFields []string `json:"-"`
  9009  	// NullFields is a list of field names (e.g. "CpeUri") to include in API
  9010  	// requests with the JSON null value. By default, fields with empty values are
  9011  	// omitted from API requests. See
  9012  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9013  	NullFields []string `json:"-"`
  9014  }
  9015  
  9016  func (s *Package) MarshalJSON() ([]byte, error) {
  9017  	type NoMethod Package
  9018  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9019  }
  9020  
  9021  // PathNodeAssociatedFinding: A finding that is associated with this node in
  9022  // the attack path.
  9023  type PathNodeAssociatedFinding struct {
  9024  	// CanonicalFinding: Canonical name of the associated findings. Example:
  9025  	// organizations/123/sources/456/findings/789
  9026  	CanonicalFinding string `json:"canonicalFinding,omitempty"`
  9027  	// FindingCategory: The additional taxonomy group within findings from a given
  9028  	// source.
  9029  	FindingCategory string `json:"findingCategory,omitempty"`
  9030  	// Name: Full resource name of the finding.
  9031  	Name string `json:"name,omitempty"`
  9032  	// ForceSendFields is a list of field names (e.g. "CanonicalFinding") to
  9033  	// unconditionally include in API requests. By default, fields with empty or
  9034  	// default values are omitted from API requests. See
  9035  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9036  	// details.
  9037  	ForceSendFields []string `json:"-"`
  9038  	// NullFields is a list of field names (e.g. "CanonicalFinding") to include in
  9039  	// API requests with the JSON null value. By default, fields with empty values
  9040  	// are omitted from API requests. See
  9041  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9042  	NullFields []string `json:"-"`
  9043  }
  9044  
  9045  func (s *PathNodeAssociatedFinding) MarshalJSON() ([]byte, error) {
  9046  	type NoMethod PathNodeAssociatedFinding
  9047  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9048  }
  9049  
  9050  // Pod: A Kubernetes Pod.
  9051  type Pod struct {
  9052  	// Containers: Pod containers associated with this finding, if any.
  9053  	Containers []*Container `json:"containers,omitempty"`
  9054  	// Labels: Pod labels. For Kubernetes containers, these are applied to the
  9055  	// container.
  9056  	Labels []*Label `json:"labels,omitempty"`
  9057  	// Name: Kubernetes Pod name.
  9058  	Name string `json:"name,omitempty"`
  9059  	// Ns: Kubernetes Pod namespace.
  9060  	Ns string `json:"ns,omitempty"`
  9061  	// ForceSendFields is a list of field names (e.g. "Containers") to
  9062  	// unconditionally include in API requests. By default, fields with empty or
  9063  	// default values are omitted from API requests. See
  9064  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9065  	// details.
  9066  	ForceSendFields []string `json:"-"`
  9067  	// NullFields is a list of field names (e.g. "Containers") to include in API
  9068  	// requests with the JSON null value. By default, fields with empty values are
  9069  	// omitted from API requests. See
  9070  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9071  	NullFields []string `json:"-"`
  9072  }
  9073  
  9074  func (s *Pod) MarshalJSON() ([]byte, error) {
  9075  	type NoMethod Pod
  9076  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9077  }
  9078  
  9079  // Policy: An Identity and Access Management (IAM) policy, which specifies
  9080  // access controls for Google Cloud resources. A `Policy` is a collection of
  9081  // `bindings`. A `binding` binds one or more `members`, or principals, to a
  9082  // single `role`. Principals can be user accounts, service accounts, Google
  9083  // groups, and domains (such as G Suite). A `role` is a named list of
  9084  // permissions; each `role` can be an IAM predefined role or a user-created
  9085  // custom role. For some types of Google Cloud resources, a `binding` can also
  9086  // specify a `condition`, which is a logical expression that allows access to a
  9087  // resource only if the expression evaluates to `true`. A condition can add
  9088  // constraints based on attributes of the request, the resource, or both. To
  9089  // learn which resources support conditions in their IAM policies, see the IAM
  9090  // documentation
  9091  // (https://cloud.google.com/iam/help/conditions/resource-policies). **JSON
  9092  // example:** ``` { "bindings": [ { "role":
  9093  // "roles/resourcemanager.organizationAdmin", "members": [
  9094  // "user:mike@example.com", "group:admins@example.com", "domain:google.com",
  9095  // "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role":
  9096  // "roles/resourcemanager.organizationViewer", "members": [
  9097  // "user:eve@example.com" ], "condition": { "title": "expirable access",
  9098  // "description": "Does not grant access after Sep 2020", "expression":
  9099  // "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ], "etag":
  9100  // "BwWWja0YfJA=", "version": 3 } ``` **YAML example:** ``` bindings: -
  9101  // members: - user:mike@example.com - group:admins@example.com -
  9102  // domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
  9103  // role: roles/resourcemanager.organizationAdmin - members: -
  9104  // user:eve@example.com role: roles/resourcemanager.organizationViewer
  9105  // condition: title: expirable access description: Does not grant access after
  9106  // Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
  9107  // etag: BwWWja0YfJA= version: 3 ``` For a description of IAM and its features,
  9108  // see the IAM documentation (https://cloud.google.com/iam/docs/).
  9109  type Policy struct {
  9110  	// AuditConfigs: Specifies cloud audit logging configuration for this policy.
  9111  	AuditConfigs []*AuditConfig `json:"auditConfigs,omitempty"`
  9112  	// Bindings: Associates a list of `members`, or principals, with a `role`.
  9113  	// Optionally, may specify a `condition` that determines how and when the
  9114  	// `bindings` are applied. Each of the `bindings` must contain at least one
  9115  	// principal. The `bindings` in a `Policy` can refer to up to 1,500 principals;
  9116  	// up to 250 of these principals can be Google groups. Each occurrence of a
  9117  	// principal counts towards these limits. For example, if the `bindings` grant
  9118  	// 50 different roles to `user:alice@example.com`, and not to any other
  9119  	// principal, then you can add another 1,450 principals to the `bindings` in
  9120  	// the `Policy`.
  9121  	Bindings []*Binding `json:"bindings,omitempty"`
  9122  	// Etag: `etag` is used for optimistic concurrency control as a way to help
  9123  	// prevent simultaneous updates of a policy from overwriting each other. It is
  9124  	// strongly suggested that systems make use of the `etag` in the
  9125  	// read-modify-write cycle to perform policy updates in order to avoid race
  9126  	// conditions: An `etag` is returned in the response to `getIamPolicy`, and
  9127  	// systems are expected to put that etag in the request to `setIamPolicy` to
  9128  	// ensure that their change will be applied to the same version of the policy.
  9129  	// **Important:** If you use IAM Conditions, you must include the `etag` field
  9130  	// whenever you call `setIamPolicy`. If you omit this field, then IAM allows
  9131  	// you to overwrite a version `3` policy with a version `1` policy, and all of
  9132  	// the conditions in the version `3` policy are lost.
  9133  	Etag string `json:"etag,omitempty"`
  9134  	// Version: Specifies the format of the policy. Valid values are `0`, `1`, and
  9135  	// `3`. Requests that specify an invalid value are rejected. Any operation that
  9136  	// affects conditional role bindings must specify version `3`. This requirement
  9137  	// applies to the following operations: * Getting a policy that includes a
  9138  	// conditional role binding * Adding a conditional role binding to a policy *
  9139  	// Changing a conditional role binding in a policy * Removing any role binding,
  9140  	// with or without a condition, from a policy that includes conditions
  9141  	// **Important:** If you use IAM Conditions, you must include the `etag` field
  9142  	// whenever you call `setIamPolicy`. If you omit this field, then IAM allows
  9143  	// you to overwrite a version `3` policy with a version `1` policy, and all of
  9144  	// the conditions in the version `3` policy are lost. If a policy does not
  9145  	// include any conditions, operations on that policy may specify any valid
  9146  	// version or leave the field unset. To learn which resources support
  9147  	// conditions in their IAM policies, see the IAM documentation
  9148  	// (https://cloud.google.com/iam/help/conditions/resource-policies).
  9149  	Version int64 `json:"version,omitempty"`
  9150  
  9151  	// ServerResponse contains the HTTP response code and headers from the server.
  9152  	googleapi.ServerResponse `json:"-"`
  9153  	// ForceSendFields is a list of field names (e.g. "AuditConfigs") to
  9154  	// unconditionally include in API requests. By default, fields with empty or
  9155  	// default values are omitted from API requests. See
  9156  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9157  	// details.
  9158  	ForceSendFields []string `json:"-"`
  9159  	// NullFields is a list of field names (e.g. "AuditConfigs") to include in API
  9160  	// requests with the JSON null value. By default, fields with empty values are
  9161  	// omitted from API requests. See
  9162  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9163  	NullFields []string `json:"-"`
  9164  }
  9165  
  9166  func (s *Policy) MarshalJSON() ([]byte, error) {
  9167  	type NoMethod Policy
  9168  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9169  }
  9170  
  9171  // PolicyDriftDetails: The policy field that violates the deployed posture and
  9172  // its expected and detected values.
  9173  type PolicyDriftDetails struct {
  9174  	// DetectedValue: The detected value that violates the deployed posture, for
  9175  	// example, `false` or `allowed_values={"projects/22831892"}`.
  9176  	DetectedValue string `json:"detectedValue,omitempty"`
  9177  	// ExpectedValue: The value of this field that was configured in a posture, for
  9178  	// example, `true` or `allowed_values={"projects/29831892"}`.
  9179  	ExpectedValue string `json:"expectedValue,omitempty"`
  9180  	// Field: The name of the updated field, for example
  9181  	// constraint.implementation.policy_rules[0].enforce
  9182  	Field string `json:"field,omitempty"`
  9183  	// ForceSendFields is a list of field names (e.g. "DetectedValue") to
  9184  	// unconditionally include in API requests. By default, fields with empty or
  9185  	// default values are omitted from API requests. See
  9186  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9187  	// details.
  9188  	ForceSendFields []string `json:"-"`
  9189  	// NullFields is a list of field names (e.g. "DetectedValue") to include in API
  9190  	// requests with the JSON null value. By default, fields with empty values are
  9191  	// omitted from API requests. See
  9192  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9193  	NullFields []string `json:"-"`
  9194  }
  9195  
  9196  func (s *PolicyDriftDetails) MarshalJSON() ([]byte, error) {
  9197  	type NoMethod PolicyDriftDetails
  9198  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9199  }
  9200  
  9201  // Position: A position in the uploaded text version of a module.
  9202  type Position struct {
  9203  	ColumnNumber int64 `json:"columnNumber,omitempty"`
  9204  	LineNumber   int64 `json:"lineNumber,omitempty"`
  9205  	// ForceSendFields is a list of field names (e.g. "ColumnNumber") to
  9206  	// unconditionally include in API requests. By default, fields with empty or
  9207  	// default values are omitted from API requests. See
  9208  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9209  	// details.
  9210  	ForceSendFields []string `json:"-"`
  9211  	// NullFields is a list of field names (e.g. "ColumnNumber") to include in API
  9212  	// requests with the JSON null value. By default, fields with empty values are
  9213  	// omitted from API requests. See
  9214  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9215  	NullFields []string `json:"-"`
  9216  }
  9217  
  9218  func (s *Position) MarshalJSON() ([]byte, error) {
  9219  	type NoMethod Position
  9220  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9221  }
  9222  
  9223  // Process: Represents an operating system process.
  9224  type Process struct {
  9225  	// Args: Process arguments as JSON encoded strings.
  9226  	Args []string `json:"args,omitempty"`
  9227  	// ArgumentsTruncated: True if `args` is incomplete.
  9228  	ArgumentsTruncated bool `json:"argumentsTruncated,omitempty"`
  9229  	// Binary: File information for the process executable.
  9230  	Binary *File `json:"binary,omitempty"`
  9231  	// EnvVariables: Process environment variables.
  9232  	EnvVariables []*EnvironmentVariable `json:"envVariables,omitempty"`
  9233  	// EnvVariablesTruncated: True if `env_variables` is incomplete.
  9234  	EnvVariablesTruncated bool `json:"envVariablesTruncated,omitempty"`
  9235  	// Libraries: File information for libraries loaded by the process.
  9236  	Libraries []*File `json:"libraries,omitempty"`
  9237  	// Name: The process name, as displayed in utilities like `top` and `ps`. This
  9238  	// name can be accessed through `/proc/[pid]/comm` and changed with
  9239  	// `prctl(PR_SET_NAME)`.
  9240  	Name string `json:"name,omitempty"`
  9241  	// ParentPid: The parent process ID.
  9242  	ParentPid int64 `json:"parentPid,omitempty,string"`
  9243  	// Pid: The process ID.
  9244  	Pid int64 `json:"pid,omitempty,string"`
  9245  	// Script: When the process represents the invocation of a script, `binary`
  9246  	// provides information about the interpreter, while `script` provides
  9247  	// information about the script file provided to the interpreter.
  9248  	Script *File `json:"script,omitempty"`
  9249  	// ForceSendFields is a list of field names (e.g. "Args") to unconditionally
  9250  	// include in API requests. By default, fields with empty or default values are
  9251  	// omitted from API requests. See
  9252  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9253  	// details.
  9254  	ForceSendFields []string `json:"-"`
  9255  	// NullFields is a list of field names (e.g. "Args") to include in API requests
  9256  	// with the JSON null value. By default, fields with empty values are omitted
  9257  	// from API requests. See
  9258  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9259  	NullFields []string `json:"-"`
  9260  }
  9261  
  9262  func (s *Process) MarshalJSON() ([]byte, error) {
  9263  	type NoMethod Process
  9264  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9265  }
  9266  
  9267  // ProcessSignature: Indicates what signature matched this process.
  9268  type ProcessSignature struct {
  9269  	// MemoryHashSignature: Signature indicating that a binary family was matched.
  9270  	MemoryHashSignature *MemoryHashSignature `json:"memoryHashSignature,omitempty"`
  9271  	// SignatureType: Describes the type of resource associated with the signature.
  9272  	//
  9273  	// Possible values:
  9274  	//   "SIGNATURE_TYPE_UNSPECIFIED" - The default signature type.
  9275  	//   "SIGNATURE_TYPE_PROCESS" - Used for signatures concerning processes.
  9276  	//   "SIGNATURE_TYPE_FILE" - Used for signatures concerning disks.
  9277  	SignatureType string `json:"signatureType,omitempty"`
  9278  	// YaraRuleSignature: Signature indicating that a YARA rule was matched.
  9279  	YaraRuleSignature *YaraRuleSignature `json:"yaraRuleSignature,omitempty"`
  9280  	// ForceSendFields is a list of field names (e.g. "MemoryHashSignature") to
  9281  	// unconditionally include in API requests. By default, fields with empty or
  9282  	// default values are omitted from API requests. See
  9283  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9284  	// details.
  9285  	ForceSendFields []string `json:"-"`
  9286  	// NullFields is a list of field names (e.g. "MemoryHashSignature") to include
  9287  	// in API requests with the JSON null value. By default, fields with empty
  9288  	// values are omitted from API requests. See
  9289  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9290  	NullFields []string `json:"-"`
  9291  }
  9292  
  9293  func (s *ProcessSignature) MarshalJSON() ([]byte, error) {
  9294  	type NoMethod ProcessSignature
  9295  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9296  }
  9297  
  9298  // Reference: Additional Links
  9299  type Reference struct {
  9300  	// Source: Source of the reference e.g. NVD
  9301  	Source string `json:"source,omitempty"`
  9302  	// Uri: Uri for the mentioned source e.g.
  9303  	// https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527.
  9304  	Uri string `json:"uri,omitempty"`
  9305  	// ForceSendFields is a list of field names (e.g. "Source") to unconditionally
  9306  	// include in API requests. By default, fields with empty or default values are
  9307  	// omitted from API requests. See
  9308  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9309  	// details.
  9310  	ForceSendFields []string `json:"-"`
  9311  	// NullFields is a list of field names (e.g. "Source") to include in API
  9312  	// requests with the JSON null value. By default, fields with empty values are
  9313  	// omitted from API requests. See
  9314  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9315  	NullFields []string `json:"-"`
  9316  }
  9317  
  9318  func (s *Reference) MarshalJSON() ([]byte, error) {
  9319  	type NoMethod Reference
  9320  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9321  }
  9322  
  9323  // Requests: Information about the requests relevant to the finding.
  9324  type Requests struct {
  9325  	// LongTermAllowed: Allowed RPS (requests per second) over the long term.
  9326  	LongTermAllowed int64 `json:"longTermAllowed,omitempty"`
  9327  	// LongTermDenied: Denied RPS (requests per second) over the long term.
  9328  	LongTermDenied int64 `json:"longTermDenied,omitempty"`
  9329  	// Ratio: For 'Increasing deny ratio', the ratio is the denied traffic divided
  9330  	// by the allowed traffic. For 'Allowed traffic spike', the ratio is the
  9331  	// allowed traffic in the short term divided by allowed traffic in the long
  9332  	// term.
  9333  	Ratio float64 `json:"ratio,omitempty"`
  9334  	// ShortTermAllowed: Allowed RPS (requests per second) in the short term.
  9335  	ShortTermAllowed int64 `json:"shortTermAllowed,omitempty"`
  9336  	// ForceSendFields is a list of field names (e.g. "LongTermAllowed") to
  9337  	// unconditionally include in API requests. By default, fields with empty or
  9338  	// default values are omitted from API requests. See
  9339  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9340  	// details.
  9341  	ForceSendFields []string `json:"-"`
  9342  	// NullFields is a list of field names (e.g. "LongTermAllowed") to include in
  9343  	// API requests with the JSON null value. By default, fields with empty values
  9344  	// are omitted from API requests. See
  9345  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9346  	NullFields []string `json:"-"`
  9347  }
  9348  
  9349  func (s *Requests) MarshalJSON() ([]byte, error) {
  9350  	type NoMethod Requests
  9351  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9352  }
  9353  
  9354  func (s *Requests) UnmarshalJSON(data []byte) error {
  9355  	type NoMethod Requests
  9356  	var s1 struct {
  9357  		Ratio gensupport.JSONFloat64 `json:"ratio"`
  9358  		*NoMethod
  9359  	}
  9360  	s1.NoMethod = (*NoMethod)(s)
  9361  	if err := json.Unmarshal(data, &s1); err != nil {
  9362  		return err
  9363  	}
  9364  	s.Ratio = float64(s1.Ratio)
  9365  	return nil
  9366  }
  9367  
  9368  // Resource: Information related to the Google Cloud resource that is
  9369  // associated with this finding.
  9370  type Resource struct {
  9371  	// AwsMetadata: The AWS metadata associated with the finding.
  9372  	AwsMetadata *AwsMetadata `json:"awsMetadata,omitempty"`
  9373  	// CloudProvider: Indicates which cloud provider the finding is from.
  9374  	//
  9375  	// Possible values:
  9376  	//   "CLOUD_PROVIDER_UNSPECIFIED" - The cloud provider is unspecified.
  9377  	//   "GOOGLE_CLOUD_PLATFORM" - The cloud provider is Google Cloud Platform.
  9378  	//   "AMAZON_WEB_SERVICES" - The cloud provider is Amazon Web Services.
  9379  	//   "MICROSOFT_AZURE" - The cloud provider is Microsoft Azure.
  9380  	CloudProvider string `json:"cloudProvider,omitempty"`
  9381  	// DisplayName: The human readable name of the resource.
  9382  	DisplayName string `json:"displayName,omitempty"`
  9383  	// Folders: Contains a Folder message for each folder in the assets ancestry.
  9384  	// The first folder is the deepest nested folder, and the last folder is the
  9385  	// folder directly under the Organization.
  9386  	Folders []*Folder `json:"folders,omitempty"`
  9387  	// Location: The region or location of the service (if applicable).
  9388  	Location string `json:"location,omitempty"`
  9389  	// Name: The full resource name of the resource. See:
  9390  	// https://cloud.google.com/apis/design/resource_names#full_resource_name
  9391  	Name string `json:"name,omitempty"`
  9392  	// Organization: Indicates which organization / tenant the finding is for.
  9393  	Organization string `json:"organization,omitempty"`
  9394  	// ParentDisplayName: The human readable name of resource's parent.
  9395  	ParentDisplayName string `json:"parentDisplayName,omitempty"`
  9396  	// ParentName: The full resource name of resource's parent.
  9397  	ParentName string `json:"parentName,omitempty"`
  9398  	// ProjectDisplayName: The project ID that the resource belongs to.
  9399  	ProjectDisplayName string `json:"projectDisplayName,omitempty"`
  9400  	// ProjectName: The full resource name of project that the resource belongs to.
  9401  	ProjectName string `json:"projectName,omitempty"`
  9402  	// ResourcePath: Provides the path to the resource within the resource
  9403  	// hierarchy.
  9404  	ResourcePath *ResourcePath `json:"resourcePath,omitempty"`
  9405  	// ResourcePathString: A string representation of the resource path. For Google
  9406  	// Cloud, it has the format of
  9407  	// org/{organization_id}/folder/{folder_id}/folder/{folder_id}/project/{project_
  9408  	// id} where there can be any number of folders. For AWS, it has the format of
  9409  	// org/{organization_id}/ou/{organizational_unit_id}/ou/{organizational_unit_id}
  9410  	// /account/{account_id} where there can be any number of organizational units.
  9411  	// For Azure, it has the format of
  9412  	// mg/{management_group_id}/mg/{management_group_id}/subscription/{subscription_
  9413  	// id}/rg/{resource_group_name} where there can be any number of management
  9414  	// groups.
  9415  	ResourcePathString string `json:"resourcePathString,omitempty"`
  9416  	// Service: The service or resource provider associated with the resource.
  9417  	Service string `json:"service,omitempty"`
  9418  	// Type: The full resource type of the resource.
  9419  	Type string `json:"type,omitempty"`
  9420  	// ForceSendFields is a list of field names (e.g. "AwsMetadata") to
  9421  	// unconditionally include in API requests. By default, fields with empty or
  9422  	// default values are omitted from API requests. See
  9423  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9424  	// details.
  9425  	ForceSendFields []string `json:"-"`
  9426  	// NullFields is a list of field names (e.g. "AwsMetadata") to include in API
  9427  	// requests with the JSON null value. By default, fields with empty values are
  9428  	// omitted from API requests. See
  9429  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9430  	NullFields []string `json:"-"`
  9431  }
  9432  
  9433  func (s *Resource) MarshalJSON() ([]byte, error) {
  9434  	type NoMethod Resource
  9435  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9436  }
  9437  
  9438  // ResourcePath: Represents the path of resources leading up to the resource
  9439  // this finding is about.
  9440  type ResourcePath struct {
  9441  	// Nodes: The list of nodes that make the up resource path, ordered from lowest
  9442  	// level to highest level.
  9443  	Nodes []*ResourcePathNode `json:"nodes,omitempty"`
  9444  	// ForceSendFields is a list of field names (e.g. "Nodes") to unconditionally
  9445  	// include in API requests. By default, fields with empty or default values are
  9446  	// omitted from API requests. See
  9447  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9448  	// details.
  9449  	ForceSendFields []string `json:"-"`
  9450  	// NullFields is a list of field names (e.g. "Nodes") to include in API
  9451  	// requests with the JSON null value. By default, fields with empty values are
  9452  	// omitted from API requests. See
  9453  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9454  	NullFields []string `json:"-"`
  9455  }
  9456  
  9457  func (s *ResourcePath) MarshalJSON() ([]byte, error) {
  9458  	type NoMethod ResourcePath
  9459  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9460  }
  9461  
  9462  // ResourcePathNode: A node within the resource path. Each node represents a
  9463  // resource within the resource hierarchy.
  9464  type ResourcePathNode struct {
  9465  	// DisplayName: The display name of the resource this node represents.
  9466  	DisplayName string `json:"displayName,omitempty"`
  9467  	// Id: The ID of the resource this node represents.
  9468  	Id string `json:"id,omitempty"`
  9469  	// NodeType: The type of resource this node represents.
  9470  	//
  9471  	// Possible values:
  9472  	//   "RESOURCE_PATH_NODE_TYPE_UNSPECIFIED" - Node type is unspecified.
  9473  	//   "GCP_ORGANIZATION" - The node represents a Google Cloud organization.
  9474  	//   "GCP_FOLDER" - The node represents a Google Cloud folder.
  9475  	//   "GCP_PROJECT" - The node represents a Google Cloud project.
  9476  	//   "AWS_ORGANIZATION" - The node represents an AWS organization.
  9477  	//   "AWS_ORGANIZATIONAL_UNIT" - The node represents an AWS organizational
  9478  	// unit.
  9479  	//   "AWS_ACCOUNT" - The node represents an AWS account.
  9480  	//   "AZURE_MANAGEMENT_GROUP" - The node represents an Azure management group.
  9481  	//   "AZURE_SUBSCRIPTION" - The node represents an Azure subscription.
  9482  	//   "AZURE_RESOURCE_GROUP" - The node represents an Azure resource group.
  9483  	NodeType string `json:"nodeType,omitempty"`
  9484  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  9485  	// unconditionally include in API requests. By default, fields with empty or
  9486  	// default values are omitted from API requests. See
  9487  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9488  	// details.
  9489  	ForceSendFields []string `json:"-"`
  9490  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  9491  	// requests with the JSON null value. By default, fields with empty values are
  9492  	// omitted from API requests. See
  9493  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9494  	NullFields []string `json:"-"`
  9495  }
  9496  
  9497  func (s *ResourcePathNode) MarshalJSON() ([]byte, error) {
  9498  	type NoMethod ResourcePathNode
  9499  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9500  }
  9501  
  9502  // ResourceValueConfigMetadata: Metadata about a ResourceValueConfig. For
  9503  // example, id and name.
  9504  type ResourceValueConfigMetadata struct {
  9505  	// Name: Resource value config name
  9506  	Name string `json:"name,omitempty"`
  9507  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  9508  	// include in API requests. By default, fields with empty or default values are
  9509  	// omitted from API requests. See
  9510  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9511  	// details.
  9512  	ForceSendFields []string `json:"-"`
  9513  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  9514  	// with the JSON null value. By default, fields with empty values are omitted
  9515  	// from API requests. See
  9516  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9517  	NullFields []string `json:"-"`
  9518  }
  9519  
  9520  func (s *ResourceValueConfigMetadata) MarshalJSON() ([]byte, error) {
  9521  	type NoMethod ResourceValueConfigMetadata
  9522  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9523  }
  9524  
  9525  // Role: Kubernetes Role or ClusterRole.
  9526  type Role struct {
  9527  	// Kind: Role type.
  9528  	//
  9529  	// Possible values:
  9530  	//   "KIND_UNSPECIFIED" - Role type is not specified.
  9531  	//   "ROLE" - Kubernetes Role.
  9532  	//   "CLUSTER_ROLE" - Kubernetes ClusterRole.
  9533  	Kind string `json:"kind,omitempty"`
  9534  	// Name: Role name.
  9535  	Name string `json:"name,omitempty"`
  9536  	// Ns: Role namespace.
  9537  	Ns string `json:"ns,omitempty"`
  9538  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  9539  	// include in API requests. By default, fields with empty or default values are
  9540  	// omitted from API requests. See
  9541  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9542  	// details.
  9543  	ForceSendFields []string `json:"-"`
  9544  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  9545  	// with the JSON null value. By default, fields with empty values are omitted
  9546  	// from API requests. See
  9547  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9548  	NullFields []string `json:"-"`
  9549  }
  9550  
  9551  func (s *Role) MarshalJSON() ([]byte, error) {
  9552  	type NoMethod Role
  9553  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9554  }
  9555  
  9556  // RunAssetDiscoveryRequest: Request message for running asset discovery for an
  9557  // organization.
  9558  type RunAssetDiscoveryRequest struct {
  9559  }
  9560  
  9561  // SecurityBulletin: SecurityBulletin are notifications of vulnerabilities of
  9562  // Google products.
  9563  type SecurityBulletin struct {
  9564  	// BulletinId: ID of the bulletin corresponding to the vulnerability.
  9565  	BulletinId string `json:"bulletinId,omitempty"`
  9566  	// SubmissionTime: Submission time of this Security Bulletin.
  9567  	SubmissionTime string `json:"submissionTime,omitempty"`
  9568  	// SuggestedUpgradeVersion: This represents a version that the cluster
  9569  	// receiving this notification should be upgraded to, based on its current
  9570  	// version. For example, 1.15.0
  9571  	SuggestedUpgradeVersion string `json:"suggestedUpgradeVersion,omitempty"`
  9572  	// ForceSendFields is a list of field names (e.g. "BulletinId") to
  9573  	// unconditionally include in API requests. By default, fields with empty or
  9574  	// default values are omitted from API requests. See
  9575  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9576  	// details.
  9577  	ForceSendFields []string `json:"-"`
  9578  	// NullFields is a list of field names (e.g. "BulletinId") to include in API
  9579  	// requests with the JSON null value. By default, fields with empty values are
  9580  	// omitted from API requests. See
  9581  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9582  	NullFields []string `json:"-"`
  9583  }
  9584  
  9585  func (s *SecurityBulletin) MarshalJSON() ([]byte, error) {
  9586  	type NoMethod SecurityBulletin
  9587  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9588  }
  9589  
  9590  // SecurityCenterProperties: Security Command Center managed properties. These
  9591  // properties are managed by Security Command Center and cannot be modified by
  9592  // the user.
  9593  type SecurityCenterProperties struct {
  9594  	// Folders: Contains a Folder message for each folder in the assets ancestry.
  9595  	// The first folder is the deepest nested folder, and the last folder is the
  9596  	// folder directly under the Organization.
  9597  	Folders []*Folder `json:"folders,omitempty"`
  9598  	// ResourceDisplayName: The user defined display name for this resource.
  9599  	ResourceDisplayName string `json:"resourceDisplayName,omitempty"`
  9600  	// ResourceName: The full resource name of the Google Cloud resource this asset
  9601  	// represents. This field is immutable after create time. See:
  9602  	// https://cloud.google.com/apis/design/resource_names#full_resource_name
  9603  	ResourceName string `json:"resourceName,omitempty"`
  9604  	// ResourceOwners: Owners of the Google Cloud resource.
  9605  	ResourceOwners []string `json:"resourceOwners,omitempty"`
  9606  	// ResourceParent: The full resource name of the immediate parent of the
  9607  	// resource. See:
  9608  	// https://cloud.google.com/apis/design/resource_names#full_resource_name
  9609  	ResourceParent string `json:"resourceParent,omitempty"`
  9610  	// ResourceParentDisplayName: The user defined display name for the parent of
  9611  	// this resource.
  9612  	ResourceParentDisplayName string `json:"resourceParentDisplayName,omitempty"`
  9613  	// ResourceProject: The full resource name of the project the resource belongs
  9614  	// to. See:
  9615  	// https://cloud.google.com/apis/design/resource_names#full_resource_name
  9616  	ResourceProject string `json:"resourceProject,omitempty"`
  9617  	// ResourceProjectDisplayName: The user defined display name for the project of
  9618  	// this resource.
  9619  	ResourceProjectDisplayName string `json:"resourceProjectDisplayName,omitempty"`
  9620  	// ResourceType: The type of the Google Cloud resource. Examples include:
  9621  	// APPLICATION, PROJECT, and ORGANIZATION. This is a case insensitive field
  9622  	// defined by Security Command Center and/or the producer of the resource and
  9623  	// is immutable after create time.
  9624  	ResourceType string `json:"resourceType,omitempty"`
  9625  	// ForceSendFields is a list of field names (e.g. "Folders") to unconditionally
  9626  	// include in API requests. By default, fields with empty or default values are
  9627  	// omitted from API requests. See
  9628  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9629  	// details.
  9630  	ForceSendFields []string `json:"-"`
  9631  	// NullFields is a list of field names (e.g. "Folders") to include in API
  9632  	// requests with the JSON null value. By default, fields with empty values are
  9633  	// omitted from API requests. See
  9634  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9635  	NullFields []string `json:"-"`
  9636  }
  9637  
  9638  func (s *SecurityCenterProperties) MarshalJSON() ([]byte, error) {
  9639  	type NoMethod SecurityCenterProperties
  9640  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9641  }
  9642  
  9643  // SecurityMarks: User specified security marks that are attached to the parent
  9644  // Security Command Center resource. Security marks are scoped within a
  9645  // Security Command Center organization -- they can be modified and viewed by
  9646  // all users who have proper permissions on the organization.
  9647  type SecurityMarks struct {
  9648  	// CanonicalName: The canonical name of the marks. Examples:
  9649  	// "organizations/{organization_id}/assets/{asset_id}/securityMarks"
  9650  	// "folders/{folder_id}/assets/{asset_id}/securityMarks"
  9651  	// "projects/{project_number}/assets/{asset_id}/securityMarks"
  9652  	// "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/se
  9653  	// curityMarks"
  9654  	// "folders/{folder_id}/sources/{source_id}/findings/{finding_id}/securityMarks"
  9655  	//
  9656  	// "projects/{project_number}/sources/{source_id}/findings/{finding_id}/security
  9657  	// Marks"
  9658  	CanonicalName string `json:"canonicalName,omitempty"`
  9659  	// Marks: Mutable user specified security marks belonging to the parent
  9660  	// resource. Constraints are as follows: * Keys and values are treated as case
  9661  	// insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys
  9662  	// must be letters, numbers, underscores, or dashes * Values have leading and
  9663  	// trailing whitespace trimmed, remaining characters must be between 1 - 4096
  9664  	// characters (inclusive)
  9665  	Marks map[string]string `json:"marks,omitempty"`
  9666  	// Name: The relative resource name of the SecurityMarks. See:
  9667  	// https://cloud.google.com/apis/design/resource_names#relative_resource_name
  9668  	// Examples: "organizations/{organization_id}/assets/{asset_id}/securityMarks"
  9669  	// "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/se
  9670  	// curityMarks".
  9671  	Name string `json:"name,omitempty"`
  9672  
  9673  	// ServerResponse contains the HTTP response code and headers from the server.
  9674  	googleapi.ServerResponse `json:"-"`
  9675  	// ForceSendFields is a list of field names (e.g. "CanonicalName") to
  9676  	// unconditionally include in API requests. By default, fields with empty or
  9677  	// default values are omitted from API requests. See
  9678  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9679  	// details.
  9680  	ForceSendFields []string `json:"-"`
  9681  	// NullFields is a list of field names (e.g. "CanonicalName") to include in API
  9682  	// requests with the JSON null value. By default, fields with empty values are
  9683  	// omitted from API requests. See
  9684  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9685  	NullFields []string `json:"-"`
  9686  }
  9687  
  9688  func (s *SecurityMarks) MarshalJSON() ([]byte, error) {
  9689  	type NoMethod SecurityMarks
  9690  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9691  }
  9692  
  9693  // SecurityPolicy: Information about the Google Cloud Armor security policy
  9694  // (https://cloud.google.com/armor/docs/security-policy-overview) relevant to
  9695  // the finding.
  9696  type SecurityPolicy struct {
  9697  	// Name: The name of the Google Cloud Armor security policy, for example,
  9698  	// "my-security-policy".
  9699  	Name string `json:"name,omitempty"`
  9700  	// Preview: Whether or not the associated rule or policy is in preview mode.
  9701  	Preview bool `json:"preview,omitempty"`
  9702  	// Type: The type of Google Cloud Armor security policy for example, 'backend
  9703  	// security policy', 'edge security policy', 'network edge security policy', or
  9704  	// 'always-on DDoS protection'.
  9705  	Type string `json:"type,omitempty"`
  9706  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  9707  	// include in API requests. By default, fields with empty or default values are
  9708  	// omitted from API requests. See
  9709  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9710  	// details.
  9711  	ForceSendFields []string `json:"-"`
  9712  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  9713  	// with the JSON null value. By default, fields with empty values are omitted
  9714  	// from API requests. See
  9715  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9716  	NullFields []string `json:"-"`
  9717  }
  9718  
  9719  func (s *SecurityPolicy) MarshalJSON() ([]byte, error) {
  9720  	type NoMethod SecurityPolicy
  9721  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9722  }
  9723  
  9724  // SecurityPosture: Represents a posture that is deployed on Google Cloud by
  9725  // the Security Command Center Posture Management service. A posture contains
  9726  // one or more policy sets. A policy set is a group of policies that enforce a
  9727  // set of security rules on Google Cloud.
  9728  type SecurityPosture struct {
  9729  	// ChangedPolicy: The name of the updated policy, for example,
  9730  	// `projects/{project_id}/policies/{constraint_name}`.
  9731  	ChangedPolicy string `json:"changedPolicy,omitempty"`
  9732  	// Name: Name of the posture, for example, `CIS-Posture`.
  9733  	Name string `json:"name,omitempty"`
  9734  	// Policy: The ID of the updated policy, for example, `compute-policy-1`.
  9735  	Policy string `json:"policy,omitempty"`
  9736  	// PolicyDriftDetails: The details about a change in an updated policy that
  9737  	// violates the deployed posture.
  9738  	PolicyDriftDetails []*PolicyDriftDetails `json:"policyDriftDetails,omitempty"`
  9739  	// PolicySet: The name of the updated policyset, for example, `cis-policyset`.
  9740  	PolicySet string `json:"policySet,omitempty"`
  9741  	// PostureDeployment: The name of the posture deployment, for example,
  9742  	// `organizations/{org_id}/posturedeployments/{posture_deployment_id}`.
  9743  	PostureDeployment string `json:"postureDeployment,omitempty"`
  9744  	// PostureDeploymentResource: The project, folder, or organization on which the
  9745  	// posture is deployed, for example, `projects/{project_number}`.
  9746  	PostureDeploymentResource string `json:"postureDeploymentResource,omitempty"`
  9747  	// RevisionId: The version of the posture, for example, `c7cfa2a8`.
  9748  	RevisionId string `json:"revisionId,omitempty"`
  9749  	// ForceSendFields is a list of field names (e.g. "ChangedPolicy") to
  9750  	// unconditionally include in API requests. By default, fields with empty or
  9751  	// default values are omitted from API requests. See
  9752  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9753  	// details.
  9754  	ForceSendFields []string `json:"-"`
  9755  	// NullFields is a list of field names (e.g. "ChangedPolicy") to include in API
  9756  	// requests with the JSON null value. By default, fields with empty values are
  9757  	// omitted from API requests. See
  9758  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9759  	NullFields []string `json:"-"`
  9760  }
  9761  
  9762  func (s *SecurityPosture) MarshalJSON() ([]byte, error) {
  9763  	type NoMethod SecurityPosture
  9764  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9765  }
  9766  
  9767  // ServiceAccountDelegationInfo: Identity delegation history of an
  9768  // authenticated service account.
  9769  type ServiceAccountDelegationInfo struct {
  9770  	// PrincipalEmail: The email address of a Google account.
  9771  	PrincipalEmail string `json:"principalEmail,omitempty"`
  9772  	// PrincipalSubject: A string representing the principal_subject associated
  9773  	// with the identity. As compared to `principal_email`, supports principals
  9774  	// that aren't associated with email addresses, such as third party principals.
  9775  	// For most identities, the format will be
  9776  	// `principal://iam.googleapis.com/{identity pool name}/subjects/{subject}`
  9777  	// except for some GKE identities (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD)
  9778  	// that are still in the legacy format `serviceAccount:{identity pool
  9779  	// name}[{subject}]`
  9780  	PrincipalSubject string `json:"principalSubject,omitempty"`
  9781  	// ForceSendFields is a list of field names (e.g. "PrincipalEmail") to
  9782  	// unconditionally include in API requests. By default, fields with empty or
  9783  	// default values are omitted from API requests. See
  9784  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9785  	// details.
  9786  	ForceSendFields []string `json:"-"`
  9787  	// NullFields is a list of field names (e.g. "PrincipalEmail") to include in
  9788  	// API requests with the JSON null value. By default, fields with empty values
  9789  	// are omitted from API requests. See
  9790  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9791  	NullFields []string `json:"-"`
  9792  }
  9793  
  9794  func (s *ServiceAccountDelegationInfo) MarshalJSON() ([]byte, error) {
  9795  	type NoMethod ServiceAccountDelegationInfo
  9796  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9797  }
  9798  
  9799  // SetFindingStateRequest: Request message for updating a finding's state.
  9800  type SetFindingStateRequest struct {
  9801  	// StartTime: Required. The time at which the updated state takes effect.
  9802  	StartTime string `json:"startTime,omitempty"`
  9803  	// State: Required. The desired State of the finding.
  9804  	//
  9805  	// Possible values:
  9806  	//   "STATE_UNSPECIFIED" - Unspecified state.
  9807  	//   "ACTIVE" - The finding requires attention and has not been addressed yet.
  9808  	//   "INACTIVE" - The finding has been fixed, triaged as a non-issue or
  9809  	// otherwise addressed and is no longer active.
  9810  	State string `json:"state,omitempty"`
  9811  	// ForceSendFields is a list of field names (e.g. "StartTime") to
  9812  	// unconditionally include in API requests. By default, fields with empty or
  9813  	// default values are omitted from API requests. See
  9814  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9815  	// details.
  9816  	ForceSendFields []string `json:"-"`
  9817  	// NullFields is a list of field names (e.g. "StartTime") to include in API
  9818  	// requests with the JSON null value. By default, fields with empty values are
  9819  	// omitted from API requests. See
  9820  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9821  	NullFields []string `json:"-"`
  9822  }
  9823  
  9824  func (s *SetFindingStateRequest) MarshalJSON() ([]byte, error) {
  9825  	type NoMethod SetFindingStateRequest
  9826  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9827  }
  9828  
  9829  // SetIamPolicyRequest: Request message for `SetIamPolicy` method.
  9830  type SetIamPolicyRequest struct {
  9831  	// Policy: REQUIRED: The complete policy to be applied to the `resource`. The
  9832  	// size of the policy is limited to a few 10s of KB. An empty policy is a valid
  9833  	// policy but certain Google Cloud services (such as Projects) might reject
  9834  	// them.
  9835  	Policy *Policy `json:"policy,omitempty"`
  9836  	// UpdateMask: OPTIONAL: A FieldMask specifying which fields of the policy to
  9837  	// modify. Only the fields in the mask will be modified. If no mask is
  9838  	// provided, the following default mask is used: `paths: "bindings, etag"
  9839  	UpdateMask string `json:"updateMask,omitempty"`
  9840  	// ForceSendFields is a list of field names (e.g. "Policy") to unconditionally
  9841  	// include in API requests. By default, fields with empty or default values are
  9842  	// omitted from API requests. See
  9843  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9844  	// details.
  9845  	ForceSendFields []string `json:"-"`
  9846  	// NullFields is a list of field names (e.g. "Policy") to include in API
  9847  	// requests with the JSON null value. By default, fields with empty values are
  9848  	// omitted from API requests. See
  9849  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9850  	NullFields []string `json:"-"`
  9851  }
  9852  
  9853  func (s *SetIamPolicyRequest) MarshalJSON() ([]byte, error) {
  9854  	type NoMethod SetIamPolicyRequest
  9855  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9856  }
  9857  
  9858  // SetMuteRequest: Request message for updating a finding's mute status.
  9859  type SetMuteRequest struct {
  9860  	// Mute: Required. The desired state of the Mute.
  9861  	//
  9862  	// Possible values:
  9863  	//   "MUTE_UNSPECIFIED" - Unspecified.
  9864  	//   "MUTED" - Finding has been muted.
  9865  	//   "UNMUTED" - Finding has been unmuted.
  9866  	//   "UNDEFINED" - Finding has never been muted/unmuted.
  9867  	Mute string `json:"mute,omitempty"`
  9868  	// ForceSendFields is a list of field names (e.g. "Mute") to unconditionally
  9869  	// include in API requests. By default, fields with empty or default values are
  9870  	// omitted from API requests. See
  9871  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9872  	// details.
  9873  	ForceSendFields []string `json:"-"`
  9874  	// NullFields is a list of field names (e.g. "Mute") to include in API requests
  9875  	// with the JSON null value. By default, fields with empty values are omitted
  9876  	// from API requests. See
  9877  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9878  	NullFields []string `json:"-"`
  9879  }
  9880  
  9881  func (s *SetMuteRequest) MarshalJSON() ([]byte, error) {
  9882  	type NoMethod SetMuteRequest
  9883  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9884  }
  9885  
  9886  // SimulateSecurityHealthAnalyticsCustomModuleRequest: Request message to
  9887  // simulate a CustomConfig against a given test resource. Maximum size of the
  9888  // request is 4 MB by default.
  9889  type SimulateSecurityHealthAnalyticsCustomModuleRequest struct {
  9890  	// CustomConfig: Required. The custom configuration that you need to test.
  9891  	CustomConfig *GoogleCloudSecuritycenterV1CustomConfig `json:"customConfig,omitempty"`
  9892  	// Resource: Required. Resource data to simulate custom module against.
  9893  	Resource *SimulatedResource `json:"resource,omitempty"`
  9894  	// ForceSendFields is a list of field names (e.g. "CustomConfig") to
  9895  	// unconditionally include in API requests. By default, fields with empty or
  9896  	// default values are omitted from API requests. See
  9897  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9898  	// details.
  9899  	ForceSendFields []string `json:"-"`
  9900  	// NullFields is a list of field names (e.g. "CustomConfig") to include in API
  9901  	// requests with the JSON null value. By default, fields with empty values are
  9902  	// omitted from API requests. See
  9903  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9904  	NullFields []string `json:"-"`
  9905  }
  9906  
  9907  func (s *SimulateSecurityHealthAnalyticsCustomModuleRequest) MarshalJSON() ([]byte, error) {
  9908  	type NoMethod SimulateSecurityHealthAnalyticsCustomModuleRequest
  9909  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9910  }
  9911  
  9912  // SimulateSecurityHealthAnalyticsCustomModuleResponse: Response message for
  9913  // simulating a `SecurityHealthAnalyticsCustomModule` against a given resource.
  9914  type SimulateSecurityHealthAnalyticsCustomModuleResponse struct {
  9915  	// Result: Result for test case in the corresponding request.
  9916  	Result *SimulatedResult `json:"result,omitempty"`
  9917  
  9918  	// ServerResponse contains the HTTP response code and headers from the server.
  9919  	googleapi.ServerResponse `json:"-"`
  9920  	// ForceSendFields is a list of field names (e.g. "Result") to unconditionally
  9921  	// include in API requests. By default, fields with empty or default values are
  9922  	// omitted from API requests. See
  9923  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9924  	// details.
  9925  	ForceSendFields []string `json:"-"`
  9926  	// NullFields is a list of field names (e.g. "Result") to include in API
  9927  	// requests with the JSON null value. By default, fields with empty values are
  9928  	// omitted from API requests. See
  9929  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9930  	NullFields []string `json:"-"`
  9931  }
  9932  
  9933  func (s *SimulateSecurityHealthAnalyticsCustomModuleResponse) MarshalJSON() ([]byte, error) {
  9934  	type NoMethod SimulateSecurityHealthAnalyticsCustomModuleResponse
  9935  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9936  }
  9937  
  9938  // SimulatedResource: Manually constructed resource name. If the custom module
  9939  // evaluates against only the resource data, you can omit the `iam_policy_data`
  9940  // field. If it evaluates only the `iam_policy_data` field, you can omit the
  9941  // resource data.
  9942  type SimulatedResource struct {
  9943  	// IamPolicyData: Optional. A representation of the IAM policy.
  9944  	IamPolicyData *Policy `json:"iamPolicyData,omitempty"`
  9945  	// ResourceData: Optional. A representation of the Google Cloud resource.
  9946  	// Should match the Google Cloud resource JSON format.
  9947  	ResourceData googleapi.RawMessage `json:"resourceData,omitempty"`
  9948  	// ResourceType: Required. The type of the resource, for example,
  9949  	// `compute.googleapis.com/Disk`.
  9950  	ResourceType string `json:"resourceType,omitempty"`
  9951  	// ForceSendFields is a list of field names (e.g. "IamPolicyData") to
  9952  	// unconditionally include in API requests. By default, fields with empty or
  9953  	// default values are omitted from API requests. See
  9954  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9955  	// details.
  9956  	ForceSendFields []string `json:"-"`
  9957  	// NullFields is a list of field names (e.g. "IamPolicyData") to include in API
  9958  	// requests with the JSON null value. By default, fields with empty values are
  9959  	// omitted from API requests. See
  9960  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9961  	NullFields []string `json:"-"`
  9962  }
  9963  
  9964  func (s *SimulatedResource) MarshalJSON() ([]byte, error) {
  9965  	type NoMethod SimulatedResource
  9966  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9967  }
  9968  
  9969  // SimulatedResult: Possible test result.
  9970  type SimulatedResult struct {
  9971  	// Error: Error encountered during the test.
  9972  	Error *Status `json:"error,omitempty"`
  9973  	// Finding: Finding that would be published for the test case, if a violation
  9974  	// is detected.
  9975  	Finding *Finding `json:"finding,omitempty"`
  9976  	// NoViolation: Indicates that the test case does not trigger any violation.
  9977  	NoViolation *Empty `json:"noViolation,omitempty"`
  9978  	// ForceSendFields is a list of field names (e.g. "Error") to unconditionally
  9979  	// include in API requests. By default, fields with empty or default values are
  9980  	// omitted from API requests. See
  9981  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9982  	// details.
  9983  	ForceSendFields []string `json:"-"`
  9984  	// NullFields is a list of field names (e.g. "Error") to include in API
  9985  	// requests with the JSON null value. By default, fields with empty values are
  9986  	// omitted from API requests. See
  9987  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9988  	NullFields []string `json:"-"`
  9989  }
  9990  
  9991  func (s *SimulatedResult) MarshalJSON() ([]byte, error) {
  9992  	type NoMethod SimulatedResult
  9993  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9994  }
  9995  
  9996  // Simulation: Attack path simulation
  9997  type Simulation struct {
  9998  	// CloudProvider: Indicates which cloud provider was used in this simulation.
  9999  	//
 10000  	// Possible values:
 10001  	//   "CLOUD_PROVIDER_UNSPECIFIED" - The cloud provider is unspecified.
 10002  	//   "GOOGLE_CLOUD_PLATFORM" - The cloud provider is Google Cloud Platform.
 10003  	//   "AMAZON_WEB_SERVICES" - The cloud provider is Amazon Web Services.
 10004  	//   "MICROSOFT_AZURE" - The cloud provider is Microsoft Azure.
 10005  	CloudProvider string `json:"cloudProvider,omitempty"`
 10006  	// CreateTime: Output only. Time simulation was created
 10007  	CreateTime string `json:"createTime,omitempty"`
 10008  	// Name: Full resource name of the Simulation:
 10009  	// organizations/123/simulations/456
 10010  	Name string `json:"name,omitempty"`
 10011  	// ResourceValueConfigsMetadata: Resource value configurations' metadata used
 10012  	// in this simulation. Maximum of 100.
 10013  	ResourceValueConfigsMetadata []*ResourceValueConfigMetadata `json:"resourceValueConfigsMetadata,omitempty"`
 10014  
 10015  	// ServerResponse contains the HTTP response code and headers from the server.
 10016  	googleapi.ServerResponse `json:"-"`
 10017  	// ForceSendFields is a list of field names (e.g. "CloudProvider") to
 10018  	// unconditionally include in API requests. By default, fields with empty or
 10019  	// default values are omitted from API requests. See
 10020  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10021  	// details.
 10022  	ForceSendFields []string `json:"-"`
 10023  	// NullFields is a list of field names (e.g. "CloudProvider") to include in API
 10024  	// requests with the JSON null value. By default, fields with empty values are
 10025  	// omitted from API requests. See
 10026  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10027  	NullFields []string `json:"-"`
 10028  }
 10029  
 10030  func (s *Simulation) MarshalJSON() ([]byte, error) {
 10031  	type NoMethod Simulation
 10032  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10033  }
 10034  
 10035  // Source: Security Command Center finding source. A finding source is an
 10036  // entity or a mechanism that can produce a finding. A source is like a
 10037  // container of findings that come from the same scanner, logger, monitor, and
 10038  // other tools.
 10039  type Source struct {
 10040  	// CanonicalName: The canonical name of the finding source. It's either
 10041  	// "organizations/{organization_id}/sources/{source_id}",
 10042  	// "folders/{folder_id}/sources/{source_id}", or
 10043  	// "projects/{project_number}/sources/{source_id}", depending on the closest
 10044  	// CRM ancestor of the resource associated with the finding.
 10045  	CanonicalName string `json:"canonicalName,omitempty"`
 10046  	// Description: The description of the source (max of 1024 characters).
 10047  	// Example: "Web Security Scanner is a web security scanner for common
 10048  	// vulnerabilities in App Engine applications. It can automatically scan and
 10049  	// detect four common vulnerabilities, including cross-site-scripting (XSS),
 10050  	// Flash injection, mixed content (HTTP in HTTPS), and outdated or insecure
 10051  	// libraries."
 10052  	Description string `json:"description,omitempty"`
 10053  	// DisplayName: The source's display name. A source's display name must be
 10054  	// unique amongst its siblings, for example, two sources with the same parent
 10055  	// can't share the same display name. The display name must have a length
 10056  	// between 1 and 64 characters (inclusive).
 10057  	DisplayName string `json:"displayName,omitempty"`
 10058  	// Name: The relative resource name of this source. See:
 10059  	// https://cloud.google.com/apis/design/resource_names#relative_resource_name
 10060  	// Example: "organizations/{organization_id}/sources/{source_id}"
 10061  	Name string `json:"name,omitempty"`
 10062  
 10063  	// ServerResponse contains the HTTP response code and headers from the server.
 10064  	googleapi.ServerResponse `json:"-"`
 10065  	// ForceSendFields is a list of field names (e.g. "CanonicalName") to
 10066  	// unconditionally include in API requests. By default, fields with empty or
 10067  	// default values are omitted from API requests. See
 10068  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10069  	// details.
 10070  	ForceSendFields []string `json:"-"`
 10071  	// NullFields is a list of field names (e.g. "CanonicalName") to include in API
 10072  	// requests with the JSON null value. By default, fields with empty values are
 10073  	// omitted from API requests. See
 10074  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10075  	NullFields []string `json:"-"`
 10076  }
 10077  
 10078  func (s *Source) MarshalJSON() ([]byte, error) {
 10079  	type NoMethod Source
 10080  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10081  }
 10082  
 10083  // Status: The `Status` type defines a logical error model that is suitable for
 10084  // different programming environments, including REST APIs and RPC APIs. It is
 10085  // used by gRPC (https://github.com/grpc). Each `Status` message contains three
 10086  // pieces of data: error code, error message, and error details. You can find
 10087  // out more about this error model and how to work with it in the API Design
 10088  // Guide (https://cloud.google.com/apis/design/errors).
 10089  type Status struct {
 10090  	// Code: The status code, which should be an enum value of google.rpc.Code.
 10091  	Code int64 `json:"code,omitempty"`
 10092  	// Details: A list of messages that carry the error details. There is a common
 10093  	// set of message types for APIs to use.
 10094  	Details []googleapi.RawMessage `json:"details,omitempty"`
 10095  	// Message: A developer-facing error message, which should be in English. Any
 10096  	// user-facing error message should be localized and sent in the
 10097  	// google.rpc.Status.details field, or localized by the client.
 10098  	Message string `json:"message,omitempty"`
 10099  	// ForceSendFields is a list of field names (e.g. "Code") to unconditionally
 10100  	// include in API requests. By default, fields with empty or default values are
 10101  	// omitted from API requests. See
 10102  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10103  	// details.
 10104  	ForceSendFields []string `json:"-"`
 10105  	// NullFields is a list of field names (e.g. "Code") to include in API requests
 10106  	// with the JSON null value. By default, fields with empty values are omitted
 10107  	// from API requests. See
 10108  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10109  	NullFields []string `json:"-"`
 10110  }
 10111  
 10112  func (s *Status) MarshalJSON() ([]byte, error) {
 10113  	type NoMethod Status
 10114  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10115  }
 10116  
 10117  // StreamingConfig: The config for streaming-based notifications, which send
 10118  // each event as soon as it is detected.
 10119  type StreamingConfig struct {
 10120  	// Filter: Expression that defines the filter to apply across create/update
 10121  	// events of assets or findings as specified by the event type. The expression
 10122  	// is a list of zero or more restrictions combined via logical operators `AND`
 10123  	// and `OR`. Parentheses are supported, and `OR` has higher precedence than
 10124  	// `AND`. Restrictions have the form ` ` and may have a `-` character in front
 10125  	// of them to indicate negation. The fields map to those defined in the
 10126  	// corresponding resource. The supported operators are: * `=` for all value
 10127  	// types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring
 10128  	// matching, for strings. The supported value types are: * string literals in
 10129  	// quotes. * integer literals without quotes. * boolean literals `true` and
 10130  	// `false` without quotes.
 10131  	Filter string `json:"filter,omitempty"`
 10132  	// ForceSendFields is a list of field names (e.g. "Filter") to unconditionally
 10133  	// include in API requests. By default, fields with empty or default values are
 10134  	// omitted from API requests. See
 10135  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10136  	// details.
 10137  	ForceSendFields []string `json:"-"`
 10138  	// NullFields is a list of field names (e.g. "Filter") to include in API
 10139  	// requests with the JSON null value. By default, fields with empty values are
 10140  	// omitted from API requests. See
 10141  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10142  	NullFields []string `json:"-"`
 10143  }
 10144  
 10145  func (s *StreamingConfig) MarshalJSON() ([]byte, error) {
 10146  	type NoMethod StreamingConfig
 10147  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10148  }
 10149  
 10150  // Subject: Represents a Kubernetes subject.
 10151  type Subject struct {
 10152  	// Kind: Authentication type for the subject.
 10153  	//
 10154  	// Possible values:
 10155  	//   "AUTH_TYPE_UNSPECIFIED" - Authentication is not specified.
 10156  	//   "USER" - User with valid certificate.
 10157  	//   "SERVICEACCOUNT" - Users managed by Kubernetes API with credentials stored
 10158  	// as secrets.
 10159  	//   "GROUP" - Collection of users.
 10160  	Kind string `json:"kind,omitempty"`
 10161  	// Name: Name for the subject.
 10162  	Name string `json:"name,omitempty"`
 10163  	// Ns: Namespace for the subject.
 10164  	Ns string `json:"ns,omitempty"`
 10165  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
 10166  	// include in API requests. By default, fields with empty or default values are
 10167  	// omitted from API requests. See
 10168  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10169  	// details.
 10170  	ForceSendFields []string `json:"-"`
 10171  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
 10172  	// with the JSON null value. By default, fields with empty values are omitted
 10173  	// from API requests. See
 10174  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10175  	NullFields []string `json:"-"`
 10176  }
 10177  
 10178  func (s *Subject) MarshalJSON() ([]byte, error) {
 10179  	type NoMethod Subject
 10180  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10181  }
 10182  
 10183  // TestIamPermissionsRequest: Request message for `TestIamPermissions` method.
 10184  type TestIamPermissionsRequest struct {
 10185  	// Permissions: The set of permissions to check for the `resource`. Permissions
 10186  	// with wildcards (such as `*` or `storage.*`) are not allowed. For more
 10187  	// information see IAM Overview
 10188  	// (https://cloud.google.com/iam/docs/overview#permissions).
 10189  	Permissions []string `json:"permissions,omitempty"`
 10190  	// ForceSendFields is a list of field names (e.g. "Permissions") to
 10191  	// unconditionally include in API requests. By default, fields with empty or
 10192  	// default values are omitted from API requests. See
 10193  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10194  	// details.
 10195  	ForceSendFields []string `json:"-"`
 10196  	// NullFields is a list of field names (e.g. "Permissions") to include in API
 10197  	// requests with the JSON null value. By default, fields with empty values are
 10198  	// omitted from API requests. See
 10199  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10200  	NullFields []string `json:"-"`
 10201  }
 10202  
 10203  func (s *TestIamPermissionsRequest) MarshalJSON() ([]byte, error) {
 10204  	type NoMethod TestIamPermissionsRequest
 10205  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10206  }
 10207  
 10208  // TestIamPermissionsResponse: Response message for `TestIamPermissions`
 10209  // method.
 10210  type TestIamPermissionsResponse struct {
 10211  	// Permissions: A subset of `TestPermissionsRequest.permissions` that the
 10212  	// caller is allowed.
 10213  	Permissions []string `json:"permissions,omitempty"`
 10214  
 10215  	// ServerResponse contains the HTTP response code and headers from the server.
 10216  	googleapi.ServerResponse `json:"-"`
 10217  	// ForceSendFields is a list of field names (e.g. "Permissions") to
 10218  	// unconditionally include in API requests. By default, fields with empty or
 10219  	// default values are omitted from API requests. See
 10220  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10221  	// details.
 10222  	ForceSendFields []string `json:"-"`
 10223  	// NullFields is a list of field names (e.g. "Permissions") to include in API
 10224  	// requests with the JSON null value. By default, fields with empty values are
 10225  	// omitted from API requests. See
 10226  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10227  	NullFields []string `json:"-"`
 10228  }
 10229  
 10230  func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) {
 10231  	type NoMethod TestIamPermissionsResponse
 10232  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10233  }
 10234  
 10235  // TicketInfo: Information about the ticket, if any, that is being used to
 10236  // track the resolution of the issue that is identified by this finding.
 10237  type TicketInfo struct {
 10238  	// Assignee: The assignee of the ticket in the ticket system.
 10239  	Assignee string `json:"assignee,omitempty"`
 10240  	// Description: The description of the ticket in the ticket system.
 10241  	Description string `json:"description,omitempty"`
 10242  	// Id: The identifier of the ticket in the ticket system.
 10243  	Id string `json:"id,omitempty"`
 10244  	// Status: The latest status of the ticket, as reported by the ticket system.
 10245  	Status string `json:"status,omitempty"`
 10246  	// UpdateTime: The time when the ticket was last updated, as reported by the
 10247  	// ticket system.
 10248  	UpdateTime string `json:"updateTime,omitempty"`
 10249  	// Uri: The link to the ticket in the ticket system.
 10250  	Uri string `json:"uri,omitempty"`
 10251  	// ForceSendFields is a list of field names (e.g. "Assignee") to
 10252  	// unconditionally include in API requests. By default, fields with empty or
 10253  	// default values are omitted from API requests. See
 10254  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10255  	// details.
 10256  	ForceSendFields []string `json:"-"`
 10257  	// NullFields is a list of field names (e.g. "Assignee") to include in API
 10258  	// requests with the JSON null value. By default, fields with empty values are
 10259  	// omitted from API requests. See
 10260  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10261  	NullFields []string `json:"-"`
 10262  }
 10263  
 10264  func (s *TicketInfo) MarshalJSON() ([]byte, error) {
 10265  	type NoMethod TicketInfo
 10266  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10267  }
 10268  
 10269  // ValidateEventThreatDetectionCustomModuleRequest: Request to validate an
 10270  // Event Threat Detection custom module.
 10271  type ValidateEventThreatDetectionCustomModuleRequest struct {
 10272  	// RawText: Required. The raw text of the module's contents. Used to generate
 10273  	// error messages.
 10274  	RawText string `json:"rawText,omitempty"`
 10275  	// Type: Required. The type of the module (e.g. CONFIGURABLE_BAD_IP).
 10276  	Type string `json:"type,omitempty"`
 10277  	// ForceSendFields is a list of field names (e.g. "RawText") to unconditionally
 10278  	// include in API requests. By default, fields with empty or default values are
 10279  	// omitted from API requests. See
 10280  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10281  	// details.
 10282  	ForceSendFields []string `json:"-"`
 10283  	// NullFields is a list of field names (e.g. "RawText") to include in API
 10284  	// requests with the JSON null value. By default, fields with empty values are
 10285  	// omitted from API requests. See
 10286  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10287  	NullFields []string `json:"-"`
 10288  }
 10289  
 10290  func (s *ValidateEventThreatDetectionCustomModuleRequest) MarshalJSON() ([]byte, error) {
 10291  	type NoMethod ValidateEventThreatDetectionCustomModuleRequest
 10292  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10293  }
 10294  
 10295  // ValidateEventThreatDetectionCustomModuleResponse: Response to validating an
 10296  // Event Threat Detection custom module.
 10297  type ValidateEventThreatDetectionCustomModuleResponse struct {
 10298  	// Errors: A list of errors returned by the validator. If the list is empty,
 10299  	// there were no errors.
 10300  	Errors *CustomModuleValidationErrors `json:"errors,omitempty"`
 10301  
 10302  	// ServerResponse contains the HTTP response code and headers from the server.
 10303  	googleapi.ServerResponse `json:"-"`
 10304  	// ForceSendFields is a list of field names (e.g. "Errors") to unconditionally
 10305  	// include in API requests. By default, fields with empty or default values are
 10306  	// omitted from API requests. See
 10307  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10308  	// details.
 10309  	ForceSendFields []string `json:"-"`
 10310  	// NullFields is a list of field names (e.g. "Errors") to include in API
 10311  	// requests with the JSON null value. By default, fields with empty values are
 10312  	// omitted from API requests. See
 10313  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10314  	NullFields []string `json:"-"`
 10315  }
 10316  
 10317  func (s *ValidateEventThreatDetectionCustomModuleResponse) MarshalJSON() ([]byte, error) {
 10318  	type NoMethod ValidateEventThreatDetectionCustomModuleResponse
 10319  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10320  }
 10321  
 10322  // ValuedResource: A resource that is determined to have value to a user's
 10323  // system
 10324  type ValuedResource struct {
 10325  	// DisplayName: Human-readable name of the valued resource.
 10326  	DisplayName string `json:"displayName,omitempty"`
 10327  	// ExposedScore: Exposed score for this valued resource. A value of 0 means no
 10328  	// exposure was detected exposure.
 10329  	ExposedScore float64 `json:"exposedScore,omitempty"`
 10330  	// Name: Valued resource name, for example, e.g.:
 10331  	// `organizations/123/simulations/456/valuedResources/789`
 10332  	Name string `json:"name,omitempty"`
 10333  	// Resource: The full resource name
 10334  	// (https://cloud.google.com/apis/design/resource_names#full_resource_name) of
 10335  	// the valued resource.
 10336  	Resource string `json:"resource,omitempty"`
 10337  	// ResourceType: The resource type
 10338  	// (https://cloud.google.com/asset-inventory/docs/supported-asset-types) of the
 10339  	// valued resource.
 10340  	ResourceType string `json:"resourceType,omitempty"`
 10341  	// ResourceValue: How valuable this resource is.
 10342  	//
 10343  	// Possible values:
 10344  	//   "RESOURCE_VALUE_UNSPECIFIED" - The resource value isn't specified.
 10345  	//   "RESOURCE_VALUE_LOW" - This is a low-value resource.
 10346  	//   "RESOURCE_VALUE_MEDIUM" - This is a medium-value resource.
 10347  	//   "RESOURCE_VALUE_HIGH" - This is a high-value resource.
 10348  	ResourceValue string `json:"resourceValue,omitempty"`
 10349  	// ResourceValueConfigsUsed: List of resource value configurations' metadata
 10350  	// used to determine the value of this resource. Maximum of 100.
 10351  	ResourceValueConfigsUsed []*ResourceValueConfigMetadata `json:"resourceValueConfigsUsed,omitempty"`
 10352  
 10353  	// ServerResponse contains the HTTP response code and headers from the server.
 10354  	googleapi.ServerResponse `json:"-"`
 10355  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
 10356  	// unconditionally include in API requests. By default, fields with empty or
 10357  	// default values are omitted from API requests. See
 10358  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10359  	// details.
 10360  	ForceSendFields []string `json:"-"`
 10361  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
 10362  	// requests with the JSON null value. By default, fields with empty values are
 10363  	// omitted from API requests. See
 10364  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10365  	NullFields []string `json:"-"`
 10366  }
 10367  
 10368  func (s *ValuedResource) MarshalJSON() ([]byte, error) {
 10369  	type NoMethod ValuedResource
 10370  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10371  }
 10372  
 10373  func (s *ValuedResource) UnmarshalJSON(data []byte) error {
 10374  	type NoMethod ValuedResource
 10375  	var s1 struct {
 10376  		ExposedScore gensupport.JSONFloat64 `json:"exposedScore"`
 10377  		*NoMethod
 10378  	}
 10379  	s1.NoMethod = (*NoMethod)(s)
 10380  	if err := json.Unmarshal(data, &s1); err != nil {
 10381  		return err
 10382  	}
 10383  	s.ExposedScore = float64(s1.ExposedScore)
 10384  	return nil
 10385  }
 10386  
 10387  // Vulnerability: Refers to common vulnerability fields e.g. cve, cvss, cwe
 10388  // etc.
 10389  type Vulnerability struct {
 10390  	// Cve: CVE stands for Common Vulnerabilities and Exposures
 10391  	// (https://cve.mitre.org/about/)
 10392  	Cve *Cve `json:"cve,omitempty"`
 10393  	// FixedPackage: The fixed package is relevant to the finding.
 10394  	FixedPackage *Package `json:"fixedPackage,omitempty"`
 10395  	// OffendingPackage: The offending package is relevant to the finding.
 10396  	OffendingPackage *Package `json:"offendingPackage,omitempty"`
 10397  	// SecurityBulletin: The security bulletin is relevant to this finding.
 10398  	SecurityBulletin *SecurityBulletin `json:"securityBulletin,omitempty"`
 10399  	// ForceSendFields is a list of field names (e.g. "Cve") to unconditionally
 10400  	// include in API requests. By default, fields with empty or default values are
 10401  	// omitted from API requests. See
 10402  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10403  	// details.
 10404  	ForceSendFields []string `json:"-"`
 10405  	// NullFields is a list of field names (e.g. "Cve") to include in API requests
 10406  	// with the JSON null value. By default, fields with empty values are omitted
 10407  	// from API requests. See
 10408  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10409  	NullFields []string `json:"-"`
 10410  }
 10411  
 10412  func (s *Vulnerability) MarshalJSON() ([]byte, error) {
 10413  	type NoMethod Vulnerability
 10414  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10415  }
 10416  
 10417  // VulnerabilityCountBySeverity: Vulnerability count by severity.
 10418  type VulnerabilityCountBySeverity struct {
 10419  	// SeverityToFindingCount: Key is the Severity enum.
 10420  	SeverityToFindingCount map[string]string `json:"severityToFindingCount,omitempty"`
 10421  	// ForceSendFields is a list of field names (e.g. "SeverityToFindingCount") to
 10422  	// unconditionally include in API requests. By default, fields with empty or
 10423  	// default values are omitted from API requests. See
 10424  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10425  	// details.
 10426  	ForceSendFields []string `json:"-"`
 10427  	// NullFields is a list of field names (e.g. "SeverityToFindingCount") to
 10428  	// include in API requests with the JSON null value. By default, fields with
 10429  	// empty values are omitted from API requests. See
 10430  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10431  	NullFields []string `json:"-"`
 10432  }
 10433  
 10434  func (s *VulnerabilityCountBySeverity) MarshalJSON() ([]byte, error) {
 10435  	type NoMethod VulnerabilityCountBySeverity
 10436  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10437  }
 10438  
 10439  // VulnerabilitySnapshot: Result containing the properties and count of a
 10440  // VulnerabilitySnapshot request.
 10441  type VulnerabilitySnapshot struct {
 10442  	// CloudProvider: The cloud provider for the vulnerability snapshot.
 10443  	//
 10444  	// Possible values:
 10445  	//   "CLOUD_PROVIDER_UNSPECIFIED" - The cloud provider is unspecified.
 10446  	//   "GOOGLE_CLOUD_PLATFORM" - The cloud provider is Google Cloud Platform.
 10447  	//   "AMAZON_WEB_SERVICES" - The cloud provider is Amazon Web Services.
 10448  	//   "MICROSOFT_AZURE" - The cloud provider is Microsoft Azure.
 10449  	CloudProvider string `json:"cloudProvider,omitempty"`
 10450  	// FindingCount: The vulnerability count by severity.
 10451  	FindingCount *VulnerabilityCountBySeverity `json:"findingCount,omitempty"`
 10452  	// Name: Identifier. The vulnerability snapshot name. Format:
 10453  	// //locations//vulnerabilitySnapshots/
 10454  	Name string `json:"name,omitempty"`
 10455  	// SnapshotTime: The time that the snapshot was taken.
 10456  	SnapshotTime string `json:"snapshotTime,omitempty"`
 10457  	// ForceSendFields is a list of field names (e.g. "CloudProvider") to
 10458  	// unconditionally include in API requests. By default, fields with empty or
 10459  	// default values are omitted from API requests. See
 10460  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10461  	// details.
 10462  	ForceSendFields []string `json:"-"`
 10463  	// NullFields is a list of field names (e.g. "CloudProvider") to include in API
 10464  	// requests with the JSON null value. By default, fields with empty values are
 10465  	// omitted from API requests. See
 10466  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10467  	NullFields []string `json:"-"`
 10468  }
 10469  
 10470  func (s *VulnerabilitySnapshot) MarshalJSON() ([]byte, error) {
 10471  	type NoMethod VulnerabilitySnapshot
 10472  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10473  }
 10474  
 10475  // YaraRuleSignature: A signature corresponding to a YARA rule.
 10476  type YaraRuleSignature struct {
 10477  	// YaraRule: The name of the YARA rule.
 10478  	YaraRule string `json:"yaraRule,omitempty"`
 10479  	// ForceSendFields is a list of field names (e.g. "YaraRule") to
 10480  	// unconditionally include in API requests. By default, fields with empty or
 10481  	// default values are omitted from API requests. See
 10482  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10483  	// details.
 10484  	ForceSendFields []string `json:"-"`
 10485  	// NullFields is a list of field names (e.g. "YaraRule") to include in API
 10486  	// requests with the JSON null value. By default, fields with empty values are
 10487  	// omitted from API requests. See
 10488  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10489  	NullFields []string `json:"-"`
 10490  }
 10491  
 10492  func (s *YaraRuleSignature) MarshalJSON() ([]byte, error) {
 10493  	type NoMethod YaraRuleSignature
 10494  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10495  }
 10496  
 10497  type FoldersAssetsGroupCall struct {
 10498  	s                  *Service
 10499  	parent             string
 10500  	groupassetsrequest *GroupAssetsRequest
 10501  	urlParams_         gensupport.URLParams
 10502  	ctx_               context.Context
 10503  	header_            http.Header
 10504  }
 10505  
 10506  // Group: Filters an organization's assets and groups them by their specified
 10507  // properties.
 10508  //
 10509  //   - parent: The name of the parent to group the assets by. Its format is
 10510  //     "organizations/[organization_id]", "folders/[folder_id]", or
 10511  //     "projects/[project_id]".
 10512  func (r *FoldersAssetsService) Group(parent string, groupassetsrequest *GroupAssetsRequest) *FoldersAssetsGroupCall {
 10513  	c := &FoldersAssetsGroupCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10514  	c.parent = parent
 10515  	c.groupassetsrequest = groupassetsrequest
 10516  	return c
 10517  }
 10518  
 10519  // Fields allows partial responses to be retrieved. See
 10520  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10521  // details.
 10522  func (c *FoldersAssetsGroupCall) Fields(s ...googleapi.Field) *FoldersAssetsGroupCall {
 10523  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10524  	return c
 10525  }
 10526  
 10527  // Context sets the context to be used in this call's Do method.
 10528  func (c *FoldersAssetsGroupCall) Context(ctx context.Context) *FoldersAssetsGroupCall {
 10529  	c.ctx_ = ctx
 10530  	return c
 10531  }
 10532  
 10533  // Header returns a http.Header that can be modified by the caller to add
 10534  // headers to the request.
 10535  func (c *FoldersAssetsGroupCall) Header() http.Header {
 10536  	if c.header_ == nil {
 10537  		c.header_ = make(http.Header)
 10538  	}
 10539  	return c.header_
 10540  }
 10541  
 10542  func (c *FoldersAssetsGroupCall) doRequest(alt string) (*http.Response, error) {
 10543  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10544  	var body io.Reader = nil
 10545  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.groupassetsrequest)
 10546  	if err != nil {
 10547  		return nil, err
 10548  	}
 10549  	c.urlParams_.Set("alt", alt)
 10550  	c.urlParams_.Set("prettyPrint", "false")
 10551  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/assets:group")
 10552  	urls += "?" + c.urlParams_.Encode()
 10553  	req, err := http.NewRequest("POST", urls, body)
 10554  	if err != nil {
 10555  		return nil, err
 10556  	}
 10557  	req.Header = reqHeaders
 10558  	googleapi.Expand(req.URL, map[string]string{
 10559  		"parent": c.parent,
 10560  	})
 10561  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10562  }
 10563  
 10564  // Do executes the "securitycenter.folders.assets.group" call.
 10565  // Any non-2xx status code is an error. Response headers are in either
 10566  // *GroupAssetsResponse.ServerResponse.Header or (if a response was returned at
 10567  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 10568  // check whether the returned error was because http.StatusNotModified was
 10569  // returned.
 10570  func (c *FoldersAssetsGroupCall) Do(opts ...googleapi.CallOption) (*GroupAssetsResponse, error) {
 10571  	gensupport.SetOptions(c.urlParams_, opts...)
 10572  	res, err := c.doRequest("json")
 10573  	if res != nil && res.StatusCode == http.StatusNotModified {
 10574  		if res.Body != nil {
 10575  			res.Body.Close()
 10576  		}
 10577  		return nil, gensupport.WrapError(&googleapi.Error{
 10578  			Code:   res.StatusCode,
 10579  			Header: res.Header,
 10580  		})
 10581  	}
 10582  	if err != nil {
 10583  		return nil, err
 10584  	}
 10585  	defer googleapi.CloseBody(res)
 10586  	if err := googleapi.CheckResponse(res); err != nil {
 10587  		return nil, gensupport.WrapError(err)
 10588  	}
 10589  	ret := &GroupAssetsResponse{
 10590  		ServerResponse: googleapi.ServerResponse{
 10591  			Header:         res.Header,
 10592  			HTTPStatusCode: res.StatusCode,
 10593  		},
 10594  	}
 10595  	target := &ret
 10596  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10597  		return nil, err
 10598  	}
 10599  	return ret, nil
 10600  }
 10601  
 10602  // Pages invokes f for each page of results.
 10603  // A non-nil error returned from f will halt the iteration.
 10604  // The provided context supersedes any context provided to the Context method.
 10605  func (c *FoldersAssetsGroupCall) Pages(ctx context.Context, f func(*GroupAssetsResponse) error) error {
 10606  	c.ctx_ = ctx
 10607  	defer func(pt string) { c.groupassetsrequest.PageToken = pt }(c.groupassetsrequest.PageToken)
 10608  	for {
 10609  		x, err := c.Do()
 10610  		if err != nil {
 10611  			return err
 10612  		}
 10613  		if err := f(x); err != nil {
 10614  			return err
 10615  		}
 10616  		if x.NextPageToken == "" {
 10617  			return nil
 10618  		}
 10619  		c.groupassetsrequest.PageToken = x.NextPageToken
 10620  	}
 10621  }
 10622  
 10623  type FoldersAssetsListCall struct {
 10624  	s            *Service
 10625  	parent       string
 10626  	urlParams_   gensupport.URLParams
 10627  	ifNoneMatch_ string
 10628  	ctx_         context.Context
 10629  	header_      http.Header
 10630  }
 10631  
 10632  // List: Lists an organization's assets.
 10633  //
 10634  //   - parent: The name of the parent resource that contains the assets. The
 10635  //     value that you can specify on parent depends on the method in which you
 10636  //     specify parent. You can specify one of the following values:
 10637  //     "organizations/[organization_id]", "folders/[folder_id]", or
 10638  //     "projects/[project_id]".
 10639  func (r *FoldersAssetsService) List(parent string) *FoldersAssetsListCall {
 10640  	c := &FoldersAssetsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10641  	c.parent = parent
 10642  	return c
 10643  }
 10644  
 10645  // CompareDuration sets the optional parameter "compareDuration": When
 10646  // compare_duration is set, the ListAssetsResult's "state_change" attribute is
 10647  // updated to indicate whether the asset was added, removed, or remained
 10648  // present during the compare_duration period of time that precedes the
 10649  // read_time. This is the time between (read_time - compare_duration) and
 10650  // read_time. The state_change value is derived based on the presence of the
 10651  // asset at the two points in time. Intermediate state changes between the two
 10652  // times don't affect the result. For example, the results aren't affected if
 10653  // the asset is removed and re-created again. Possible "state_change" values
 10654  // when compare_duration is specified: * "ADDED": indicates that the asset was
 10655  // not present at the start of compare_duration, but present at read_time. *
 10656  // "REMOVED": indicates that the asset was present at the start of
 10657  // compare_duration, but not present at read_time. * "ACTIVE": indicates that
 10658  // the asset was present at both the start and the end of the time period
 10659  // defined by compare_duration and read_time. If compare_duration is not
 10660  // specified, then the only possible state_change is "UNUSED", which will be
 10661  // the state_change set for all assets present at read_time.
 10662  func (c *FoldersAssetsListCall) CompareDuration(compareDuration string) *FoldersAssetsListCall {
 10663  	c.urlParams_.Set("compareDuration", compareDuration)
 10664  	return c
 10665  }
 10666  
 10667  // FieldMask sets the optional parameter "fieldMask": A field mask to specify
 10668  // the ListAssetsResult fields to be listed in the response. An empty field
 10669  // mask will list all fields.
 10670  func (c *FoldersAssetsListCall) FieldMask(fieldMask string) *FoldersAssetsListCall {
 10671  	c.urlParams_.Set("fieldMask", fieldMask)
 10672  	return c
 10673  }
 10674  
 10675  // Filter sets the optional parameter "filter": Expression that defines the
 10676  // filter to apply across assets. The expression is a list of zero or more
 10677  // restrictions combined via logical operators `AND` and `OR`. Parentheses are
 10678  // supported, and `OR` has higher precedence than `AND`. Restrictions have the
 10679  // form ` ` and may have a `-` character in front of them to indicate negation.
 10680  // The fields map to those defined in the Asset resource. Examples include: *
 10681  // name * security_center_properties.resource_name *
 10682  // resource_properties.a_property * security_marks.marks.marka The supported
 10683  // operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer
 10684  // values. * `:`, meaning substring matching, for strings. The supported value
 10685  // types are: * string literals in quotes. * integer literals without quotes. *
 10686  // boolean literals `true` and `false` without quotes. The following are the
 10687  // allowed field and operator combinations: * name: `=` * update_time: `=`,
 10688  // `>`, `<`, `>=`, `<=` Usage: This should be milliseconds since epoch or an
 10689  // RFC3339 string. Examples: `update_time = "2019-06-10T16:07:18-07:00"
 10690  // `update_time = 1560208038000` * create_time: `=`, `>`, `<`, `>=`, `<=`
 10691  // Usage: This should be milliseconds since epoch or an RFC3339 string.
 10692  // Examples: `create_time = "2019-06-10T16:07:18-07:00" `create_time =
 10693  // 1560208038000` * iam_policy.policy_blob: `=`, `:` * resource_properties:
 10694  // `=`, `:`, `>`, `<`, `>=`, `<=` * security_marks.marks: `=`, `:` *
 10695  // security_center_properties.resource_name: `=`, `:` *
 10696  // security_center_properties.resource_display_name: `=`, `:` *
 10697  // security_center_properties.resource_type: `=`, `:` *
 10698  // security_center_properties.resource_parent: `=`, `:` *
 10699  // security_center_properties.resource_parent_display_name: `=`, `:` *
 10700  // security_center_properties.resource_project: `=`, `:` *
 10701  // security_center_properties.resource_project_display_name: `=`, `:` *
 10702  // security_center_properties.resource_owners: `=`, `:` For example,
 10703  // `resource_properties.size = 100` is a valid filter string. Use a partial
 10704  // match on the empty string to filter based on a property existing:
 10705  // `resource_properties.my_property : "" Use a negated partial match on the
 10706  // empty string to filter based on a property not existing:
 10707  // `-resource_properties.my_property : ""
 10708  func (c *FoldersAssetsListCall) Filter(filter string) *FoldersAssetsListCall {
 10709  	c.urlParams_.Set("filter", filter)
 10710  	return c
 10711  }
 10712  
 10713  // OrderBy sets the optional parameter "orderBy": Expression that defines what
 10714  // fields and order to use for sorting. The string value should follow SQL
 10715  // syntax: comma separated list of fields. For example:
 10716  // "name,resource_properties.a_property". The default sorting order is
 10717  // ascending. To specify descending order for a field, a suffix " desc" should
 10718  // be appended to the field name. For example: "name
 10719  // desc,resource_properties.a_property". Redundant space characters in the
 10720  // syntax are insignificant. "name desc,resource_properties.a_property" and "
 10721  // name desc , resource_properties.a_property " are equivalent. The following
 10722  // fields are supported: name update_time resource_properties
 10723  // security_marks.marks security_center_properties.resource_name
 10724  // security_center_properties.resource_display_name
 10725  // security_center_properties.resource_parent
 10726  // security_center_properties.resource_parent_display_name
 10727  // security_center_properties.resource_project
 10728  // security_center_properties.resource_project_display_name
 10729  // security_center_properties.resource_type
 10730  func (c *FoldersAssetsListCall) OrderBy(orderBy string) *FoldersAssetsListCall {
 10731  	c.urlParams_.Set("orderBy", orderBy)
 10732  	return c
 10733  }
 10734  
 10735  // PageSize sets the optional parameter "pageSize": The maximum number of
 10736  // results to return in a single response. Default is 10, minimum is 1, maximum
 10737  // is 1000.
 10738  func (c *FoldersAssetsListCall) PageSize(pageSize int64) *FoldersAssetsListCall {
 10739  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 10740  	return c
 10741  }
 10742  
 10743  // PageToken sets the optional parameter "pageToken": The value returned by the
 10744  // last `ListAssetsResponse`; indicates that this is a continuation of a prior
 10745  // `ListAssets` call, and that the system should return the next page of data.
 10746  func (c *FoldersAssetsListCall) PageToken(pageToken string) *FoldersAssetsListCall {
 10747  	c.urlParams_.Set("pageToken", pageToken)
 10748  	return c
 10749  }
 10750  
 10751  // ReadTime sets the optional parameter "readTime": Time used as a reference
 10752  // point when filtering assets. The filter is limited to assets existing at the
 10753  // supplied time and their values are those at that specific time. Absence of
 10754  // this field will default to the API's version of NOW.
 10755  func (c *FoldersAssetsListCall) ReadTime(readTime string) *FoldersAssetsListCall {
 10756  	c.urlParams_.Set("readTime", readTime)
 10757  	return c
 10758  }
 10759  
 10760  // Fields allows partial responses to be retrieved. See
 10761  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10762  // details.
 10763  func (c *FoldersAssetsListCall) Fields(s ...googleapi.Field) *FoldersAssetsListCall {
 10764  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10765  	return c
 10766  }
 10767  
 10768  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 10769  // object's ETag matches the given value. This is useful for getting updates
 10770  // only after the object has changed since the last request.
 10771  func (c *FoldersAssetsListCall) IfNoneMatch(entityTag string) *FoldersAssetsListCall {
 10772  	c.ifNoneMatch_ = entityTag
 10773  	return c
 10774  }
 10775  
 10776  // Context sets the context to be used in this call's Do method.
 10777  func (c *FoldersAssetsListCall) Context(ctx context.Context) *FoldersAssetsListCall {
 10778  	c.ctx_ = ctx
 10779  	return c
 10780  }
 10781  
 10782  // Header returns a http.Header that can be modified by the caller to add
 10783  // headers to the request.
 10784  func (c *FoldersAssetsListCall) Header() http.Header {
 10785  	if c.header_ == nil {
 10786  		c.header_ = make(http.Header)
 10787  	}
 10788  	return c.header_
 10789  }
 10790  
 10791  func (c *FoldersAssetsListCall) doRequest(alt string) (*http.Response, error) {
 10792  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 10793  	if c.ifNoneMatch_ != "" {
 10794  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 10795  	}
 10796  	var body io.Reader = nil
 10797  	c.urlParams_.Set("alt", alt)
 10798  	c.urlParams_.Set("prettyPrint", "false")
 10799  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/assets")
 10800  	urls += "?" + c.urlParams_.Encode()
 10801  	req, err := http.NewRequest("GET", urls, body)
 10802  	if err != nil {
 10803  		return nil, err
 10804  	}
 10805  	req.Header = reqHeaders
 10806  	googleapi.Expand(req.URL, map[string]string{
 10807  		"parent": c.parent,
 10808  	})
 10809  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10810  }
 10811  
 10812  // Do executes the "securitycenter.folders.assets.list" call.
 10813  // Any non-2xx status code is an error. Response headers are in either
 10814  // *ListAssetsResponse.ServerResponse.Header or (if a response was returned at
 10815  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 10816  // check whether the returned error was because http.StatusNotModified was
 10817  // returned.
 10818  func (c *FoldersAssetsListCall) Do(opts ...googleapi.CallOption) (*ListAssetsResponse, error) {
 10819  	gensupport.SetOptions(c.urlParams_, opts...)
 10820  	res, err := c.doRequest("json")
 10821  	if res != nil && res.StatusCode == http.StatusNotModified {
 10822  		if res.Body != nil {
 10823  			res.Body.Close()
 10824  		}
 10825  		return nil, gensupport.WrapError(&googleapi.Error{
 10826  			Code:   res.StatusCode,
 10827  			Header: res.Header,
 10828  		})
 10829  	}
 10830  	if err != nil {
 10831  		return nil, err
 10832  	}
 10833  	defer googleapi.CloseBody(res)
 10834  	if err := googleapi.CheckResponse(res); err != nil {
 10835  		return nil, gensupport.WrapError(err)
 10836  	}
 10837  	ret := &ListAssetsResponse{
 10838  		ServerResponse: googleapi.ServerResponse{
 10839  			Header:         res.Header,
 10840  			HTTPStatusCode: res.StatusCode,
 10841  		},
 10842  	}
 10843  	target := &ret
 10844  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10845  		return nil, err
 10846  	}
 10847  	return ret, nil
 10848  }
 10849  
 10850  // Pages invokes f for each page of results.
 10851  // A non-nil error returned from f will halt the iteration.
 10852  // The provided context supersedes any context provided to the Context method.
 10853  func (c *FoldersAssetsListCall) Pages(ctx context.Context, f func(*ListAssetsResponse) error) error {
 10854  	c.ctx_ = ctx
 10855  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 10856  	for {
 10857  		x, err := c.Do()
 10858  		if err != nil {
 10859  			return err
 10860  		}
 10861  		if err := f(x); err != nil {
 10862  			return err
 10863  		}
 10864  		if x.NextPageToken == "" {
 10865  			return nil
 10866  		}
 10867  		c.PageToken(x.NextPageToken)
 10868  	}
 10869  }
 10870  
 10871  type FoldersAssetsUpdateSecurityMarksCall struct {
 10872  	s             *Service
 10873  	name          string
 10874  	securitymarks *SecurityMarks
 10875  	urlParams_    gensupport.URLParams
 10876  	ctx_          context.Context
 10877  	header_       http.Header
 10878  }
 10879  
 10880  // UpdateSecurityMarks: Updates security marks.
 10881  //
 10882  //   - name: The relative resource name of the SecurityMarks. See:
 10883  //     https://cloud.google.com/apis/design/resource_names#relative_resource_name
 10884  //     Examples:
 10885  //     "organizations/{organization_id}/assets/{asset_id}/securityMarks"
 10886  //     "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/
 10887  //     securityMarks".
 10888  func (r *FoldersAssetsService) UpdateSecurityMarks(name string, securitymarks *SecurityMarks) *FoldersAssetsUpdateSecurityMarksCall {
 10889  	c := &FoldersAssetsUpdateSecurityMarksCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10890  	c.name = name
 10891  	c.securitymarks = securitymarks
 10892  	return c
 10893  }
 10894  
 10895  // StartTime sets the optional parameter "startTime": The time at which the
 10896  // updated SecurityMarks take effect. If not set uses current server time.
 10897  // Updates will be applied to the SecurityMarks that are active immediately
 10898  // preceding this time. Must be earlier or equal to the server time.
 10899  func (c *FoldersAssetsUpdateSecurityMarksCall) StartTime(startTime string) *FoldersAssetsUpdateSecurityMarksCall {
 10900  	c.urlParams_.Set("startTime", startTime)
 10901  	return c
 10902  }
 10903  
 10904  // UpdateMask sets the optional parameter "updateMask": The FieldMask to use
 10905  // when updating the security marks resource. The field mask must not contain
 10906  // duplicate fields. If empty or set to "marks", all marks will be replaced.
 10907  // Individual marks can be updated using "marks.".
 10908  func (c *FoldersAssetsUpdateSecurityMarksCall) UpdateMask(updateMask string) *FoldersAssetsUpdateSecurityMarksCall {
 10909  	c.urlParams_.Set("updateMask", updateMask)
 10910  	return c
 10911  }
 10912  
 10913  // Fields allows partial responses to be retrieved. See
 10914  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10915  // details.
 10916  func (c *FoldersAssetsUpdateSecurityMarksCall) Fields(s ...googleapi.Field) *FoldersAssetsUpdateSecurityMarksCall {
 10917  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10918  	return c
 10919  }
 10920  
 10921  // Context sets the context to be used in this call's Do method.
 10922  func (c *FoldersAssetsUpdateSecurityMarksCall) Context(ctx context.Context) *FoldersAssetsUpdateSecurityMarksCall {
 10923  	c.ctx_ = ctx
 10924  	return c
 10925  }
 10926  
 10927  // Header returns a http.Header that can be modified by the caller to add
 10928  // headers to the request.
 10929  func (c *FoldersAssetsUpdateSecurityMarksCall) Header() http.Header {
 10930  	if c.header_ == nil {
 10931  		c.header_ = make(http.Header)
 10932  	}
 10933  	return c.header_
 10934  }
 10935  
 10936  func (c *FoldersAssetsUpdateSecurityMarksCall) doRequest(alt string) (*http.Response, error) {
 10937  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10938  	var body io.Reader = nil
 10939  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.securitymarks)
 10940  	if err != nil {
 10941  		return nil, err
 10942  	}
 10943  	c.urlParams_.Set("alt", alt)
 10944  	c.urlParams_.Set("prettyPrint", "false")
 10945  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 10946  	urls += "?" + c.urlParams_.Encode()
 10947  	req, err := http.NewRequest("PATCH", urls, body)
 10948  	if err != nil {
 10949  		return nil, err
 10950  	}
 10951  	req.Header = reqHeaders
 10952  	googleapi.Expand(req.URL, map[string]string{
 10953  		"name": c.name,
 10954  	})
 10955  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10956  }
 10957  
 10958  // Do executes the "securitycenter.folders.assets.updateSecurityMarks" call.
 10959  // Any non-2xx status code is an error. Response headers are in either
 10960  // *SecurityMarks.ServerResponse.Header or (if a response was returned at all)
 10961  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 10962  // whether the returned error was because http.StatusNotModified was returned.
 10963  func (c *FoldersAssetsUpdateSecurityMarksCall) Do(opts ...googleapi.CallOption) (*SecurityMarks, error) {
 10964  	gensupport.SetOptions(c.urlParams_, opts...)
 10965  	res, err := c.doRequest("json")
 10966  	if res != nil && res.StatusCode == http.StatusNotModified {
 10967  		if res.Body != nil {
 10968  			res.Body.Close()
 10969  		}
 10970  		return nil, gensupport.WrapError(&googleapi.Error{
 10971  			Code:   res.StatusCode,
 10972  			Header: res.Header,
 10973  		})
 10974  	}
 10975  	if err != nil {
 10976  		return nil, err
 10977  	}
 10978  	defer googleapi.CloseBody(res)
 10979  	if err := googleapi.CheckResponse(res); err != nil {
 10980  		return nil, gensupport.WrapError(err)
 10981  	}
 10982  	ret := &SecurityMarks{
 10983  		ServerResponse: googleapi.ServerResponse{
 10984  			Header:         res.Header,
 10985  			HTTPStatusCode: res.StatusCode,
 10986  		},
 10987  	}
 10988  	target := &ret
 10989  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10990  		return nil, err
 10991  	}
 10992  	return ret, nil
 10993  }
 10994  
 10995  type FoldersBigQueryExportsCreateCall struct {
 10996  	s                                         *Service
 10997  	parent                                    string
 10998  	googlecloudsecuritycenterv1bigqueryexport *GoogleCloudSecuritycenterV1BigQueryExport
 10999  	urlParams_                                gensupport.URLParams
 11000  	ctx_                                      context.Context
 11001  	header_                                   http.Header
 11002  }
 11003  
 11004  // Create: Creates a BigQuery export.
 11005  //
 11006  //   - parent: The name of the parent resource of the new BigQuery export. Its
 11007  //     format is "organizations/[organization_id]", "folders/[folder_id]", or
 11008  //     "projects/[project_id]".
 11009  func (r *FoldersBigQueryExportsService) Create(parent string, googlecloudsecuritycenterv1bigqueryexport *GoogleCloudSecuritycenterV1BigQueryExport) *FoldersBigQueryExportsCreateCall {
 11010  	c := &FoldersBigQueryExportsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11011  	c.parent = parent
 11012  	c.googlecloudsecuritycenterv1bigqueryexport = googlecloudsecuritycenterv1bigqueryexport
 11013  	return c
 11014  }
 11015  
 11016  // BigQueryExportId sets the optional parameter "bigQueryExportId": Required.
 11017  // Unique identifier provided by the client within the parent scope. It must
 11018  // consist of only lowercase letters, numbers, and hyphens, must start with a
 11019  // letter, must end with either a letter or a number, and must be 63 characters
 11020  // or less.
 11021  func (c *FoldersBigQueryExportsCreateCall) BigQueryExportId(bigQueryExportId string) *FoldersBigQueryExportsCreateCall {
 11022  	c.urlParams_.Set("bigQueryExportId", bigQueryExportId)
 11023  	return c
 11024  }
 11025  
 11026  // Fields allows partial responses to be retrieved. See
 11027  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11028  // details.
 11029  func (c *FoldersBigQueryExportsCreateCall) Fields(s ...googleapi.Field) *FoldersBigQueryExportsCreateCall {
 11030  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11031  	return c
 11032  }
 11033  
 11034  // Context sets the context to be used in this call's Do method.
 11035  func (c *FoldersBigQueryExportsCreateCall) Context(ctx context.Context) *FoldersBigQueryExportsCreateCall {
 11036  	c.ctx_ = ctx
 11037  	return c
 11038  }
 11039  
 11040  // Header returns a http.Header that can be modified by the caller to add
 11041  // headers to the request.
 11042  func (c *FoldersBigQueryExportsCreateCall) Header() http.Header {
 11043  	if c.header_ == nil {
 11044  		c.header_ = make(http.Header)
 11045  	}
 11046  	return c.header_
 11047  }
 11048  
 11049  func (c *FoldersBigQueryExportsCreateCall) doRequest(alt string) (*http.Response, error) {
 11050  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 11051  	var body io.Reader = nil
 11052  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1bigqueryexport)
 11053  	if err != nil {
 11054  		return nil, err
 11055  	}
 11056  	c.urlParams_.Set("alt", alt)
 11057  	c.urlParams_.Set("prettyPrint", "false")
 11058  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/bigQueryExports")
 11059  	urls += "?" + c.urlParams_.Encode()
 11060  	req, err := http.NewRequest("POST", urls, body)
 11061  	if err != nil {
 11062  		return nil, err
 11063  	}
 11064  	req.Header = reqHeaders
 11065  	googleapi.Expand(req.URL, map[string]string{
 11066  		"parent": c.parent,
 11067  	})
 11068  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11069  }
 11070  
 11071  // Do executes the "securitycenter.folders.bigQueryExports.create" call.
 11072  // Any non-2xx status code is an error. Response headers are in either
 11073  // *GoogleCloudSecuritycenterV1BigQueryExport.ServerResponse.Header or (if a
 11074  // response was returned at all) in error.(*googleapi.Error).Header. Use
 11075  // googleapi.IsNotModified to check whether the returned error was because
 11076  // http.StatusNotModified was returned.
 11077  func (c *FoldersBigQueryExportsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1BigQueryExport, error) {
 11078  	gensupport.SetOptions(c.urlParams_, opts...)
 11079  	res, err := c.doRequest("json")
 11080  	if res != nil && res.StatusCode == http.StatusNotModified {
 11081  		if res.Body != nil {
 11082  			res.Body.Close()
 11083  		}
 11084  		return nil, gensupport.WrapError(&googleapi.Error{
 11085  			Code:   res.StatusCode,
 11086  			Header: res.Header,
 11087  		})
 11088  	}
 11089  	if err != nil {
 11090  		return nil, err
 11091  	}
 11092  	defer googleapi.CloseBody(res)
 11093  	if err := googleapi.CheckResponse(res); err != nil {
 11094  		return nil, gensupport.WrapError(err)
 11095  	}
 11096  	ret := &GoogleCloudSecuritycenterV1BigQueryExport{
 11097  		ServerResponse: googleapi.ServerResponse{
 11098  			Header:         res.Header,
 11099  			HTTPStatusCode: res.StatusCode,
 11100  		},
 11101  	}
 11102  	target := &ret
 11103  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11104  		return nil, err
 11105  	}
 11106  	return ret, nil
 11107  }
 11108  
 11109  type FoldersBigQueryExportsDeleteCall struct {
 11110  	s          *Service
 11111  	name       string
 11112  	urlParams_ gensupport.URLParams
 11113  	ctx_       context.Context
 11114  	header_    http.Header
 11115  }
 11116  
 11117  // Delete: Deletes an existing BigQuery export.
 11118  //
 11119  //   - name: The name of the BigQuery export to delete. Its format is
 11120  //     organizations/{organization}/bigQueryExports/{export_id},
 11121  //     folders/{folder}/bigQueryExports/{export_id}, or
 11122  //     projects/{project}/bigQueryExports/{export_id}.
 11123  func (r *FoldersBigQueryExportsService) Delete(name string) *FoldersBigQueryExportsDeleteCall {
 11124  	c := &FoldersBigQueryExportsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11125  	c.name = name
 11126  	return c
 11127  }
 11128  
 11129  // Fields allows partial responses to be retrieved. See
 11130  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11131  // details.
 11132  func (c *FoldersBigQueryExportsDeleteCall) Fields(s ...googleapi.Field) *FoldersBigQueryExportsDeleteCall {
 11133  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11134  	return c
 11135  }
 11136  
 11137  // Context sets the context to be used in this call's Do method.
 11138  func (c *FoldersBigQueryExportsDeleteCall) Context(ctx context.Context) *FoldersBigQueryExportsDeleteCall {
 11139  	c.ctx_ = ctx
 11140  	return c
 11141  }
 11142  
 11143  // Header returns a http.Header that can be modified by the caller to add
 11144  // headers to the request.
 11145  func (c *FoldersBigQueryExportsDeleteCall) Header() http.Header {
 11146  	if c.header_ == nil {
 11147  		c.header_ = make(http.Header)
 11148  	}
 11149  	return c.header_
 11150  }
 11151  
 11152  func (c *FoldersBigQueryExportsDeleteCall) doRequest(alt string) (*http.Response, error) {
 11153  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11154  	var body io.Reader = nil
 11155  	c.urlParams_.Set("alt", alt)
 11156  	c.urlParams_.Set("prettyPrint", "false")
 11157  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 11158  	urls += "?" + c.urlParams_.Encode()
 11159  	req, err := http.NewRequest("DELETE", urls, body)
 11160  	if err != nil {
 11161  		return nil, err
 11162  	}
 11163  	req.Header = reqHeaders
 11164  	googleapi.Expand(req.URL, map[string]string{
 11165  		"name": c.name,
 11166  	})
 11167  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11168  }
 11169  
 11170  // Do executes the "securitycenter.folders.bigQueryExports.delete" call.
 11171  // Any non-2xx status code is an error. Response headers are in either
 11172  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 11173  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 11174  // whether the returned error was because http.StatusNotModified was returned.
 11175  func (c *FoldersBigQueryExportsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 11176  	gensupport.SetOptions(c.urlParams_, opts...)
 11177  	res, err := c.doRequest("json")
 11178  	if res != nil && res.StatusCode == http.StatusNotModified {
 11179  		if res.Body != nil {
 11180  			res.Body.Close()
 11181  		}
 11182  		return nil, gensupport.WrapError(&googleapi.Error{
 11183  			Code:   res.StatusCode,
 11184  			Header: res.Header,
 11185  		})
 11186  	}
 11187  	if err != nil {
 11188  		return nil, err
 11189  	}
 11190  	defer googleapi.CloseBody(res)
 11191  	if err := googleapi.CheckResponse(res); err != nil {
 11192  		return nil, gensupport.WrapError(err)
 11193  	}
 11194  	ret := &Empty{
 11195  		ServerResponse: googleapi.ServerResponse{
 11196  			Header:         res.Header,
 11197  			HTTPStatusCode: res.StatusCode,
 11198  		},
 11199  	}
 11200  	target := &ret
 11201  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11202  		return nil, err
 11203  	}
 11204  	return ret, nil
 11205  }
 11206  
 11207  type FoldersBigQueryExportsGetCall struct {
 11208  	s            *Service
 11209  	name         string
 11210  	urlParams_   gensupport.URLParams
 11211  	ifNoneMatch_ string
 11212  	ctx_         context.Context
 11213  	header_      http.Header
 11214  }
 11215  
 11216  // Get: Gets a BigQuery export.
 11217  //
 11218  //   - name: Name of the BigQuery export to retrieve. Its format is
 11219  //     organizations/{organization}/bigQueryExports/{export_id},
 11220  //     folders/{folder}/bigQueryExports/{export_id}, or
 11221  //     projects/{project}/bigQueryExports/{export_id}.
 11222  func (r *FoldersBigQueryExportsService) Get(name string) *FoldersBigQueryExportsGetCall {
 11223  	c := &FoldersBigQueryExportsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11224  	c.name = name
 11225  	return c
 11226  }
 11227  
 11228  // Fields allows partial responses to be retrieved. See
 11229  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11230  // details.
 11231  func (c *FoldersBigQueryExportsGetCall) Fields(s ...googleapi.Field) *FoldersBigQueryExportsGetCall {
 11232  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11233  	return c
 11234  }
 11235  
 11236  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 11237  // object's ETag matches the given value. This is useful for getting updates
 11238  // only after the object has changed since the last request.
 11239  func (c *FoldersBigQueryExportsGetCall) IfNoneMatch(entityTag string) *FoldersBigQueryExportsGetCall {
 11240  	c.ifNoneMatch_ = entityTag
 11241  	return c
 11242  }
 11243  
 11244  // Context sets the context to be used in this call's Do method.
 11245  func (c *FoldersBigQueryExportsGetCall) Context(ctx context.Context) *FoldersBigQueryExportsGetCall {
 11246  	c.ctx_ = ctx
 11247  	return c
 11248  }
 11249  
 11250  // Header returns a http.Header that can be modified by the caller to add
 11251  // headers to the request.
 11252  func (c *FoldersBigQueryExportsGetCall) Header() http.Header {
 11253  	if c.header_ == nil {
 11254  		c.header_ = make(http.Header)
 11255  	}
 11256  	return c.header_
 11257  }
 11258  
 11259  func (c *FoldersBigQueryExportsGetCall) doRequest(alt string) (*http.Response, error) {
 11260  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11261  	if c.ifNoneMatch_ != "" {
 11262  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 11263  	}
 11264  	var body io.Reader = nil
 11265  	c.urlParams_.Set("alt", alt)
 11266  	c.urlParams_.Set("prettyPrint", "false")
 11267  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 11268  	urls += "?" + c.urlParams_.Encode()
 11269  	req, err := http.NewRequest("GET", urls, body)
 11270  	if err != nil {
 11271  		return nil, err
 11272  	}
 11273  	req.Header = reqHeaders
 11274  	googleapi.Expand(req.URL, map[string]string{
 11275  		"name": c.name,
 11276  	})
 11277  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11278  }
 11279  
 11280  // Do executes the "securitycenter.folders.bigQueryExports.get" call.
 11281  // Any non-2xx status code is an error. Response headers are in either
 11282  // *GoogleCloudSecuritycenterV1BigQueryExport.ServerResponse.Header or (if a
 11283  // response was returned at all) in error.(*googleapi.Error).Header. Use
 11284  // googleapi.IsNotModified to check whether the returned error was because
 11285  // http.StatusNotModified was returned.
 11286  func (c *FoldersBigQueryExportsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1BigQueryExport, error) {
 11287  	gensupport.SetOptions(c.urlParams_, opts...)
 11288  	res, err := c.doRequest("json")
 11289  	if res != nil && res.StatusCode == http.StatusNotModified {
 11290  		if res.Body != nil {
 11291  			res.Body.Close()
 11292  		}
 11293  		return nil, gensupport.WrapError(&googleapi.Error{
 11294  			Code:   res.StatusCode,
 11295  			Header: res.Header,
 11296  		})
 11297  	}
 11298  	if err != nil {
 11299  		return nil, err
 11300  	}
 11301  	defer googleapi.CloseBody(res)
 11302  	if err := googleapi.CheckResponse(res); err != nil {
 11303  		return nil, gensupport.WrapError(err)
 11304  	}
 11305  	ret := &GoogleCloudSecuritycenterV1BigQueryExport{
 11306  		ServerResponse: googleapi.ServerResponse{
 11307  			Header:         res.Header,
 11308  			HTTPStatusCode: res.StatusCode,
 11309  		},
 11310  	}
 11311  	target := &ret
 11312  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11313  		return nil, err
 11314  	}
 11315  	return ret, nil
 11316  }
 11317  
 11318  type FoldersBigQueryExportsListCall struct {
 11319  	s            *Service
 11320  	parent       string
 11321  	urlParams_   gensupport.URLParams
 11322  	ifNoneMatch_ string
 11323  	ctx_         context.Context
 11324  	header_      http.Header
 11325  }
 11326  
 11327  // List: Lists BigQuery exports. Note that when requesting BigQuery exports at
 11328  // a given level all exports under that level are also returned e.g. if
 11329  // requesting BigQuery exports under a folder, then all BigQuery exports
 11330  // immediately under the folder plus the ones created under the projects within
 11331  // the folder are returned.
 11332  //
 11333  //   - parent: The parent, which owns the collection of BigQuery exports. Its
 11334  //     format is "organizations/[organization_id]", "folders/[folder_id]",
 11335  //     "projects/[project_id]".
 11336  func (r *FoldersBigQueryExportsService) List(parent string) *FoldersBigQueryExportsListCall {
 11337  	c := &FoldersBigQueryExportsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11338  	c.parent = parent
 11339  	return c
 11340  }
 11341  
 11342  // PageSize sets the optional parameter "pageSize": The maximum number of
 11343  // configs to return. The service may return fewer than this value. If
 11344  // unspecified, at most 10 configs will be returned. The maximum value is 1000;
 11345  // values above 1000 will be coerced to 1000.
 11346  func (c *FoldersBigQueryExportsListCall) PageSize(pageSize int64) *FoldersBigQueryExportsListCall {
 11347  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 11348  	return c
 11349  }
 11350  
 11351  // PageToken sets the optional parameter "pageToken": A page token, received
 11352  // from a previous `ListBigQueryExports` call. Provide this to retrieve the
 11353  // subsequent page. When paginating, all other parameters provided to
 11354  // `ListBigQueryExports` must match the call that provided the page token.
 11355  func (c *FoldersBigQueryExportsListCall) PageToken(pageToken string) *FoldersBigQueryExportsListCall {
 11356  	c.urlParams_.Set("pageToken", pageToken)
 11357  	return c
 11358  }
 11359  
 11360  // Fields allows partial responses to be retrieved. See
 11361  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11362  // details.
 11363  func (c *FoldersBigQueryExportsListCall) Fields(s ...googleapi.Field) *FoldersBigQueryExportsListCall {
 11364  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11365  	return c
 11366  }
 11367  
 11368  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 11369  // object's ETag matches the given value. This is useful for getting updates
 11370  // only after the object has changed since the last request.
 11371  func (c *FoldersBigQueryExportsListCall) IfNoneMatch(entityTag string) *FoldersBigQueryExportsListCall {
 11372  	c.ifNoneMatch_ = entityTag
 11373  	return c
 11374  }
 11375  
 11376  // Context sets the context to be used in this call's Do method.
 11377  func (c *FoldersBigQueryExportsListCall) Context(ctx context.Context) *FoldersBigQueryExportsListCall {
 11378  	c.ctx_ = ctx
 11379  	return c
 11380  }
 11381  
 11382  // Header returns a http.Header that can be modified by the caller to add
 11383  // headers to the request.
 11384  func (c *FoldersBigQueryExportsListCall) Header() http.Header {
 11385  	if c.header_ == nil {
 11386  		c.header_ = make(http.Header)
 11387  	}
 11388  	return c.header_
 11389  }
 11390  
 11391  func (c *FoldersBigQueryExportsListCall) doRequest(alt string) (*http.Response, error) {
 11392  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11393  	if c.ifNoneMatch_ != "" {
 11394  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 11395  	}
 11396  	var body io.Reader = nil
 11397  	c.urlParams_.Set("alt", alt)
 11398  	c.urlParams_.Set("prettyPrint", "false")
 11399  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/bigQueryExports")
 11400  	urls += "?" + c.urlParams_.Encode()
 11401  	req, err := http.NewRequest("GET", urls, body)
 11402  	if err != nil {
 11403  		return nil, err
 11404  	}
 11405  	req.Header = reqHeaders
 11406  	googleapi.Expand(req.URL, map[string]string{
 11407  		"parent": c.parent,
 11408  	})
 11409  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11410  }
 11411  
 11412  // Do executes the "securitycenter.folders.bigQueryExports.list" call.
 11413  // Any non-2xx status code is an error. Response headers are in either
 11414  // *ListBigQueryExportsResponse.ServerResponse.Header or (if a response was
 11415  // returned at all) in error.(*googleapi.Error).Header. Use
 11416  // googleapi.IsNotModified to check whether the returned error was because
 11417  // http.StatusNotModified was returned.
 11418  func (c *FoldersBigQueryExportsListCall) Do(opts ...googleapi.CallOption) (*ListBigQueryExportsResponse, error) {
 11419  	gensupport.SetOptions(c.urlParams_, opts...)
 11420  	res, err := c.doRequest("json")
 11421  	if res != nil && res.StatusCode == http.StatusNotModified {
 11422  		if res.Body != nil {
 11423  			res.Body.Close()
 11424  		}
 11425  		return nil, gensupport.WrapError(&googleapi.Error{
 11426  			Code:   res.StatusCode,
 11427  			Header: res.Header,
 11428  		})
 11429  	}
 11430  	if err != nil {
 11431  		return nil, err
 11432  	}
 11433  	defer googleapi.CloseBody(res)
 11434  	if err := googleapi.CheckResponse(res); err != nil {
 11435  		return nil, gensupport.WrapError(err)
 11436  	}
 11437  	ret := &ListBigQueryExportsResponse{
 11438  		ServerResponse: googleapi.ServerResponse{
 11439  			Header:         res.Header,
 11440  			HTTPStatusCode: res.StatusCode,
 11441  		},
 11442  	}
 11443  	target := &ret
 11444  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11445  		return nil, err
 11446  	}
 11447  	return ret, nil
 11448  }
 11449  
 11450  // Pages invokes f for each page of results.
 11451  // A non-nil error returned from f will halt the iteration.
 11452  // The provided context supersedes any context provided to the Context method.
 11453  func (c *FoldersBigQueryExportsListCall) Pages(ctx context.Context, f func(*ListBigQueryExportsResponse) error) error {
 11454  	c.ctx_ = ctx
 11455  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 11456  	for {
 11457  		x, err := c.Do()
 11458  		if err != nil {
 11459  			return err
 11460  		}
 11461  		if err := f(x); err != nil {
 11462  			return err
 11463  		}
 11464  		if x.NextPageToken == "" {
 11465  			return nil
 11466  		}
 11467  		c.PageToken(x.NextPageToken)
 11468  	}
 11469  }
 11470  
 11471  type FoldersBigQueryExportsPatchCall struct {
 11472  	s                                         *Service
 11473  	name                                      string
 11474  	googlecloudsecuritycenterv1bigqueryexport *GoogleCloudSecuritycenterV1BigQueryExport
 11475  	urlParams_                                gensupport.URLParams
 11476  	ctx_                                      context.Context
 11477  	header_                                   http.Header
 11478  }
 11479  
 11480  // Patch: Updates a BigQuery export.
 11481  //
 11482  //   - name: The relative resource name of this export. See:
 11483  //     https://cloud.google.com/apis/design/resource_names#relative_resource_name.
 11484  //     Example format:
 11485  //     "organizations/{organization_id}/bigQueryExports/{export_id}" Example
 11486  //     format: "folders/{folder_id}/bigQueryExports/{export_id}" Example format:
 11487  //     "projects/{project_id}/bigQueryExports/{export_id}" This field is provided
 11488  //     in responses, and is ignored when provided in create requests.
 11489  func (r *FoldersBigQueryExportsService) Patch(name string, googlecloudsecuritycenterv1bigqueryexport *GoogleCloudSecuritycenterV1BigQueryExport) *FoldersBigQueryExportsPatchCall {
 11490  	c := &FoldersBigQueryExportsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11491  	c.name = name
 11492  	c.googlecloudsecuritycenterv1bigqueryexport = googlecloudsecuritycenterv1bigqueryexport
 11493  	return c
 11494  }
 11495  
 11496  // UpdateMask sets the optional parameter "updateMask": The list of fields to
 11497  // be updated. If empty all mutable fields will be updated.
 11498  func (c *FoldersBigQueryExportsPatchCall) UpdateMask(updateMask string) *FoldersBigQueryExportsPatchCall {
 11499  	c.urlParams_.Set("updateMask", updateMask)
 11500  	return c
 11501  }
 11502  
 11503  // Fields allows partial responses to be retrieved. See
 11504  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11505  // details.
 11506  func (c *FoldersBigQueryExportsPatchCall) Fields(s ...googleapi.Field) *FoldersBigQueryExportsPatchCall {
 11507  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11508  	return c
 11509  }
 11510  
 11511  // Context sets the context to be used in this call's Do method.
 11512  func (c *FoldersBigQueryExportsPatchCall) Context(ctx context.Context) *FoldersBigQueryExportsPatchCall {
 11513  	c.ctx_ = ctx
 11514  	return c
 11515  }
 11516  
 11517  // Header returns a http.Header that can be modified by the caller to add
 11518  // headers to the request.
 11519  func (c *FoldersBigQueryExportsPatchCall) Header() http.Header {
 11520  	if c.header_ == nil {
 11521  		c.header_ = make(http.Header)
 11522  	}
 11523  	return c.header_
 11524  }
 11525  
 11526  func (c *FoldersBigQueryExportsPatchCall) doRequest(alt string) (*http.Response, error) {
 11527  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 11528  	var body io.Reader = nil
 11529  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1bigqueryexport)
 11530  	if err != nil {
 11531  		return nil, err
 11532  	}
 11533  	c.urlParams_.Set("alt", alt)
 11534  	c.urlParams_.Set("prettyPrint", "false")
 11535  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 11536  	urls += "?" + c.urlParams_.Encode()
 11537  	req, err := http.NewRequest("PATCH", urls, body)
 11538  	if err != nil {
 11539  		return nil, err
 11540  	}
 11541  	req.Header = reqHeaders
 11542  	googleapi.Expand(req.URL, map[string]string{
 11543  		"name": c.name,
 11544  	})
 11545  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11546  }
 11547  
 11548  // Do executes the "securitycenter.folders.bigQueryExports.patch" call.
 11549  // Any non-2xx status code is an error. Response headers are in either
 11550  // *GoogleCloudSecuritycenterV1BigQueryExport.ServerResponse.Header or (if a
 11551  // response was returned at all) in error.(*googleapi.Error).Header. Use
 11552  // googleapi.IsNotModified to check whether the returned error was because
 11553  // http.StatusNotModified was returned.
 11554  func (c *FoldersBigQueryExportsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1BigQueryExport, error) {
 11555  	gensupport.SetOptions(c.urlParams_, opts...)
 11556  	res, err := c.doRequest("json")
 11557  	if res != nil && res.StatusCode == http.StatusNotModified {
 11558  		if res.Body != nil {
 11559  			res.Body.Close()
 11560  		}
 11561  		return nil, gensupport.WrapError(&googleapi.Error{
 11562  			Code:   res.StatusCode,
 11563  			Header: res.Header,
 11564  		})
 11565  	}
 11566  	if err != nil {
 11567  		return nil, err
 11568  	}
 11569  	defer googleapi.CloseBody(res)
 11570  	if err := googleapi.CheckResponse(res); err != nil {
 11571  		return nil, gensupport.WrapError(err)
 11572  	}
 11573  	ret := &GoogleCloudSecuritycenterV1BigQueryExport{
 11574  		ServerResponse: googleapi.ServerResponse{
 11575  			Header:         res.Header,
 11576  			HTTPStatusCode: res.StatusCode,
 11577  		},
 11578  	}
 11579  	target := &ret
 11580  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11581  		return nil, err
 11582  	}
 11583  	return ret, nil
 11584  }
 11585  
 11586  type FoldersEventThreatDetectionSettingsValidateCustomModuleCall struct {
 11587  	s                                               *Service
 11588  	parent                                          string
 11589  	validateeventthreatdetectioncustommodulerequest *ValidateEventThreatDetectionCustomModuleRequest
 11590  	urlParams_                                      gensupport.URLParams
 11591  	ctx_                                            context.Context
 11592  	header_                                         http.Header
 11593  }
 11594  
 11595  // ValidateCustomModule: Validates the given Event Threat Detection custom
 11596  // module.
 11597  //
 11598  //   - parent: Resource name of the parent to validate the Custom Module under.
 11599  //     Its format is: *
 11600  //     "organizations/{organization}/eventThreatDetectionSettings". *
 11601  //     "folders/{folder}/eventThreatDetectionSettings". *
 11602  //     "projects/{project}/eventThreatDetectionSettings".
 11603  func (r *FoldersEventThreatDetectionSettingsService) ValidateCustomModule(parent string, validateeventthreatdetectioncustommodulerequest *ValidateEventThreatDetectionCustomModuleRequest) *FoldersEventThreatDetectionSettingsValidateCustomModuleCall {
 11604  	c := &FoldersEventThreatDetectionSettingsValidateCustomModuleCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11605  	c.parent = parent
 11606  	c.validateeventthreatdetectioncustommodulerequest = validateeventthreatdetectioncustommodulerequest
 11607  	return c
 11608  }
 11609  
 11610  // Fields allows partial responses to be retrieved. See
 11611  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11612  // details.
 11613  func (c *FoldersEventThreatDetectionSettingsValidateCustomModuleCall) Fields(s ...googleapi.Field) *FoldersEventThreatDetectionSettingsValidateCustomModuleCall {
 11614  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11615  	return c
 11616  }
 11617  
 11618  // Context sets the context to be used in this call's Do method.
 11619  func (c *FoldersEventThreatDetectionSettingsValidateCustomModuleCall) Context(ctx context.Context) *FoldersEventThreatDetectionSettingsValidateCustomModuleCall {
 11620  	c.ctx_ = ctx
 11621  	return c
 11622  }
 11623  
 11624  // Header returns a http.Header that can be modified by the caller to add
 11625  // headers to the request.
 11626  func (c *FoldersEventThreatDetectionSettingsValidateCustomModuleCall) Header() http.Header {
 11627  	if c.header_ == nil {
 11628  		c.header_ = make(http.Header)
 11629  	}
 11630  	return c.header_
 11631  }
 11632  
 11633  func (c *FoldersEventThreatDetectionSettingsValidateCustomModuleCall) doRequest(alt string) (*http.Response, error) {
 11634  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 11635  	var body io.Reader = nil
 11636  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.validateeventthreatdetectioncustommodulerequest)
 11637  	if err != nil {
 11638  		return nil, err
 11639  	}
 11640  	c.urlParams_.Set("alt", alt)
 11641  	c.urlParams_.Set("prettyPrint", "false")
 11642  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}:validateCustomModule")
 11643  	urls += "?" + c.urlParams_.Encode()
 11644  	req, err := http.NewRequest("POST", urls, body)
 11645  	if err != nil {
 11646  		return nil, err
 11647  	}
 11648  	req.Header = reqHeaders
 11649  	googleapi.Expand(req.URL, map[string]string{
 11650  		"parent": c.parent,
 11651  	})
 11652  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11653  }
 11654  
 11655  // Do executes the "securitycenter.folders.eventThreatDetectionSettings.validateCustomModule" call.
 11656  // Any non-2xx status code is an error. Response headers are in either
 11657  // *ValidateEventThreatDetectionCustomModuleResponse.ServerResponse.Header or
 11658  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
 11659  // googleapi.IsNotModified to check whether the returned error was because
 11660  // http.StatusNotModified was returned.
 11661  func (c *FoldersEventThreatDetectionSettingsValidateCustomModuleCall) Do(opts ...googleapi.CallOption) (*ValidateEventThreatDetectionCustomModuleResponse, error) {
 11662  	gensupport.SetOptions(c.urlParams_, opts...)
 11663  	res, err := c.doRequest("json")
 11664  	if res != nil && res.StatusCode == http.StatusNotModified {
 11665  		if res.Body != nil {
 11666  			res.Body.Close()
 11667  		}
 11668  		return nil, gensupport.WrapError(&googleapi.Error{
 11669  			Code:   res.StatusCode,
 11670  			Header: res.Header,
 11671  		})
 11672  	}
 11673  	if err != nil {
 11674  		return nil, err
 11675  	}
 11676  	defer googleapi.CloseBody(res)
 11677  	if err := googleapi.CheckResponse(res); err != nil {
 11678  		return nil, gensupport.WrapError(err)
 11679  	}
 11680  	ret := &ValidateEventThreatDetectionCustomModuleResponse{
 11681  		ServerResponse: googleapi.ServerResponse{
 11682  			Header:         res.Header,
 11683  			HTTPStatusCode: res.StatusCode,
 11684  		},
 11685  	}
 11686  	target := &ret
 11687  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11688  		return nil, err
 11689  	}
 11690  	return ret, nil
 11691  }
 11692  
 11693  type FoldersEventThreatDetectionSettingsCustomModulesCreateCall struct {
 11694  	s                                *Service
 11695  	parent                           string
 11696  	eventthreatdetectioncustommodule *EventThreatDetectionCustomModule
 11697  	urlParams_                       gensupport.URLParams
 11698  	ctx_                             context.Context
 11699  	header_                          http.Header
 11700  }
 11701  
 11702  // Create: Creates a resident Event Threat Detection custom module at the scope
 11703  // of the given Resource Manager parent, and also creates inherited custom
 11704  // modules for all descendants of the given parent. These modules are enabled
 11705  // by default.
 11706  //
 11707  //   - parent: The new custom module's parent. Its format is: *
 11708  //     "organizations/{organization}/eventThreatDetectionSettings". *
 11709  //     "folders/{folder}/eventThreatDetectionSettings". *
 11710  //     "projects/{project}/eventThreatDetectionSettings".
 11711  func (r *FoldersEventThreatDetectionSettingsCustomModulesService) Create(parent string, eventthreatdetectioncustommodule *EventThreatDetectionCustomModule) *FoldersEventThreatDetectionSettingsCustomModulesCreateCall {
 11712  	c := &FoldersEventThreatDetectionSettingsCustomModulesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11713  	c.parent = parent
 11714  	c.eventthreatdetectioncustommodule = eventthreatdetectioncustommodule
 11715  	return c
 11716  }
 11717  
 11718  // Fields allows partial responses to be retrieved. See
 11719  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11720  // details.
 11721  func (c *FoldersEventThreatDetectionSettingsCustomModulesCreateCall) Fields(s ...googleapi.Field) *FoldersEventThreatDetectionSettingsCustomModulesCreateCall {
 11722  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11723  	return c
 11724  }
 11725  
 11726  // Context sets the context to be used in this call's Do method.
 11727  func (c *FoldersEventThreatDetectionSettingsCustomModulesCreateCall) Context(ctx context.Context) *FoldersEventThreatDetectionSettingsCustomModulesCreateCall {
 11728  	c.ctx_ = ctx
 11729  	return c
 11730  }
 11731  
 11732  // Header returns a http.Header that can be modified by the caller to add
 11733  // headers to the request.
 11734  func (c *FoldersEventThreatDetectionSettingsCustomModulesCreateCall) Header() http.Header {
 11735  	if c.header_ == nil {
 11736  		c.header_ = make(http.Header)
 11737  	}
 11738  	return c.header_
 11739  }
 11740  
 11741  func (c *FoldersEventThreatDetectionSettingsCustomModulesCreateCall) doRequest(alt string) (*http.Response, error) {
 11742  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 11743  	var body io.Reader = nil
 11744  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.eventthreatdetectioncustommodule)
 11745  	if err != nil {
 11746  		return nil, err
 11747  	}
 11748  	c.urlParams_.Set("alt", alt)
 11749  	c.urlParams_.Set("prettyPrint", "false")
 11750  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules")
 11751  	urls += "?" + c.urlParams_.Encode()
 11752  	req, err := http.NewRequest("POST", urls, body)
 11753  	if err != nil {
 11754  		return nil, err
 11755  	}
 11756  	req.Header = reqHeaders
 11757  	googleapi.Expand(req.URL, map[string]string{
 11758  		"parent": c.parent,
 11759  	})
 11760  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11761  }
 11762  
 11763  // Do executes the "securitycenter.folders.eventThreatDetectionSettings.customModules.create" call.
 11764  // Any non-2xx status code is an error. Response headers are in either
 11765  // *EventThreatDetectionCustomModule.ServerResponse.Header or (if a response
 11766  // was returned at all) in error.(*googleapi.Error).Header. Use
 11767  // googleapi.IsNotModified to check whether the returned error was because
 11768  // http.StatusNotModified was returned.
 11769  func (c *FoldersEventThreatDetectionSettingsCustomModulesCreateCall) Do(opts ...googleapi.CallOption) (*EventThreatDetectionCustomModule, error) {
 11770  	gensupport.SetOptions(c.urlParams_, opts...)
 11771  	res, err := c.doRequest("json")
 11772  	if res != nil && res.StatusCode == http.StatusNotModified {
 11773  		if res.Body != nil {
 11774  			res.Body.Close()
 11775  		}
 11776  		return nil, gensupport.WrapError(&googleapi.Error{
 11777  			Code:   res.StatusCode,
 11778  			Header: res.Header,
 11779  		})
 11780  	}
 11781  	if err != nil {
 11782  		return nil, err
 11783  	}
 11784  	defer googleapi.CloseBody(res)
 11785  	if err := googleapi.CheckResponse(res); err != nil {
 11786  		return nil, gensupport.WrapError(err)
 11787  	}
 11788  	ret := &EventThreatDetectionCustomModule{
 11789  		ServerResponse: googleapi.ServerResponse{
 11790  			Header:         res.Header,
 11791  			HTTPStatusCode: res.StatusCode,
 11792  		},
 11793  	}
 11794  	target := &ret
 11795  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11796  		return nil, err
 11797  	}
 11798  	return ret, nil
 11799  }
 11800  
 11801  type FoldersEventThreatDetectionSettingsCustomModulesDeleteCall struct {
 11802  	s          *Service
 11803  	name       string
 11804  	urlParams_ gensupport.URLParams
 11805  	ctx_       context.Context
 11806  	header_    http.Header
 11807  }
 11808  
 11809  // Delete: Deletes the specified Event Threat Detection custom module and all
 11810  // of its descendants in the Resource Manager hierarchy. This method is only
 11811  // supported for resident custom modules.
 11812  //
 11813  //   - name: Name of the custom module to delete. Its format is: *
 11814  //     "organizations/{organization}/eventThreatDetectionSettings/customModules/{m
 11815  //     odule}". *
 11816  //     "folders/{folder}/eventThreatDetectionSettings/customModules/{module}". *
 11817  //     "projects/{project}/eventThreatDetectionSettings/customModules/{module}".
 11818  func (r *FoldersEventThreatDetectionSettingsCustomModulesService) Delete(name string) *FoldersEventThreatDetectionSettingsCustomModulesDeleteCall {
 11819  	c := &FoldersEventThreatDetectionSettingsCustomModulesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11820  	c.name = name
 11821  	return c
 11822  }
 11823  
 11824  // Fields allows partial responses to be retrieved. See
 11825  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11826  // details.
 11827  func (c *FoldersEventThreatDetectionSettingsCustomModulesDeleteCall) Fields(s ...googleapi.Field) *FoldersEventThreatDetectionSettingsCustomModulesDeleteCall {
 11828  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11829  	return c
 11830  }
 11831  
 11832  // Context sets the context to be used in this call's Do method.
 11833  func (c *FoldersEventThreatDetectionSettingsCustomModulesDeleteCall) Context(ctx context.Context) *FoldersEventThreatDetectionSettingsCustomModulesDeleteCall {
 11834  	c.ctx_ = ctx
 11835  	return c
 11836  }
 11837  
 11838  // Header returns a http.Header that can be modified by the caller to add
 11839  // headers to the request.
 11840  func (c *FoldersEventThreatDetectionSettingsCustomModulesDeleteCall) Header() http.Header {
 11841  	if c.header_ == nil {
 11842  		c.header_ = make(http.Header)
 11843  	}
 11844  	return c.header_
 11845  }
 11846  
 11847  func (c *FoldersEventThreatDetectionSettingsCustomModulesDeleteCall) doRequest(alt string) (*http.Response, error) {
 11848  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11849  	var body io.Reader = nil
 11850  	c.urlParams_.Set("alt", alt)
 11851  	c.urlParams_.Set("prettyPrint", "false")
 11852  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 11853  	urls += "?" + c.urlParams_.Encode()
 11854  	req, err := http.NewRequest("DELETE", urls, body)
 11855  	if err != nil {
 11856  		return nil, err
 11857  	}
 11858  	req.Header = reqHeaders
 11859  	googleapi.Expand(req.URL, map[string]string{
 11860  		"name": c.name,
 11861  	})
 11862  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11863  }
 11864  
 11865  // Do executes the "securitycenter.folders.eventThreatDetectionSettings.customModules.delete" call.
 11866  // Any non-2xx status code is an error. Response headers are in either
 11867  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 11868  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 11869  // whether the returned error was because http.StatusNotModified was returned.
 11870  func (c *FoldersEventThreatDetectionSettingsCustomModulesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 11871  	gensupport.SetOptions(c.urlParams_, opts...)
 11872  	res, err := c.doRequest("json")
 11873  	if res != nil && res.StatusCode == http.StatusNotModified {
 11874  		if res.Body != nil {
 11875  			res.Body.Close()
 11876  		}
 11877  		return nil, gensupport.WrapError(&googleapi.Error{
 11878  			Code:   res.StatusCode,
 11879  			Header: res.Header,
 11880  		})
 11881  	}
 11882  	if err != nil {
 11883  		return nil, err
 11884  	}
 11885  	defer googleapi.CloseBody(res)
 11886  	if err := googleapi.CheckResponse(res); err != nil {
 11887  		return nil, gensupport.WrapError(err)
 11888  	}
 11889  	ret := &Empty{
 11890  		ServerResponse: googleapi.ServerResponse{
 11891  			Header:         res.Header,
 11892  			HTTPStatusCode: res.StatusCode,
 11893  		},
 11894  	}
 11895  	target := &ret
 11896  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11897  		return nil, err
 11898  	}
 11899  	return ret, nil
 11900  }
 11901  
 11902  type FoldersEventThreatDetectionSettingsCustomModulesGetCall struct {
 11903  	s            *Service
 11904  	name         string
 11905  	urlParams_   gensupport.URLParams
 11906  	ifNoneMatch_ string
 11907  	ctx_         context.Context
 11908  	header_      http.Header
 11909  }
 11910  
 11911  // Get: Gets an Event Threat Detection custom module.
 11912  //
 11913  //   - name: Name of the custom module to get. Its format is: *
 11914  //     "organizations/{organization}/eventThreatDetectionSettings/customModules/{m
 11915  //     odule}". *
 11916  //     "folders/{folder}/eventThreatDetectionSettings/customModules/{module}". *
 11917  //     "projects/{project}/eventThreatDetectionSettings/customModules/{module}".
 11918  func (r *FoldersEventThreatDetectionSettingsCustomModulesService) Get(name string) *FoldersEventThreatDetectionSettingsCustomModulesGetCall {
 11919  	c := &FoldersEventThreatDetectionSettingsCustomModulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11920  	c.name = name
 11921  	return c
 11922  }
 11923  
 11924  // Fields allows partial responses to be retrieved. See
 11925  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11926  // details.
 11927  func (c *FoldersEventThreatDetectionSettingsCustomModulesGetCall) Fields(s ...googleapi.Field) *FoldersEventThreatDetectionSettingsCustomModulesGetCall {
 11928  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11929  	return c
 11930  }
 11931  
 11932  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 11933  // object's ETag matches the given value. This is useful for getting updates
 11934  // only after the object has changed since the last request.
 11935  func (c *FoldersEventThreatDetectionSettingsCustomModulesGetCall) IfNoneMatch(entityTag string) *FoldersEventThreatDetectionSettingsCustomModulesGetCall {
 11936  	c.ifNoneMatch_ = entityTag
 11937  	return c
 11938  }
 11939  
 11940  // Context sets the context to be used in this call's Do method.
 11941  func (c *FoldersEventThreatDetectionSettingsCustomModulesGetCall) Context(ctx context.Context) *FoldersEventThreatDetectionSettingsCustomModulesGetCall {
 11942  	c.ctx_ = ctx
 11943  	return c
 11944  }
 11945  
 11946  // Header returns a http.Header that can be modified by the caller to add
 11947  // headers to the request.
 11948  func (c *FoldersEventThreatDetectionSettingsCustomModulesGetCall) Header() http.Header {
 11949  	if c.header_ == nil {
 11950  		c.header_ = make(http.Header)
 11951  	}
 11952  	return c.header_
 11953  }
 11954  
 11955  func (c *FoldersEventThreatDetectionSettingsCustomModulesGetCall) doRequest(alt string) (*http.Response, error) {
 11956  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11957  	if c.ifNoneMatch_ != "" {
 11958  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 11959  	}
 11960  	var body io.Reader = nil
 11961  	c.urlParams_.Set("alt", alt)
 11962  	c.urlParams_.Set("prettyPrint", "false")
 11963  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 11964  	urls += "?" + c.urlParams_.Encode()
 11965  	req, err := http.NewRequest("GET", urls, body)
 11966  	if err != nil {
 11967  		return nil, err
 11968  	}
 11969  	req.Header = reqHeaders
 11970  	googleapi.Expand(req.URL, map[string]string{
 11971  		"name": c.name,
 11972  	})
 11973  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11974  }
 11975  
 11976  // Do executes the "securitycenter.folders.eventThreatDetectionSettings.customModules.get" call.
 11977  // Any non-2xx status code is an error. Response headers are in either
 11978  // *EventThreatDetectionCustomModule.ServerResponse.Header or (if a response
 11979  // was returned at all) in error.(*googleapi.Error).Header. Use
 11980  // googleapi.IsNotModified to check whether the returned error was because
 11981  // http.StatusNotModified was returned.
 11982  func (c *FoldersEventThreatDetectionSettingsCustomModulesGetCall) Do(opts ...googleapi.CallOption) (*EventThreatDetectionCustomModule, error) {
 11983  	gensupport.SetOptions(c.urlParams_, opts...)
 11984  	res, err := c.doRequest("json")
 11985  	if res != nil && res.StatusCode == http.StatusNotModified {
 11986  		if res.Body != nil {
 11987  			res.Body.Close()
 11988  		}
 11989  		return nil, gensupport.WrapError(&googleapi.Error{
 11990  			Code:   res.StatusCode,
 11991  			Header: res.Header,
 11992  		})
 11993  	}
 11994  	if err != nil {
 11995  		return nil, err
 11996  	}
 11997  	defer googleapi.CloseBody(res)
 11998  	if err := googleapi.CheckResponse(res); err != nil {
 11999  		return nil, gensupport.WrapError(err)
 12000  	}
 12001  	ret := &EventThreatDetectionCustomModule{
 12002  		ServerResponse: googleapi.ServerResponse{
 12003  			Header:         res.Header,
 12004  			HTTPStatusCode: res.StatusCode,
 12005  		},
 12006  	}
 12007  	target := &ret
 12008  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12009  		return nil, err
 12010  	}
 12011  	return ret, nil
 12012  }
 12013  
 12014  type FoldersEventThreatDetectionSettingsCustomModulesListCall struct {
 12015  	s            *Service
 12016  	parent       string
 12017  	urlParams_   gensupport.URLParams
 12018  	ifNoneMatch_ string
 12019  	ctx_         context.Context
 12020  	header_      http.Header
 12021  }
 12022  
 12023  // List: Lists all Event Threat Detection custom modules for the given Resource
 12024  // Manager parent. This includes resident modules defined at the scope of the
 12025  // parent along with modules inherited from ancestors.
 12026  //
 12027  //   - parent: Name of the parent to list custom modules under. Its format is: *
 12028  //     "organizations/{organization}/eventThreatDetectionSettings". *
 12029  //     "folders/{folder}/eventThreatDetectionSettings". *
 12030  //     "projects/{project}/eventThreatDetectionSettings".
 12031  func (r *FoldersEventThreatDetectionSettingsCustomModulesService) List(parent string) *FoldersEventThreatDetectionSettingsCustomModulesListCall {
 12032  	c := &FoldersEventThreatDetectionSettingsCustomModulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12033  	c.parent = parent
 12034  	return c
 12035  }
 12036  
 12037  // PageSize sets the optional parameter "pageSize": The maximum number of
 12038  // modules to return. The service may return fewer than this value. If
 12039  // unspecified, at most 10 configs will be returned. The maximum value is 1000;
 12040  // values above 1000 will be coerced to 1000.
 12041  func (c *FoldersEventThreatDetectionSettingsCustomModulesListCall) PageSize(pageSize int64) *FoldersEventThreatDetectionSettingsCustomModulesListCall {
 12042  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 12043  	return c
 12044  }
 12045  
 12046  // PageToken sets the optional parameter "pageToken": A page token, received
 12047  // from a previous `ListEventThreatDetectionCustomModules` call. Provide this
 12048  // to retrieve the subsequent page. When paginating, all other parameters
 12049  // provided to `ListEventThreatDetectionCustomModules` must match the call that
 12050  // provided the page token.
 12051  func (c *FoldersEventThreatDetectionSettingsCustomModulesListCall) PageToken(pageToken string) *FoldersEventThreatDetectionSettingsCustomModulesListCall {
 12052  	c.urlParams_.Set("pageToken", pageToken)
 12053  	return c
 12054  }
 12055  
 12056  // Fields allows partial responses to be retrieved. See
 12057  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12058  // details.
 12059  func (c *FoldersEventThreatDetectionSettingsCustomModulesListCall) Fields(s ...googleapi.Field) *FoldersEventThreatDetectionSettingsCustomModulesListCall {
 12060  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12061  	return c
 12062  }
 12063  
 12064  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12065  // object's ETag matches the given value. This is useful for getting updates
 12066  // only after the object has changed since the last request.
 12067  func (c *FoldersEventThreatDetectionSettingsCustomModulesListCall) IfNoneMatch(entityTag string) *FoldersEventThreatDetectionSettingsCustomModulesListCall {
 12068  	c.ifNoneMatch_ = entityTag
 12069  	return c
 12070  }
 12071  
 12072  // Context sets the context to be used in this call's Do method.
 12073  func (c *FoldersEventThreatDetectionSettingsCustomModulesListCall) Context(ctx context.Context) *FoldersEventThreatDetectionSettingsCustomModulesListCall {
 12074  	c.ctx_ = ctx
 12075  	return c
 12076  }
 12077  
 12078  // Header returns a http.Header that can be modified by the caller to add
 12079  // headers to the request.
 12080  func (c *FoldersEventThreatDetectionSettingsCustomModulesListCall) Header() http.Header {
 12081  	if c.header_ == nil {
 12082  		c.header_ = make(http.Header)
 12083  	}
 12084  	return c.header_
 12085  }
 12086  
 12087  func (c *FoldersEventThreatDetectionSettingsCustomModulesListCall) doRequest(alt string) (*http.Response, error) {
 12088  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12089  	if c.ifNoneMatch_ != "" {
 12090  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12091  	}
 12092  	var body io.Reader = nil
 12093  	c.urlParams_.Set("alt", alt)
 12094  	c.urlParams_.Set("prettyPrint", "false")
 12095  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules")
 12096  	urls += "?" + c.urlParams_.Encode()
 12097  	req, err := http.NewRequest("GET", urls, body)
 12098  	if err != nil {
 12099  		return nil, err
 12100  	}
 12101  	req.Header = reqHeaders
 12102  	googleapi.Expand(req.URL, map[string]string{
 12103  		"parent": c.parent,
 12104  	})
 12105  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12106  }
 12107  
 12108  // Do executes the "securitycenter.folders.eventThreatDetectionSettings.customModules.list" call.
 12109  // Any non-2xx status code is an error. Response headers are in either
 12110  // *ListEventThreatDetectionCustomModulesResponse.ServerResponse.Header or (if
 12111  // a response was returned at all) in error.(*googleapi.Error).Header. Use
 12112  // googleapi.IsNotModified to check whether the returned error was because
 12113  // http.StatusNotModified was returned.
 12114  func (c *FoldersEventThreatDetectionSettingsCustomModulesListCall) Do(opts ...googleapi.CallOption) (*ListEventThreatDetectionCustomModulesResponse, error) {
 12115  	gensupport.SetOptions(c.urlParams_, opts...)
 12116  	res, err := c.doRequest("json")
 12117  	if res != nil && res.StatusCode == http.StatusNotModified {
 12118  		if res.Body != nil {
 12119  			res.Body.Close()
 12120  		}
 12121  		return nil, gensupport.WrapError(&googleapi.Error{
 12122  			Code:   res.StatusCode,
 12123  			Header: res.Header,
 12124  		})
 12125  	}
 12126  	if err != nil {
 12127  		return nil, err
 12128  	}
 12129  	defer googleapi.CloseBody(res)
 12130  	if err := googleapi.CheckResponse(res); err != nil {
 12131  		return nil, gensupport.WrapError(err)
 12132  	}
 12133  	ret := &ListEventThreatDetectionCustomModulesResponse{
 12134  		ServerResponse: googleapi.ServerResponse{
 12135  			Header:         res.Header,
 12136  			HTTPStatusCode: res.StatusCode,
 12137  		},
 12138  	}
 12139  	target := &ret
 12140  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12141  		return nil, err
 12142  	}
 12143  	return ret, nil
 12144  }
 12145  
 12146  // Pages invokes f for each page of results.
 12147  // A non-nil error returned from f will halt the iteration.
 12148  // The provided context supersedes any context provided to the Context method.
 12149  func (c *FoldersEventThreatDetectionSettingsCustomModulesListCall) Pages(ctx context.Context, f func(*ListEventThreatDetectionCustomModulesResponse) error) error {
 12150  	c.ctx_ = ctx
 12151  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 12152  	for {
 12153  		x, err := c.Do()
 12154  		if err != nil {
 12155  			return err
 12156  		}
 12157  		if err := f(x); err != nil {
 12158  			return err
 12159  		}
 12160  		if x.NextPageToken == "" {
 12161  			return nil
 12162  		}
 12163  		c.PageToken(x.NextPageToken)
 12164  	}
 12165  }
 12166  
 12167  type FoldersEventThreatDetectionSettingsCustomModulesListDescendantCall struct {
 12168  	s            *Service
 12169  	parent       string
 12170  	urlParams_   gensupport.URLParams
 12171  	ifNoneMatch_ string
 12172  	ctx_         context.Context
 12173  	header_      http.Header
 12174  }
 12175  
 12176  // ListDescendant: Lists all resident Event Threat Detection custom modules
 12177  // under the given Resource Manager parent and its descendants.
 12178  //
 12179  //   - parent: Name of the parent to list custom modules under. Its format is: *
 12180  //     "organizations/{organization}/eventThreatDetectionSettings". *
 12181  //     "folders/{folder}/eventThreatDetectionSettings". *
 12182  //     "projects/{project}/eventThreatDetectionSettings".
 12183  func (r *FoldersEventThreatDetectionSettingsCustomModulesService) ListDescendant(parent string) *FoldersEventThreatDetectionSettingsCustomModulesListDescendantCall {
 12184  	c := &FoldersEventThreatDetectionSettingsCustomModulesListDescendantCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12185  	c.parent = parent
 12186  	return c
 12187  }
 12188  
 12189  // PageSize sets the optional parameter "pageSize": The maximum number of
 12190  // modules to return. The service may return fewer than this value. If
 12191  // unspecified, at most 10 configs will be returned. The maximum value is 1000;
 12192  // values above 1000 will be coerced to 1000.
 12193  func (c *FoldersEventThreatDetectionSettingsCustomModulesListDescendantCall) PageSize(pageSize int64) *FoldersEventThreatDetectionSettingsCustomModulesListDescendantCall {
 12194  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 12195  	return c
 12196  }
 12197  
 12198  // PageToken sets the optional parameter "pageToken": A page token, received
 12199  // from a previous `ListDescendantEventThreatDetectionCustomModules` call.
 12200  // Provide this to retrieve the subsequent page. When paginating, all other
 12201  // parameters provided to `ListDescendantEventThreatDetectionCustomModules`
 12202  // must match the call that provided the page token.
 12203  func (c *FoldersEventThreatDetectionSettingsCustomModulesListDescendantCall) PageToken(pageToken string) *FoldersEventThreatDetectionSettingsCustomModulesListDescendantCall {
 12204  	c.urlParams_.Set("pageToken", pageToken)
 12205  	return c
 12206  }
 12207  
 12208  // Fields allows partial responses to be retrieved. See
 12209  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12210  // details.
 12211  func (c *FoldersEventThreatDetectionSettingsCustomModulesListDescendantCall) Fields(s ...googleapi.Field) *FoldersEventThreatDetectionSettingsCustomModulesListDescendantCall {
 12212  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12213  	return c
 12214  }
 12215  
 12216  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12217  // object's ETag matches the given value. This is useful for getting updates
 12218  // only after the object has changed since the last request.
 12219  func (c *FoldersEventThreatDetectionSettingsCustomModulesListDescendantCall) IfNoneMatch(entityTag string) *FoldersEventThreatDetectionSettingsCustomModulesListDescendantCall {
 12220  	c.ifNoneMatch_ = entityTag
 12221  	return c
 12222  }
 12223  
 12224  // Context sets the context to be used in this call's Do method.
 12225  func (c *FoldersEventThreatDetectionSettingsCustomModulesListDescendantCall) Context(ctx context.Context) *FoldersEventThreatDetectionSettingsCustomModulesListDescendantCall {
 12226  	c.ctx_ = ctx
 12227  	return c
 12228  }
 12229  
 12230  // Header returns a http.Header that can be modified by the caller to add
 12231  // headers to the request.
 12232  func (c *FoldersEventThreatDetectionSettingsCustomModulesListDescendantCall) Header() http.Header {
 12233  	if c.header_ == nil {
 12234  		c.header_ = make(http.Header)
 12235  	}
 12236  	return c.header_
 12237  }
 12238  
 12239  func (c *FoldersEventThreatDetectionSettingsCustomModulesListDescendantCall) doRequest(alt string) (*http.Response, error) {
 12240  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12241  	if c.ifNoneMatch_ != "" {
 12242  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12243  	}
 12244  	var body io.Reader = nil
 12245  	c.urlParams_.Set("alt", alt)
 12246  	c.urlParams_.Set("prettyPrint", "false")
 12247  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules:listDescendant")
 12248  	urls += "?" + c.urlParams_.Encode()
 12249  	req, err := http.NewRequest("GET", urls, body)
 12250  	if err != nil {
 12251  		return nil, err
 12252  	}
 12253  	req.Header = reqHeaders
 12254  	googleapi.Expand(req.URL, map[string]string{
 12255  		"parent": c.parent,
 12256  	})
 12257  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12258  }
 12259  
 12260  // Do executes the "securitycenter.folders.eventThreatDetectionSettings.customModules.listDescendant" call.
 12261  // Any non-2xx status code is an error. Response headers are in either
 12262  // *ListDescendantEventThreatDetectionCustomModulesResponse.ServerResponse.Heade
 12263  // r or (if a response was returned at all) in error.(*googleapi.Error).Header.
 12264  // Use googleapi.IsNotModified to check whether the returned error was because
 12265  // http.StatusNotModified was returned.
 12266  func (c *FoldersEventThreatDetectionSettingsCustomModulesListDescendantCall) Do(opts ...googleapi.CallOption) (*ListDescendantEventThreatDetectionCustomModulesResponse, error) {
 12267  	gensupport.SetOptions(c.urlParams_, opts...)
 12268  	res, err := c.doRequest("json")
 12269  	if res != nil && res.StatusCode == http.StatusNotModified {
 12270  		if res.Body != nil {
 12271  			res.Body.Close()
 12272  		}
 12273  		return nil, gensupport.WrapError(&googleapi.Error{
 12274  			Code:   res.StatusCode,
 12275  			Header: res.Header,
 12276  		})
 12277  	}
 12278  	if err != nil {
 12279  		return nil, err
 12280  	}
 12281  	defer googleapi.CloseBody(res)
 12282  	if err := googleapi.CheckResponse(res); err != nil {
 12283  		return nil, gensupport.WrapError(err)
 12284  	}
 12285  	ret := &ListDescendantEventThreatDetectionCustomModulesResponse{
 12286  		ServerResponse: googleapi.ServerResponse{
 12287  			Header:         res.Header,
 12288  			HTTPStatusCode: res.StatusCode,
 12289  		},
 12290  	}
 12291  	target := &ret
 12292  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12293  		return nil, err
 12294  	}
 12295  	return ret, nil
 12296  }
 12297  
 12298  // Pages invokes f for each page of results.
 12299  // A non-nil error returned from f will halt the iteration.
 12300  // The provided context supersedes any context provided to the Context method.
 12301  func (c *FoldersEventThreatDetectionSettingsCustomModulesListDescendantCall) Pages(ctx context.Context, f func(*ListDescendantEventThreatDetectionCustomModulesResponse) error) error {
 12302  	c.ctx_ = ctx
 12303  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 12304  	for {
 12305  		x, err := c.Do()
 12306  		if err != nil {
 12307  			return err
 12308  		}
 12309  		if err := f(x); err != nil {
 12310  			return err
 12311  		}
 12312  		if x.NextPageToken == "" {
 12313  			return nil
 12314  		}
 12315  		c.PageToken(x.NextPageToken)
 12316  	}
 12317  }
 12318  
 12319  type FoldersEventThreatDetectionSettingsCustomModulesPatchCall struct {
 12320  	s                                *Service
 12321  	name                             string
 12322  	eventthreatdetectioncustommodule *EventThreatDetectionCustomModule
 12323  	urlParams_                       gensupport.URLParams
 12324  	ctx_                             context.Context
 12325  	header_                          http.Header
 12326  }
 12327  
 12328  // Patch: Updates the Event Threat Detection custom module with the given name
 12329  // based on the given update mask. Updating the enablement state is supported
 12330  // for both resident and inherited modules (though resident modules cannot have
 12331  // an enablement state of "inherited"). Updating the display name or
 12332  // configuration of a module is supported for resident modules only. The type
 12333  // of a module cannot be changed.
 12334  //
 12335  //   - name: Immutable. The resource name of the Event Threat Detection custom
 12336  //     module. Its format is: *
 12337  //     "organizations/{organization}/eventThreatDetectionSettings/customModules/{m
 12338  //     odule}". *
 12339  //     "folders/{folder}/eventThreatDetectionSettings/customModules/{module}". *
 12340  //     "projects/{project}/eventThreatDetectionSettings/customModules/{module}".
 12341  func (r *FoldersEventThreatDetectionSettingsCustomModulesService) Patch(name string, eventthreatdetectioncustommodule *EventThreatDetectionCustomModule) *FoldersEventThreatDetectionSettingsCustomModulesPatchCall {
 12342  	c := &FoldersEventThreatDetectionSettingsCustomModulesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12343  	c.name = name
 12344  	c.eventthreatdetectioncustommodule = eventthreatdetectioncustommodule
 12345  	return c
 12346  }
 12347  
 12348  // UpdateMask sets the optional parameter "updateMask": The list of fields to
 12349  // be updated. If empty all mutable fields will be updated.
 12350  func (c *FoldersEventThreatDetectionSettingsCustomModulesPatchCall) UpdateMask(updateMask string) *FoldersEventThreatDetectionSettingsCustomModulesPatchCall {
 12351  	c.urlParams_.Set("updateMask", updateMask)
 12352  	return c
 12353  }
 12354  
 12355  // Fields allows partial responses to be retrieved. See
 12356  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12357  // details.
 12358  func (c *FoldersEventThreatDetectionSettingsCustomModulesPatchCall) Fields(s ...googleapi.Field) *FoldersEventThreatDetectionSettingsCustomModulesPatchCall {
 12359  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12360  	return c
 12361  }
 12362  
 12363  // Context sets the context to be used in this call's Do method.
 12364  func (c *FoldersEventThreatDetectionSettingsCustomModulesPatchCall) Context(ctx context.Context) *FoldersEventThreatDetectionSettingsCustomModulesPatchCall {
 12365  	c.ctx_ = ctx
 12366  	return c
 12367  }
 12368  
 12369  // Header returns a http.Header that can be modified by the caller to add
 12370  // headers to the request.
 12371  func (c *FoldersEventThreatDetectionSettingsCustomModulesPatchCall) Header() http.Header {
 12372  	if c.header_ == nil {
 12373  		c.header_ = make(http.Header)
 12374  	}
 12375  	return c.header_
 12376  }
 12377  
 12378  func (c *FoldersEventThreatDetectionSettingsCustomModulesPatchCall) doRequest(alt string) (*http.Response, error) {
 12379  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 12380  	var body io.Reader = nil
 12381  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.eventthreatdetectioncustommodule)
 12382  	if err != nil {
 12383  		return nil, err
 12384  	}
 12385  	c.urlParams_.Set("alt", alt)
 12386  	c.urlParams_.Set("prettyPrint", "false")
 12387  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 12388  	urls += "?" + c.urlParams_.Encode()
 12389  	req, err := http.NewRequest("PATCH", urls, body)
 12390  	if err != nil {
 12391  		return nil, err
 12392  	}
 12393  	req.Header = reqHeaders
 12394  	googleapi.Expand(req.URL, map[string]string{
 12395  		"name": c.name,
 12396  	})
 12397  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12398  }
 12399  
 12400  // Do executes the "securitycenter.folders.eventThreatDetectionSettings.customModules.patch" call.
 12401  // Any non-2xx status code is an error. Response headers are in either
 12402  // *EventThreatDetectionCustomModule.ServerResponse.Header or (if a response
 12403  // was returned at all) in error.(*googleapi.Error).Header. Use
 12404  // googleapi.IsNotModified to check whether the returned error was because
 12405  // http.StatusNotModified was returned.
 12406  func (c *FoldersEventThreatDetectionSettingsCustomModulesPatchCall) Do(opts ...googleapi.CallOption) (*EventThreatDetectionCustomModule, error) {
 12407  	gensupport.SetOptions(c.urlParams_, opts...)
 12408  	res, err := c.doRequest("json")
 12409  	if res != nil && res.StatusCode == http.StatusNotModified {
 12410  		if res.Body != nil {
 12411  			res.Body.Close()
 12412  		}
 12413  		return nil, gensupport.WrapError(&googleapi.Error{
 12414  			Code:   res.StatusCode,
 12415  			Header: res.Header,
 12416  		})
 12417  	}
 12418  	if err != nil {
 12419  		return nil, err
 12420  	}
 12421  	defer googleapi.CloseBody(res)
 12422  	if err := googleapi.CheckResponse(res); err != nil {
 12423  		return nil, gensupport.WrapError(err)
 12424  	}
 12425  	ret := &EventThreatDetectionCustomModule{
 12426  		ServerResponse: googleapi.ServerResponse{
 12427  			Header:         res.Header,
 12428  			HTTPStatusCode: res.StatusCode,
 12429  		},
 12430  	}
 12431  	target := &ret
 12432  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12433  		return nil, err
 12434  	}
 12435  	return ret, nil
 12436  }
 12437  
 12438  type FoldersEventThreatDetectionSettingsEffectiveCustomModulesGetCall struct {
 12439  	s            *Service
 12440  	name         string
 12441  	urlParams_   gensupport.URLParams
 12442  	ifNoneMatch_ string
 12443  	ctx_         context.Context
 12444  	header_      http.Header
 12445  }
 12446  
 12447  // Get: Gets an effective Event Threat Detection custom module at the given
 12448  // level.
 12449  //
 12450  //   - name: The resource name of the effective Event Threat Detection custom
 12451  //     module. Its format is: *
 12452  //     "organizations/{organization}/eventThreatDetectionSettings/effectiveCustomM
 12453  //     odules/{module}". *
 12454  //     "folders/{folder}/eventThreatDetectionSettings/effectiveCustomModules/{modu
 12455  //     le}". *
 12456  //     "projects/{project}/eventThreatDetectionSettings/effectiveCustomModules/{mo
 12457  //     dule}".
 12458  func (r *FoldersEventThreatDetectionSettingsEffectiveCustomModulesService) Get(name string) *FoldersEventThreatDetectionSettingsEffectiveCustomModulesGetCall {
 12459  	c := &FoldersEventThreatDetectionSettingsEffectiveCustomModulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12460  	c.name = name
 12461  	return c
 12462  }
 12463  
 12464  // Fields allows partial responses to be retrieved. See
 12465  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12466  // details.
 12467  func (c *FoldersEventThreatDetectionSettingsEffectiveCustomModulesGetCall) Fields(s ...googleapi.Field) *FoldersEventThreatDetectionSettingsEffectiveCustomModulesGetCall {
 12468  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12469  	return c
 12470  }
 12471  
 12472  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12473  // object's ETag matches the given value. This is useful for getting updates
 12474  // only after the object has changed since the last request.
 12475  func (c *FoldersEventThreatDetectionSettingsEffectiveCustomModulesGetCall) IfNoneMatch(entityTag string) *FoldersEventThreatDetectionSettingsEffectiveCustomModulesGetCall {
 12476  	c.ifNoneMatch_ = entityTag
 12477  	return c
 12478  }
 12479  
 12480  // Context sets the context to be used in this call's Do method.
 12481  func (c *FoldersEventThreatDetectionSettingsEffectiveCustomModulesGetCall) Context(ctx context.Context) *FoldersEventThreatDetectionSettingsEffectiveCustomModulesGetCall {
 12482  	c.ctx_ = ctx
 12483  	return c
 12484  }
 12485  
 12486  // Header returns a http.Header that can be modified by the caller to add
 12487  // headers to the request.
 12488  func (c *FoldersEventThreatDetectionSettingsEffectiveCustomModulesGetCall) Header() http.Header {
 12489  	if c.header_ == nil {
 12490  		c.header_ = make(http.Header)
 12491  	}
 12492  	return c.header_
 12493  }
 12494  
 12495  func (c *FoldersEventThreatDetectionSettingsEffectiveCustomModulesGetCall) doRequest(alt string) (*http.Response, error) {
 12496  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12497  	if c.ifNoneMatch_ != "" {
 12498  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12499  	}
 12500  	var body io.Reader = nil
 12501  	c.urlParams_.Set("alt", alt)
 12502  	c.urlParams_.Set("prettyPrint", "false")
 12503  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 12504  	urls += "?" + c.urlParams_.Encode()
 12505  	req, err := http.NewRequest("GET", urls, body)
 12506  	if err != nil {
 12507  		return nil, err
 12508  	}
 12509  	req.Header = reqHeaders
 12510  	googleapi.Expand(req.URL, map[string]string{
 12511  		"name": c.name,
 12512  	})
 12513  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12514  }
 12515  
 12516  // Do executes the "securitycenter.folders.eventThreatDetectionSettings.effectiveCustomModules.get" call.
 12517  // Any non-2xx status code is an error. Response headers are in either
 12518  // *EffectiveEventThreatDetectionCustomModule.ServerResponse.Header or (if a
 12519  // response was returned at all) in error.(*googleapi.Error).Header. Use
 12520  // googleapi.IsNotModified to check whether the returned error was because
 12521  // http.StatusNotModified was returned.
 12522  func (c *FoldersEventThreatDetectionSettingsEffectiveCustomModulesGetCall) Do(opts ...googleapi.CallOption) (*EffectiveEventThreatDetectionCustomModule, error) {
 12523  	gensupport.SetOptions(c.urlParams_, opts...)
 12524  	res, err := c.doRequest("json")
 12525  	if res != nil && res.StatusCode == http.StatusNotModified {
 12526  		if res.Body != nil {
 12527  			res.Body.Close()
 12528  		}
 12529  		return nil, gensupport.WrapError(&googleapi.Error{
 12530  			Code:   res.StatusCode,
 12531  			Header: res.Header,
 12532  		})
 12533  	}
 12534  	if err != nil {
 12535  		return nil, err
 12536  	}
 12537  	defer googleapi.CloseBody(res)
 12538  	if err := googleapi.CheckResponse(res); err != nil {
 12539  		return nil, gensupport.WrapError(err)
 12540  	}
 12541  	ret := &EffectiveEventThreatDetectionCustomModule{
 12542  		ServerResponse: googleapi.ServerResponse{
 12543  			Header:         res.Header,
 12544  			HTTPStatusCode: res.StatusCode,
 12545  		},
 12546  	}
 12547  	target := &ret
 12548  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12549  		return nil, err
 12550  	}
 12551  	return ret, nil
 12552  }
 12553  
 12554  type FoldersEventThreatDetectionSettingsEffectiveCustomModulesListCall struct {
 12555  	s            *Service
 12556  	parent       string
 12557  	urlParams_   gensupport.URLParams
 12558  	ifNoneMatch_ string
 12559  	ctx_         context.Context
 12560  	header_      http.Header
 12561  }
 12562  
 12563  // List: Lists all effective Event Threat Detection custom modules for the
 12564  // given parent. This includes resident modules defined at the scope of the
 12565  // parent along with modules inherited from its ancestors.
 12566  //
 12567  //   - parent: Name of the parent to list custom modules for. Its format is: *
 12568  //     "organizations/{organization}/eventThreatDetectionSettings". *
 12569  //     "folders/{folder}/eventThreatDetectionSettings". *
 12570  //     "projects/{project}/eventThreatDetectionSettings".
 12571  func (r *FoldersEventThreatDetectionSettingsEffectiveCustomModulesService) List(parent string) *FoldersEventThreatDetectionSettingsEffectiveCustomModulesListCall {
 12572  	c := &FoldersEventThreatDetectionSettingsEffectiveCustomModulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12573  	c.parent = parent
 12574  	return c
 12575  }
 12576  
 12577  // PageSize sets the optional parameter "pageSize": The maximum number of
 12578  // modules to return. The service may return fewer than this value. If
 12579  // unspecified, at most 10 configs will be returned. The maximum value is 1000;
 12580  // values above 1000 will be coerced to 1000.
 12581  func (c *FoldersEventThreatDetectionSettingsEffectiveCustomModulesListCall) PageSize(pageSize int64) *FoldersEventThreatDetectionSettingsEffectiveCustomModulesListCall {
 12582  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 12583  	return c
 12584  }
 12585  
 12586  // PageToken sets the optional parameter "pageToken": A page token, received
 12587  // from a previous `ListEffectiveEventThreatDetectionCustomModules` call.
 12588  // Provide this to retrieve the subsequent page. When paginating, all other
 12589  // parameters provided to `ListEffectiveEventThreatDetectionCustomModules` must
 12590  // match the call that provided the page token.
 12591  func (c *FoldersEventThreatDetectionSettingsEffectiveCustomModulesListCall) PageToken(pageToken string) *FoldersEventThreatDetectionSettingsEffectiveCustomModulesListCall {
 12592  	c.urlParams_.Set("pageToken", pageToken)
 12593  	return c
 12594  }
 12595  
 12596  // Fields allows partial responses to be retrieved. See
 12597  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12598  // details.
 12599  func (c *FoldersEventThreatDetectionSettingsEffectiveCustomModulesListCall) Fields(s ...googleapi.Field) *FoldersEventThreatDetectionSettingsEffectiveCustomModulesListCall {
 12600  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12601  	return c
 12602  }
 12603  
 12604  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12605  // object's ETag matches the given value. This is useful for getting updates
 12606  // only after the object has changed since the last request.
 12607  func (c *FoldersEventThreatDetectionSettingsEffectiveCustomModulesListCall) IfNoneMatch(entityTag string) *FoldersEventThreatDetectionSettingsEffectiveCustomModulesListCall {
 12608  	c.ifNoneMatch_ = entityTag
 12609  	return c
 12610  }
 12611  
 12612  // Context sets the context to be used in this call's Do method.
 12613  func (c *FoldersEventThreatDetectionSettingsEffectiveCustomModulesListCall) Context(ctx context.Context) *FoldersEventThreatDetectionSettingsEffectiveCustomModulesListCall {
 12614  	c.ctx_ = ctx
 12615  	return c
 12616  }
 12617  
 12618  // Header returns a http.Header that can be modified by the caller to add
 12619  // headers to the request.
 12620  func (c *FoldersEventThreatDetectionSettingsEffectiveCustomModulesListCall) Header() http.Header {
 12621  	if c.header_ == nil {
 12622  		c.header_ = make(http.Header)
 12623  	}
 12624  	return c.header_
 12625  }
 12626  
 12627  func (c *FoldersEventThreatDetectionSettingsEffectiveCustomModulesListCall) doRequest(alt string) (*http.Response, error) {
 12628  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12629  	if c.ifNoneMatch_ != "" {
 12630  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12631  	}
 12632  	var body io.Reader = nil
 12633  	c.urlParams_.Set("alt", alt)
 12634  	c.urlParams_.Set("prettyPrint", "false")
 12635  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/effectiveCustomModules")
 12636  	urls += "?" + c.urlParams_.Encode()
 12637  	req, err := http.NewRequest("GET", urls, body)
 12638  	if err != nil {
 12639  		return nil, err
 12640  	}
 12641  	req.Header = reqHeaders
 12642  	googleapi.Expand(req.URL, map[string]string{
 12643  		"parent": c.parent,
 12644  	})
 12645  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12646  }
 12647  
 12648  // Do executes the "securitycenter.folders.eventThreatDetectionSettings.effectiveCustomModules.list" call.
 12649  // Any non-2xx status code is an error. Response headers are in either
 12650  // *ListEffectiveEventThreatDetectionCustomModulesResponse.ServerResponse.Header
 12651  //
 12652  //	or (if a response was returned at all) in error.(*googleapi.Error).Header.
 12653  //
 12654  // Use googleapi.IsNotModified to check whether the returned error was because
 12655  // http.StatusNotModified was returned.
 12656  func (c *FoldersEventThreatDetectionSettingsEffectiveCustomModulesListCall) Do(opts ...googleapi.CallOption) (*ListEffectiveEventThreatDetectionCustomModulesResponse, error) {
 12657  	gensupport.SetOptions(c.urlParams_, opts...)
 12658  	res, err := c.doRequest("json")
 12659  	if res != nil && res.StatusCode == http.StatusNotModified {
 12660  		if res.Body != nil {
 12661  			res.Body.Close()
 12662  		}
 12663  		return nil, gensupport.WrapError(&googleapi.Error{
 12664  			Code:   res.StatusCode,
 12665  			Header: res.Header,
 12666  		})
 12667  	}
 12668  	if err != nil {
 12669  		return nil, err
 12670  	}
 12671  	defer googleapi.CloseBody(res)
 12672  	if err := googleapi.CheckResponse(res); err != nil {
 12673  		return nil, gensupport.WrapError(err)
 12674  	}
 12675  	ret := &ListEffectiveEventThreatDetectionCustomModulesResponse{
 12676  		ServerResponse: googleapi.ServerResponse{
 12677  			Header:         res.Header,
 12678  			HTTPStatusCode: res.StatusCode,
 12679  		},
 12680  	}
 12681  	target := &ret
 12682  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12683  		return nil, err
 12684  	}
 12685  	return ret, nil
 12686  }
 12687  
 12688  // Pages invokes f for each page of results.
 12689  // A non-nil error returned from f will halt the iteration.
 12690  // The provided context supersedes any context provided to the Context method.
 12691  func (c *FoldersEventThreatDetectionSettingsEffectiveCustomModulesListCall) Pages(ctx context.Context, f func(*ListEffectiveEventThreatDetectionCustomModulesResponse) error) error {
 12692  	c.ctx_ = ctx
 12693  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 12694  	for {
 12695  		x, err := c.Do()
 12696  		if err != nil {
 12697  			return err
 12698  		}
 12699  		if err := f(x); err != nil {
 12700  			return err
 12701  		}
 12702  		if x.NextPageToken == "" {
 12703  			return nil
 12704  		}
 12705  		c.PageToken(x.NextPageToken)
 12706  	}
 12707  }
 12708  
 12709  type FoldersFindingsBulkMuteCall struct {
 12710  	s                       *Service
 12711  	parent                  string
 12712  	bulkmutefindingsrequest *BulkMuteFindingsRequest
 12713  	urlParams_              gensupport.URLParams
 12714  	ctx_                    context.Context
 12715  	header_                 http.Header
 12716  }
 12717  
 12718  // BulkMute: Kicks off an LRO to bulk mute findings for a parent based on a
 12719  // filter. The parent can be either an organization, folder or project. The
 12720  // findings matched by the filter will be muted after the LRO is done.
 12721  //
 12722  //   - parent: The parent, at which bulk action needs to be applied. Its format
 12723  //     is "organizations/[organization_id]", "folders/[folder_id]",
 12724  //     "projects/[project_id]".
 12725  func (r *FoldersFindingsService) BulkMute(parent string, bulkmutefindingsrequest *BulkMuteFindingsRequest) *FoldersFindingsBulkMuteCall {
 12726  	c := &FoldersFindingsBulkMuteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12727  	c.parent = parent
 12728  	c.bulkmutefindingsrequest = bulkmutefindingsrequest
 12729  	return c
 12730  }
 12731  
 12732  // Fields allows partial responses to be retrieved. See
 12733  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12734  // details.
 12735  func (c *FoldersFindingsBulkMuteCall) Fields(s ...googleapi.Field) *FoldersFindingsBulkMuteCall {
 12736  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12737  	return c
 12738  }
 12739  
 12740  // Context sets the context to be used in this call's Do method.
 12741  func (c *FoldersFindingsBulkMuteCall) Context(ctx context.Context) *FoldersFindingsBulkMuteCall {
 12742  	c.ctx_ = ctx
 12743  	return c
 12744  }
 12745  
 12746  // Header returns a http.Header that can be modified by the caller to add
 12747  // headers to the request.
 12748  func (c *FoldersFindingsBulkMuteCall) Header() http.Header {
 12749  	if c.header_ == nil {
 12750  		c.header_ = make(http.Header)
 12751  	}
 12752  	return c.header_
 12753  }
 12754  
 12755  func (c *FoldersFindingsBulkMuteCall) doRequest(alt string) (*http.Response, error) {
 12756  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 12757  	var body io.Reader = nil
 12758  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.bulkmutefindingsrequest)
 12759  	if err != nil {
 12760  		return nil, err
 12761  	}
 12762  	c.urlParams_.Set("alt", alt)
 12763  	c.urlParams_.Set("prettyPrint", "false")
 12764  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/findings:bulkMute")
 12765  	urls += "?" + c.urlParams_.Encode()
 12766  	req, err := http.NewRequest("POST", urls, body)
 12767  	if err != nil {
 12768  		return nil, err
 12769  	}
 12770  	req.Header = reqHeaders
 12771  	googleapi.Expand(req.URL, map[string]string{
 12772  		"parent": c.parent,
 12773  	})
 12774  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12775  }
 12776  
 12777  // Do executes the "securitycenter.folders.findings.bulkMute" call.
 12778  // Any non-2xx status code is an error. Response headers are in either
 12779  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 12780  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 12781  // whether the returned error was because http.StatusNotModified was returned.
 12782  func (c *FoldersFindingsBulkMuteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 12783  	gensupport.SetOptions(c.urlParams_, opts...)
 12784  	res, err := c.doRequest("json")
 12785  	if res != nil && res.StatusCode == http.StatusNotModified {
 12786  		if res.Body != nil {
 12787  			res.Body.Close()
 12788  		}
 12789  		return nil, gensupport.WrapError(&googleapi.Error{
 12790  			Code:   res.StatusCode,
 12791  			Header: res.Header,
 12792  		})
 12793  	}
 12794  	if err != nil {
 12795  		return nil, err
 12796  	}
 12797  	defer googleapi.CloseBody(res)
 12798  	if err := googleapi.CheckResponse(res); err != nil {
 12799  		return nil, gensupport.WrapError(err)
 12800  	}
 12801  	ret := &Operation{
 12802  		ServerResponse: googleapi.ServerResponse{
 12803  			Header:         res.Header,
 12804  			HTTPStatusCode: res.StatusCode,
 12805  		},
 12806  	}
 12807  	target := &ret
 12808  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12809  		return nil, err
 12810  	}
 12811  	return ret, nil
 12812  }
 12813  
 12814  type FoldersLocationsMuteConfigsCreateCall struct {
 12815  	s                                     *Service
 12816  	parent                                string
 12817  	googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig
 12818  	urlParams_                            gensupport.URLParams
 12819  	ctx_                                  context.Context
 12820  	header_                               http.Header
 12821  }
 12822  
 12823  // Create: Creates a mute config.
 12824  //
 12825  //   - parent: Resource name of the new mute configs's parent. Its format is
 12826  //     "organizations/[organization_id]", "folders/[folder_id]", or
 12827  //     "projects/[project_id]".
 12828  func (r *FoldersLocationsMuteConfigsService) Create(parent string, googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig) *FoldersLocationsMuteConfigsCreateCall {
 12829  	c := &FoldersLocationsMuteConfigsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12830  	c.parent = parent
 12831  	c.googlecloudsecuritycenterv1muteconfig = googlecloudsecuritycenterv1muteconfig
 12832  	return c
 12833  }
 12834  
 12835  // MuteConfigId sets the optional parameter "muteConfigId": Required. Unique
 12836  // identifier provided by the client within the parent scope. It must consist
 12837  // of only lowercase letters, numbers, and hyphens, must start with a letter,
 12838  // must end with either a letter or a number, and must be 63 characters or
 12839  // less.
 12840  func (c *FoldersLocationsMuteConfigsCreateCall) MuteConfigId(muteConfigId string) *FoldersLocationsMuteConfigsCreateCall {
 12841  	c.urlParams_.Set("muteConfigId", muteConfigId)
 12842  	return c
 12843  }
 12844  
 12845  // Fields allows partial responses to be retrieved. See
 12846  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12847  // details.
 12848  func (c *FoldersLocationsMuteConfigsCreateCall) Fields(s ...googleapi.Field) *FoldersLocationsMuteConfigsCreateCall {
 12849  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12850  	return c
 12851  }
 12852  
 12853  // Context sets the context to be used in this call's Do method.
 12854  func (c *FoldersLocationsMuteConfigsCreateCall) Context(ctx context.Context) *FoldersLocationsMuteConfigsCreateCall {
 12855  	c.ctx_ = ctx
 12856  	return c
 12857  }
 12858  
 12859  // Header returns a http.Header that can be modified by the caller to add
 12860  // headers to the request.
 12861  func (c *FoldersLocationsMuteConfigsCreateCall) Header() http.Header {
 12862  	if c.header_ == nil {
 12863  		c.header_ = make(http.Header)
 12864  	}
 12865  	return c.header_
 12866  }
 12867  
 12868  func (c *FoldersLocationsMuteConfigsCreateCall) doRequest(alt string) (*http.Response, error) {
 12869  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 12870  	var body io.Reader = nil
 12871  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1muteconfig)
 12872  	if err != nil {
 12873  		return nil, err
 12874  	}
 12875  	c.urlParams_.Set("alt", alt)
 12876  	c.urlParams_.Set("prettyPrint", "false")
 12877  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/muteConfigs")
 12878  	urls += "?" + c.urlParams_.Encode()
 12879  	req, err := http.NewRequest("POST", urls, body)
 12880  	if err != nil {
 12881  		return nil, err
 12882  	}
 12883  	req.Header = reqHeaders
 12884  	googleapi.Expand(req.URL, map[string]string{
 12885  		"parent": c.parent,
 12886  	})
 12887  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12888  }
 12889  
 12890  // Do executes the "securitycenter.folders.locations.muteConfigs.create" call.
 12891  // Any non-2xx status code is an error. Response headers are in either
 12892  // *GoogleCloudSecuritycenterV1MuteConfig.ServerResponse.Header or (if a
 12893  // response was returned at all) in error.(*googleapi.Error).Header. Use
 12894  // googleapi.IsNotModified to check whether the returned error was because
 12895  // http.StatusNotModified was returned.
 12896  func (c *FoldersLocationsMuteConfigsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1MuteConfig, error) {
 12897  	gensupport.SetOptions(c.urlParams_, opts...)
 12898  	res, err := c.doRequest("json")
 12899  	if res != nil && res.StatusCode == http.StatusNotModified {
 12900  		if res.Body != nil {
 12901  			res.Body.Close()
 12902  		}
 12903  		return nil, gensupport.WrapError(&googleapi.Error{
 12904  			Code:   res.StatusCode,
 12905  			Header: res.Header,
 12906  		})
 12907  	}
 12908  	if err != nil {
 12909  		return nil, err
 12910  	}
 12911  	defer googleapi.CloseBody(res)
 12912  	if err := googleapi.CheckResponse(res); err != nil {
 12913  		return nil, gensupport.WrapError(err)
 12914  	}
 12915  	ret := &GoogleCloudSecuritycenterV1MuteConfig{
 12916  		ServerResponse: googleapi.ServerResponse{
 12917  			Header:         res.Header,
 12918  			HTTPStatusCode: res.StatusCode,
 12919  		},
 12920  	}
 12921  	target := &ret
 12922  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12923  		return nil, err
 12924  	}
 12925  	return ret, nil
 12926  }
 12927  
 12928  type FoldersLocationsMuteConfigsDeleteCall struct {
 12929  	s          *Service
 12930  	name       string
 12931  	urlParams_ gensupport.URLParams
 12932  	ctx_       context.Context
 12933  	header_    http.Header
 12934  }
 12935  
 12936  // Delete: Deletes an existing mute config.
 12937  //
 12938  //   - name: Name of the mute config to delete. Its format is
 12939  //     organizations/{organization}/muteConfigs/{config_id},
 12940  //     folders/{folder}/muteConfigs/{config_id},
 12941  //     projects/{project}/muteConfigs/{config_id},
 12942  //     organizations/{organization}/locations/global/muteConfigs/{config_id},
 12943  //     folders/{folder}/locations/global/muteConfigs/{config_id}, or
 12944  //     projects/{project}/locations/global/muteConfigs/{config_id}.
 12945  func (r *FoldersLocationsMuteConfigsService) Delete(name string) *FoldersLocationsMuteConfigsDeleteCall {
 12946  	c := &FoldersLocationsMuteConfigsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12947  	c.name = name
 12948  	return c
 12949  }
 12950  
 12951  // Fields allows partial responses to be retrieved. See
 12952  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12953  // details.
 12954  func (c *FoldersLocationsMuteConfigsDeleteCall) Fields(s ...googleapi.Field) *FoldersLocationsMuteConfigsDeleteCall {
 12955  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12956  	return c
 12957  }
 12958  
 12959  // Context sets the context to be used in this call's Do method.
 12960  func (c *FoldersLocationsMuteConfigsDeleteCall) Context(ctx context.Context) *FoldersLocationsMuteConfigsDeleteCall {
 12961  	c.ctx_ = ctx
 12962  	return c
 12963  }
 12964  
 12965  // Header returns a http.Header that can be modified by the caller to add
 12966  // headers to the request.
 12967  func (c *FoldersLocationsMuteConfigsDeleteCall) Header() http.Header {
 12968  	if c.header_ == nil {
 12969  		c.header_ = make(http.Header)
 12970  	}
 12971  	return c.header_
 12972  }
 12973  
 12974  func (c *FoldersLocationsMuteConfigsDeleteCall) doRequest(alt string) (*http.Response, error) {
 12975  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12976  	var body io.Reader = nil
 12977  	c.urlParams_.Set("alt", alt)
 12978  	c.urlParams_.Set("prettyPrint", "false")
 12979  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 12980  	urls += "?" + c.urlParams_.Encode()
 12981  	req, err := http.NewRequest("DELETE", urls, body)
 12982  	if err != nil {
 12983  		return nil, err
 12984  	}
 12985  	req.Header = reqHeaders
 12986  	googleapi.Expand(req.URL, map[string]string{
 12987  		"name": c.name,
 12988  	})
 12989  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12990  }
 12991  
 12992  // Do executes the "securitycenter.folders.locations.muteConfigs.delete" call.
 12993  // Any non-2xx status code is an error. Response headers are in either
 12994  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 12995  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 12996  // whether the returned error was because http.StatusNotModified was returned.
 12997  func (c *FoldersLocationsMuteConfigsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 12998  	gensupport.SetOptions(c.urlParams_, opts...)
 12999  	res, err := c.doRequest("json")
 13000  	if res != nil && res.StatusCode == http.StatusNotModified {
 13001  		if res.Body != nil {
 13002  			res.Body.Close()
 13003  		}
 13004  		return nil, gensupport.WrapError(&googleapi.Error{
 13005  			Code:   res.StatusCode,
 13006  			Header: res.Header,
 13007  		})
 13008  	}
 13009  	if err != nil {
 13010  		return nil, err
 13011  	}
 13012  	defer googleapi.CloseBody(res)
 13013  	if err := googleapi.CheckResponse(res); err != nil {
 13014  		return nil, gensupport.WrapError(err)
 13015  	}
 13016  	ret := &Empty{
 13017  		ServerResponse: googleapi.ServerResponse{
 13018  			Header:         res.Header,
 13019  			HTTPStatusCode: res.StatusCode,
 13020  		},
 13021  	}
 13022  	target := &ret
 13023  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13024  		return nil, err
 13025  	}
 13026  	return ret, nil
 13027  }
 13028  
 13029  type FoldersLocationsMuteConfigsGetCall struct {
 13030  	s            *Service
 13031  	name         string
 13032  	urlParams_   gensupport.URLParams
 13033  	ifNoneMatch_ string
 13034  	ctx_         context.Context
 13035  	header_      http.Header
 13036  }
 13037  
 13038  // Get: Gets a mute config.
 13039  //
 13040  //   - name: Name of the mute config to retrieve. Its format is
 13041  //     organizations/{organization}/muteConfigs/{config_id},
 13042  //     folders/{folder}/muteConfigs/{config_id},
 13043  //     projects/{project}/muteConfigs/{config_id},
 13044  //     organizations/{organization}/locations/global/muteConfigs/{config_id},
 13045  //     folders/{folder}/locations/global/muteConfigs/{config_id}, or
 13046  //     projects/{project}/locations/global/muteConfigs/{config_id}.
 13047  func (r *FoldersLocationsMuteConfigsService) Get(name string) *FoldersLocationsMuteConfigsGetCall {
 13048  	c := &FoldersLocationsMuteConfigsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13049  	c.name = name
 13050  	return c
 13051  }
 13052  
 13053  // Fields allows partial responses to be retrieved. See
 13054  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13055  // details.
 13056  func (c *FoldersLocationsMuteConfigsGetCall) Fields(s ...googleapi.Field) *FoldersLocationsMuteConfigsGetCall {
 13057  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13058  	return c
 13059  }
 13060  
 13061  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13062  // object's ETag matches the given value. This is useful for getting updates
 13063  // only after the object has changed since the last request.
 13064  func (c *FoldersLocationsMuteConfigsGetCall) IfNoneMatch(entityTag string) *FoldersLocationsMuteConfigsGetCall {
 13065  	c.ifNoneMatch_ = entityTag
 13066  	return c
 13067  }
 13068  
 13069  // Context sets the context to be used in this call's Do method.
 13070  func (c *FoldersLocationsMuteConfigsGetCall) Context(ctx context.Context) *FoldersLocationsMuteConfigsGetCall {
 13071  	c.ctx_ = ctx
 13072  	return c
 13073  }
 13074  
 13075  // Header returns a http.Header that can be modified by the caller to add
 13076  // headers to the request.
 13077  func (c *FoldersLocationsMuteConfigsGetCall) Header() http.Header {
 13078  	if c.header_ == nil {
 13079  		c.header_ = make(http.Header)
 13080  	}
 13081  	return c.header_
 13082  }
 13083  
 13084  func (c *FoldersLocationsMuteConfigsGetCall) doRequest(alt string) (*http.Response, error) {
 13085  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13086  	if c.ifNoneMatch_ != "" {
 13087  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13088  	}
 13089  	var body io.Reader = nil
 13090  	c.urlParams_.Set("alt", alt)
 13091  	c.urlParams_.Set("prettyPrint", "false")
 13092  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 13093  	urls += "?" + c.urlParams_.Encode()
 13094  	req, err := http.NewRequest("GET", urls, body)
 13095  	if err != nil {
 13096  		return nil, err
 13097  	}
 13098  	req.Header = reqHeaders
 13099  	googleapi.Expand(req.URL, map[string]string{
 13100  		"name": c.name,
 13101  	})
 13102  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13103  }
 13104  
 13105  // Do executes the "securitycenter.folders.locations.muteConfigs.get" call.
 13106  // Any non-2xx status code is an error. Response headers are in either
 13107  // *GoogleCloudSecuritycenterV1MuteConfig.ServerResponse.Header or (if a
 13108  // response was returned at all) in error.(*googleapi.Error).Header. Use
 13109  // googleapi.IsNotModified to check whether the returned error was because
 13110  // http.StatusNotModified was returned.
 13111  func (c *FoldersLocationsMuteConfigsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1MuteConfig, error) {
 13112  	gensupport.SetOptions(c.urlParams_, opts...)
 13113  	res, err := c.doRequest("json")
 13114  	if res != nil && res.StatusCode == http.StatusNotModified {
 13115  		if res.Body != nil {
 13116  			res.Body.Close()
 13117  		}
 13118  		return nil, gensupport.WrapError(&googleapi.Error{
 13119  			Code:   res.StatusCode,
 13120  			Header: res.Header,
 13121  		})
 13122  	}
 13123  	if err != nil {
 13124  		return nil, err
 13125  	}
 13126  	defer googleapi.CloseBody(res)
 13127  	if err := googleapi.CheckResponse(res); err != nil {
 13128  		return nil, gensupport.WrapError(err)
 13129  	}
 13130  	ret := &GoogleCloudSecuritycenterV1MuteConfig{
 13131  		ServerResponse: googleapi.ServerResponse{
 13132  			Header:         res.Header,
 13133  			HTTPStatusCode: res.StatusCode,
 13134  		},
 13135  	}
 13136  	target := &ret
 13137  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13138  		return nil, err
 13139  	}
 13140  	return ret, nil
 13141  }
 13142  
 13143  type FoldersLocationsMuteConfigsListCall struct {
 13144  	s            *Service
 13145  	parent       string
 13146  	urlParams_   gensupport.URLParams
 13147  	ifNoneMatch_ string
 13148  	ctx_         context.Context
 13149  	header_      http.Header
 13150  }
 13151  
 13152  // List: Lists mute configs.
 13153  //
 13154  //   - parent: The parent, which owns the collection of mute configs. Its format
 13155  //     is "organizations/[organization_id]", "folders/[folder_id]",
 13156  //     "projects/[project_id]".
 13157  func (r *FoldersLocationsMuteConfigsService) List(parent string) *FoldersLocationsMuteConfigsListCall {
 13158  	c := &FoldersLocationsMuteConfigsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13159  	c.parent = parent
 13160  	return c
 13161  }
 13162  
 13163  // PageSize sets the optional parameter "pageSize": The maximum number of
 13164  // configs to return. The service may return fewer than this value. If
 13165  // unspecified, at most 10 configs will be returned. The maximum value is 1000;
 13166  // values above 1000 will be coerced to 1000.
 13167  func (c *FoldersLocationsMuteConfigsListCall) PageSize(pageSize int64) *FoldersLocationsMuteConfigsListCall {
 13168  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 13169  	return c
 13170  }
 13171  
 13172  // PageToken sets the optional parameter "pageToken": A page token, received
 13173  // from a previous `ListMuteConfigs` call. Provide this to retrieve the
 13174  // subsequent page. When paginating, all other parameters provided to
 13175  // `ListMuteConfigs` must match the call that provided the page token.
 13176  func (c *FoldersLocationsMuteConfigsListCall) PageToken(pageToken string) *FoldersLocationsMuteConfigsListCall {
 13177  	c.urlParams_.Set("pageToken", pageToken)
 13178  	return c
 13179  }
 13180  
 13181  // Fields allows partial responses to be retrieved. See
 13182  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13183  // details.
 13184  func (c *FoldersLocationsMuteConfigsListCall) Fields(s ...googleapi.Field) *FoldersLocationsMuteConfigsListCall {
 13185  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13186  	return c
 13187  }
 13188  
 13189  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13190  // object's ETag matches the given value. This is useful for getting updates
 13191  // only after the object has changed since the last request.
 13192  func (c *FoldersLocationsMuteConfigsListCall) IfNoneMatch(entityTag string) *FoldersLocationsMuteConfigsListCall {
 13193  	c.ifNoneMatch_ = entityTag
 13194  	return c
 13195  }
 13196  
 13197  // Context sets the context to be used in this call's Do method.
 13198  func (c *FoldersLocationsMuteConfigsListCall) Context(ctx context.Context) *FoldersLocationsMuteConfigsListCall {
 13199  	c.ctx_ = ctx
 13200  	return c
 13201  }
 13202  
 13203  // Header returns a http.Header that can be modified by the caller to add
 13204  // headers to the request.
 13205  func (c *FoldersLocationsMuteConfigsListCall) Header() http.Header {
 13206  	if c.header_ == nil {
 13207  		c.header_ = make(http.Header)
 13208  	}
 13209  	return c.header_
 13210  }
 13211  
 13212  func (c *FoldersLocationsMuteConfigsListCall) doRequest(alt string) (*http.Response, error) {
 13213  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13214  	if c.ifNoneMatch_ != "" {
 13215  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13216  	}
 13217  	var body io.Reader = nil
 13218  	c.urlParams_.Set("alt", alt)
 13219  	c.urlParams_.Set("prettyPrint", "false")
 13220  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}")
 13221  	urls += "?" + c.urlParams_.Encode()
 13222  	req, err := http.NewRequest("GET", urls, body)
 13223  	if err != nil {
 13224  		return nil, err
 13225  	}
 13226  	req.Header = reqHeaders
 13227  	googleapi.Expand(req.URL, map[string]string{
 13228  		"parent": c.parent,
 13229  	})
 13230  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13231  }
 13232  
 13233  // Do executes the "securitycenter.folders.locations.muteConfigs.list" call.
 13234  // Any non-2xx status code is an error. Response headers are in either
 13235  // *ListMuteConfigsResponse.ServerResponse.Header or (if a response was
 13236  // returned at all) in error.(*googleapi.Error).Header. Use
 13237  // googleapi.IsNotModified to check whether the returned error was because
 13238  // http.StatusNotModified was returned.
 13239  func (c *FoldersLocationsMuteConfigsListCall) Do(opts ...googleapi.CallOption) (*ListMuteConfigsResponse, error) {
 13240  	gensupport.SetOptions(c.urlParams_, opts...)
 13241  	res, err := c.doRequest("json")
 13242  	if res != nil && res.StatusCode == http.StatusNotModified {
 13243  		if res.Body != nil {
 13244  			res.Body.Close()
 13245  		}
 13246  		return nil, gensupport.WrapError(&googleapi.Error{
 13247  			Code:   res.StatusCode,
 13248  			Header: res.Header,
 13249  		})
 13250  	}
 13251  	if err != nil {
 13252  		return nil, err
 13253  	}
 13254  	defer googleapi.CloseBody(res)
 13255  	if err := googleapi.CheckResponse(res); err != nil {
 13256  		return nil, gensupport.WrapError(err)
 13257  	}
 13258  	ret := &ListMuteConfigsResponse{
 13259  		ServerResponse: googleapi.ServerResponse{
 13260  			Header:         res.Header,
 13261  			HTTPStatusCode: res.StatusCode,
 13262  		},
 13263  	}
 13264  	target := &ret
 13265  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13266  		return nil, err
 13267  	}
 13268  	return ret, nil
 13269  }
 13270  
 13271  // Pages invokes f for each page of results.
 13272  // A non-nil error returned from f will halt the iteration.
 13273  // The provided context supersedes any context provided to the Context method.
 13274  func (c *FoldersLocationsMuteConfigsListCall) Pages(ctx context.Context, f func(*ListMuteConfigsResponse) error) error {
 13275  	c.ctx_ = ctx
 13276  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 13277  	for {
 13278  		x, err := c.Do()
 13279  		if err != nil {
 13280  			return err
 13281  		}
 13282  		if err := f(x); err != nil {
 13283  			return err
 13284  		}
 13285  		if x.NextPageToken == "" {
 13286  			return nil
 13287  		}
 13288  		c.PageToken(x.NextPageToken)
 13289  	}
 13290  }
 13291  
 13292  type FoldersLocationsMuteConfigsPatchCall struct {
 13293  	s                                     *Service
 13294  	name                                  string
 13295  	googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig
 13296  	urlParams_                            gensupport.URLParams
 13297  	ctx_                                  context.Context
 13298  	header_                               http.Header
 13299  }
 13300  
 13301  // Patch: Updates a mute config.
 13302  //
 13303  //   - name: This field will be ignored if provided on config creation. Format
 13304  //     "organizations/{organization}/muteConfigs/{mute_config}"
 13305  //     "folders/{folder}/muteConfigs/{mute_config}"
 13306  //     "projects/{project}/muteConfigs/{mute_config}"
 13307  //     "organizations/{organization}/locations/global/muteConfigs/{mute_config}"
 13308  //     "folders/{folder}/locations/global/muteConfigs/{mute_config}"
 13309  //     "projects/{project}/locations/global/muteConfigs/{mute_config}".
 13310  func (r *FoldersLocationsMuteConfigsService) Patch(name string, googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig) *FoldersLocationsMuteConfigsPatchCall {
 13311  	c := &FoldersLocationsMuteConfigsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13312  	c.name = name
 13313  	c.googlecloudsecuritycenterv1muteconfig = googlecloudsecuritycenterv1muteconfig
 13314  	return c
 13315  }
 13316  
 13317  // UpdateMask sets the optional parameter "updateMask": The list of fields to
 13318  // be updated. If empty all mutable fields will be updated.
 13319  func (c *FoldersLocationsMuteConfigsPatchCall) UpdateMask(updateMask string) *FoldersLocationsMuteConfigsPatchCall {
 13320  	c.urlParams_.Set("updateMask", updateMask)
 13321  	return c
 13322  }
 13323  
 13324  // Fields allows partial responses to be retrieved. See
 13325  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13326  // details.
 13327  func (c *FoldersLocationsMuteConfigsPatchCall) Fields(s ...googleapi.Field) *FoldersLocationsMuteConfigsPatchCall {
 13328  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13329  	return c
 13330  }
 13331  
 13332  // Context sets the context to be used in this call's Do method.
 13333  func (c *FoldersLocationsMuteConfigsPatchCall) Context(ctx context.Context) *FoldersLocationsMuteConfigsPatchCall {
 13334  	c.ctx_ = ctx
 13335  	return c
 13336  }
 13337  
 13338  // Header returns a http.Header that can be modified by the caller to add
 13339  // headers to the request.
 13340  func (c *FoldersLocationsMuteConfigsPatchCall) Header() http.Header {
 13341  	if c.header_ == nil {
 13342  		c.header_ = make(http.Header)
 13343  	}
 13344  	return c.header_
 13345  }
 13346  
 13347  func (c *FoldersLocationsMuteConfigsPatchCall) doRequest(alt string) (*http.Response, error) {
 13348  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 13349  	var body io.Reader = nil
 13350  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1muteconfig)
 13351  	if err != nil {
 13352  		return nil, err
 13353  	}
 13354  	c.urlParams_.Set("alt", alt)
 13355  	c.urlParams_.Set("prettyPrint", "false")
 13356  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 13357  	urls += "?" + c.urlParams_.Encode()
 13358  	req, err := http.NewRequest("PATCH", urls, body)
 13359  	if err != nil {
 13360  		return nil, err
 13361  	}
 13362  	req.Header = reqHeaders
 13363  	googleapi.Expand(req.URL, map[string]string{
 13364  		"name": c.name,
 13365  	})
 13366  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13367  }
 13368  
 13369  // Do executes the "securitycenter.folders.locations.muteConfigs.patch" call.
 13370  // Any non-2xx status code is an error. Response headers are in either
 13371  // *GoogleCloudSecuritycenterV1MuteConfig.ServerResponse.Header or (if a
 13372  // response was returned at all) in error.(*googleapi.Error).Header. Use
 13373  // googleapi.IsNotModified to check whether the returned error was because
 13374  // http.StatusNotModified was returned.
 13375  func (c *FoldersLocationsMuteConfigsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1MuteConfig, error) {
 13376  	gensupport.SetOptions(c.urlParams_, opts...)
 13377  	res, err := c.doRequest("json")
 13378  	if res != nil && res.StatusCode == http.StatusNotModified {
 13379  		if res.Body != nil {
 13380  			res.Body.Close()
 13381  		}
 13382  		return nil, gensupport.WrapError(&googleapi.Error{
 13383  			Code:   res.StatusCode,
 13384  			Header: res.Header,
 13385  		})
 13386  	}
 13387  	if err != nil {
 13388  		return nil, err
 13389  	}
 13390  	defer googleapi.CloseBody(res)
 13391  	if err := googleapi.CheckResponse(res); err != nil {
 13392  		return nil, gensupport.WrapError(err)
 13393  	}
 13394  	ret := &GoogleCloudSecuritycenterV1MuteConfig{
 13395  		ServerResponse: googleapi.ServerResponse{
 13396  			Header:         res.Header,
 13397  			HTTPStatusCode: res.StatusCode,
 13398  		},
 13399  	}
 13400  	target := &ret
 13401  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13402  		return nil, err
 13403  	}
 13404  	return ret, nil
 13405  }
 13406  
 13407  type FoldersMuteConfigsCreateCall struct {
 13408  	s                                     *Service
 13409  	parent                                string
 13410  	googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig
 13411  	urlParams_                            gensupport.URLParams
 13412  	ctx_                                  context.Context
 13413  	header_                               http.Header
 13414  }
 13415  
 13416  // Create: Creates a mute config.
 13417  //
 13418  //   - parent: Resource name of the new mute configs's parent. Its format is
 13419  //     "organizations/[organization_id]", "folders/[folder_id]", or
 13420  //     "projects/[project_id]".
 13421  func (r *FoldersMuteConfigsService) Create(parent string, googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig) *FoldersMuteConfigsCreateCall {
 13422  	c := &FoldersMuteConfigsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13423  	c.parent = parent
 13424  	c.googlecloudsecuritycenterv1muteconfig = googlecloudsecuritycenterv1muteconfig
 13425  	return c
 13426  }
 13427  
 13428  // MuteConfigId sets the optional parameter "muteConfigId": Required. Unique
 13429  // identifier provided by the client within the parent scope. It must consist
 13430  // of only lowercase letters, numbers, and hyphens, must start with a letter,
 13431  // must end with either a letter or a number, and must be 63 characters or
 13432  // less.
 13433  func (c *FoldersMuteConfigsCreateCall) MuteConfigId(muteConfigId string) *FoldersMuteConfigsCreateCall {
 13434  	c.urlParams_.Set("muteConfigId", muteConfigId)
 13435  	return c
 13436  }
 13437  
 13438  // Fields allows partial responses to be retrieved. See
 13439  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13440  // details.
 13441  func (c *FoldersMuteConfigsCreateCall) Fields(s ...googleapi.Field) *FoldersMuteConfigsCreateCall {
 13442  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13443  	return c
 13444  }
 13445  
 13446  // Context sets the context to be used in this call's Do method.
 13447  func (c *FoldersMuteConfigsCreateCall) Context(ctx context.Context) *FoldersMuteConfigsCreateCall {
 13448  	c.ctx_ = ctx
 13449  	return c
 13450  }
 13451  
 13452  // Header returns a http.Header that can be modified by the caller to add
 13453  // headers to the request.
 13454  func (c *FoldersMuteConfigsCreateCall) Header() http.Header {
 13455  	if c.header_ == nil {
 13456  		c.header_ = make(http.Header)
 13457  	}
 13458  	return c.header_
 13459  }
 13460  
 13461  func (c *FoldersMuteConfigsCreateCall) doRequest(alt string) (*http.Response, error) {
 13462  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 13463  	var body io.Reader = nil
 13464  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1muteconfig)
 13465  	if err != nil {
 13466  		return nil, err
 13467  	}
 13468  	c.urlParams_.Set("alt", alt)
 13469  	c.urlParams_.Set("prettyPrint", "false")
 13470  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/muteConfigs")
 13471  	urls += "?" + c.urlParams_.Encode()
 13472  	req, err := http.NewRequest("POST", urls, body)
 13473  	if err != nil {
 13474  		return nil, err
 13475  	}
 13476  	req.Header = reqHeaders
 13477  	googleapi.Expand(req.URL, map[string]string{
 13478  		"parent": c.parent,
 13479  	})
 13480  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13481  }
 13482  
 13483  // Do executes the "securitycenter.folders.muteConfigs.create" call.
 13484  // Any non-2xx status code is an error. Response headers are in either
 13485  // *GoogleCloudSecuritycenterV1MuteConfig.ServerResponse.Header or (if a
 13486  // response was returned at all) in error.(*googleapi.Error).Header. Use
 13487  // googleapi.IsNotModified to check whether the returned error was because
 13488  // http.StatusNotModified was returned.
 13489  func (c *FoldersMuteConfigsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1MuteConfig, error) {
 13490  	gensupport.SetOptions(c.urlParams_, opts...)
 13491  	res, err := c.doRequest("json")
 13492  	if res != nil && res.StatusCode == http.StatusNotModified {
 13493  		if res.Body != nil {
 13494  			res.Body.Close()
 13495  		}
 13496  		return nil, gensupport.WrapError(&googleapi.Error{
 13497  			Code:   res.StatusCode,
 13498  			Header: res.Header,
 13499  		})
 13500  	}
 13501  	if err != nil {
 13502  		return nil, err
 13503  	}
 13504  	defer googleapi.CloseBody(res)
 13505  	if err := googleapi.CheckResponse(res); err != nil {
 13506  		return nil, gensupport.WrapError(err)
 13507  	}
 13508  	ret := &GoogleCloudSecuritycenterV1MuteConfig{
 13509  		ServerResponse: googleapi.ServerResponse{
 13510  			Header:         res.Header,
 13511  			HTTPStatusCode: res.StatusCode,
 13512  		},
 13513  	}
 13514  	target := &ret
 13515  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13516  		return nil, err
 13517  	}
 13518  	return ret, nil
 13519  }
 13520  
 13521  type FoldersMuteConfigsDeleteCall struct {
 13522  	s          *Service
 13523  	name       string
 13524  	urlParams_ gensupport.URLParams
 13525  	ctx_       context.Context
 13526  	header_    http.Header
 13527  }
 13528  
 13529  // Delete: Deletes an existing mute config.
 13530  //
 13531  //   - name: Name of the mute config to delete. Its format is
 13532  //     organizations/{organization}/muteConfigs/{config_id},
 13533  //     folders/{folder}/muteConfigs/{config_id},
 13534  //     projects/{project}/muteConfigs/{config_id},
 13535  //     organizations/{organization}/locations/global/muteConfigs/{config_id},
 13536  //     folders/{folder}/locations/global/muteConfigs/{config_id}, or
 13537  //     projects/{project}/locations/global/muteConfigs/{config_id}.
 13538  func (r *FoldersMuteConfigsService) Delete(name string) *FoldersMuteConfigsDeleteCall {
 13539  	c := &FoldersMuteConfigsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13540  	c.name = name
 13541  	return c
 13542  }
 13543  
 13544  // Fields allows partial responses to be retrieved. See
 13545  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13546  // details.
 13547  func (c *FoldersMuteConfigsDeleteCall) Fields(s ...googleapi.Field) *FoldersMuteConfigsDeleteCall {
 13548  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13549  	return c
 13550  }
 13551  
 13552  // Context sets the context to be used in this call's Do method.
 13553  func (c *FoldersMuteConfigsDeleteCall) Context(ctx context.Context) *FoldersMuteConfigsDeleteCall {
 13554  	c.ctx_ = ctx
 13555  	return c
 13556  }
 13557  
 13558  // Header returns a http.Header that can be modified by the caller to add
 13559  // headers to the request.
 13560  func (c *FoldersMuteConfigsDeleteCall) Header() http.Header {
 13561  	if c.header_ == nil {
 13562  		c.header_ = make(http.Header)
 13563  	}
 13564  	return c.header_
 13565  }
 13566  
 13567  func (c *FoldersMuteConfigsDeleteCall) doRequest(alt string) (*http.Response, error) {
 13568  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13569  	var body io.Reader = nil
 13570  	c.urlParams_.Set("alt", alt)
 13571  	c.urlParams_.Set("prettyPrint", "false")
 13572  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 13573  	urls += "?" + c.urlParams_.Encode()
 13574  	req, err := http.NewRequest("DELETE", urls, body)
 13575  	if err != nil {
 13576  		return nil, err
 13577  	}
 13578  	req.Header = reqHeaders
 13579  	googleapi.Expand(req.URL, map[string]string{
 13580  		"name": c.name,
 13581  	})
 13582  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13583  }
 13584  
 13585  // Do executes the "securitycenter.folders.muteConfigs.delete" call.
 13586  // Any non-2xx status code is an error. Response headers are in either
 13587  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 13588  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 13589  // whether the returned error was because http.StatusNotModified was returned.
 13590  func (c *FoldersMuteConfigsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 13591  	gensupport.SetOptions(c.urlParams_, opts...)
 13592  	res, err := c.doRequest("json")
 13593  	if res != nil && res.StatusCode == http.StatusNotModified {
 13594  		if res.Body != nil {
 13595  			res.Body.Close()
 13596  		}
 13597  		return nil, gensupport.WrapError(&googleapi.Error{
 13598  			Code:   res.StatusCode,
 13599  			Header: res.Header,
 13600  		})
 13601  	}
 13602  	if err != nil {
 13603  		return nil, err
 13604  	}
 13605  	defer googleapi.CloseBody(res)
 13606  	if err := googleapi.CheckResponse(res); err != nil {
 13607  		return nil, gensupport.WrapError(err)
 13608  	}
 13609  	ret := &Empty{
 13610  		ServerResponse: googleapi.ServerResponse{
 13611  			Header:         res.Header,
 13612  			HTTPStatusCode: res.StatusCode,
 13613  		},
 13614  	}
 13615  	target := &ret
 13616  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13617  		return nil, err
 13618  	}
 13619  	return ret, nil
 13620  }
 13621  
 13622  type FoldersMuteConfigsGetCall struct {
 13623  	s            *Service
 13624  	name         string
 13625  	urlParams_   gensupport.URLParams
 13626  	ifNoneMatch_ string
 13627  	ctx_         context.Context
 13628  	header_      http.Header
 13629  }
 13630  
 13631  // Get: Gets a mute config.
 13632  //
 13633  //   - name: Name of the mute config to retrieve. Its format is
 13634  //     organizations/{organization}/muteConfigs/{config_id},
 13635  //     folders/{folder}/muteConfigs/{config_id},
 13636  //     projects/{project}/muteConfigs/{config_id},
 13637  //     organizations/{organization}/locations/global/muteConfigs/{config_id},
 13638  //     folders/{folder}/locations/global/muteConfigs/{config_id}, or
 13639  //     projects/{project}/locations/global/muteConfigs/{config_id}.
 13640  func (r *FoldersMuteConfigsService) Get(name string) *FoldersMuteConfigsGetCall {
 13641  	c := &FoldersMuteConfigsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13642  	c.name = name
 13643  	return c
 13644  }
 13645  
 13646  // Fields allows partial responses to be retrieved. See
 13647  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13648  // details.
 13649  func (c *FoldersMuteConfigsGetCall) Fields(s ...googleapi.Field) *FoldersMuteConfigsGetCall {
 13650  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13651  	return c
 13652  }
 13653  
 13654  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13655  // object's ETag matches the given value. This is useful for getting updates
 13656  // only after the object has changed since the last request.
 13657  func (c *FoldersMuteConfigsGetCall) IfNoneMatch(entityTag string) *FoldersMuteConfigsGetCall {
 13658  	c.ifNoneMatch_ = entityTag
 13659  	return c
 13660  }
 13661  
 13662  // Context sets the context to be used in this call's Do method.
 13663  func (c *FoldersMuteConfigsGetCall) Context(ctx context.Context) *FoldersMuteConfigsGetCall {
 13664  	c.ctx_ = ctx
 13665  	return c
 13666  }
 13667  
 13668  // Header returns a http.Header that can be modified by the caller to add
 13669  // headers to the request.
 13670  func (c *FoldersMuteConfigsGetCall) Header() http.Header {
 13671  	if c.header_ == nil {
 13672  		c.header_ = make(http.Header)
 13673  	}
 13674  	return c.header_
 13675  }
 13676  
 13677  func (c *FoldersMuteConfigsGetCall) doRequest(alt string) (*http.Response, error) {
 13678  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13679  	if c.ifNoneMatch_ != "" {
 13680  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13681  	}
 13682  	var body io.Reader = nil
 13683  	c.urlParams_.Set("alt", alt)
 13684  	c.urlParams_.Set("prettyPrint", "false")
 13685  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 13686  	urls += "?" + c.urlParams_.Encode()
 13687  	req, err := http.NewRequest("GET", urls, body)
 13688  	if err != nil {
 13689  		return nil, err
 13690  	}
 13691  	req.Header = reqHeaders
 13692  	googleapi.Expand(req.URL, map[string]string{
 13693  		"name": c.name,
 13694  	})
 13695  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13696  }
 13697  
 13698  // Do executes the "securitycenter.folders.muteConfigs.get" call.
 13699  // Any non-2xx status code is an error. Response headers are in either
 13700  // *GoogleCloudSecuritycenterV1MuteConfig.ServerResponse.Header or (if a
 13701  // response was returned at all) in error.(*googleapi.Error).Header. Use
 13702  // googleapi.IsNotModified to check whether the returned error was because
 13703  // http.StatusNotModified was returned.
 13704  func (c *FoldersMuteConfigsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1MuteConfig, error) {
 13705  	gensupport.SetOptions(c.urlParams_, opts...)
 13706  	res, err := c.doRequest("json")
 13707  	if res != nil && res.StatusCode == http.StatusNotModified {
 13708  		if res.Body != nil {
 13709  			res.Body.Close()
 13710  		}
 13711  		return nil, gensupport.WrapError(&googleapi.Error{
 13712  			Code:   res.StatusCode,
 13713  			Header: res.Header,
 13714  		})
 13715  	}
 13716  	if err != nil {
 13717  		return nil, err
 13718  	}
 13719  	defer googleapi.CloseBody(res)
 13720  	if err := googleapi.CheckResponse(res); err != nil {
 13721  		return nil, gensupport.WrapError(err)
 13722  	}
 13723  	ret := &GoogleCloudSecuritycenterV1MuteConfig{
 13724  		ServerResponse: googleapi.ServerResponse{
 13725  			Header:         res.Header,
 13726  			HTTPStatusCode: res.StatusCode,
 13727  		},
 13728  	}
 13729  	target := &ret
 13730  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13731  		return nil, err
 13732  	}
 13733  	return ret, nil
 13734  }
 13735  
 13736  type FoldersMuteConfigsListCall struct {
 13737  	s            *Service
 13738  	parent       string
 13739  	urlParams_   gensupport.URLParams
 13740  	ifNoneMatch_ string
 13741  	ctx_         context.Context
 13742  	header_      http.Header
 13743  }
 13744  
 13745  // List: Lists mute configs.
 13746  //
 13747  //   - parent: The parent, which owns the collection of mute configs. Its format
 13748  //     is "organizations/[organization_id]", "folders/[folder_id]",
 13749  //     "projects/[project_id]".
 13750  func (r *FoldersMuteConfigsService) List(parent string) *FoldersMuteConfigsListCall {
 13751  	c := &FoldersMuteConfigsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13752  	c.parent = parent
 13753  	return c
 13754  }
 13755  
 13756  // PageSize sets the optional parameter "pageSize": The maximum number of
 13757  // configs to return. The service may return fewer than this value. If
 13758  // unspecified, at most 10 configs will be returned. The maximum value is 1000;
 13759  // values above 1000 will be coerced to 1000.
 13760  func (c *FoldersMuteConfigsListCall) PageSize(pageSize int64) *FoldersMuteConfigsListCall {
 13761  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 13762  	return c
 13763  }
 13764  
 13765  // PageToken sets the optional parameter "pageToken": A page token, received
 13766  // from a previous `ListMuteConfigs` call. Provide this to retrieve the
 13767  // subsequent page. When paginating, all other parameters provided to
 13768  // `ListMuteConfigs` must match the call that provided the page token.
 13769  func (c *FoldersMuteConfigsListCall) PageToken(pageToken string) *FoldersMuteConfigsListCall {
 13770  	c.urlParams_.Set("pageToken", pageToken)
 13771  	return c
 13772  }
 13773  
 13774  // Fields allows partial responses to be retrieved. See
 13775  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13776  // details.
 13777  func (c *FoldersMuteConfigsListCall) Fields(s ...googleapi.Field) *FoldersMuteConfigsListCall {
 13778  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13779  	return c
 13780  }
 13781  
 13782  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13783  // object's ETag matches the given value. This is useful for getting updates
 13784  // only after the object has changed since the last request.
 13785  func (c *FoldersMuteConfigsListCall) IfNoneMatch(entityTag string) *FoldersMuteConfigsListCall {
 13786  	c.ifNoneMatch_ = entityTag
 13787  	return c
 13788  }
 13789  
 13790  // Context sets the context to be used in this call's Do method.
 13791  func (c *FoldersMuteConfigsListCall) Context(ctx context.Context) *FoldersMuteConfigsListCall {
 13792  	c.ctx_ = ctx
 13793  	return c
 13794  }
 13795  
 13796  // Header returns a http.Header that can be modified by the caller to add
 13797  // headers to the request.
 13798  func (c *FoldersMuteConfigsListCall) Header() http.Header {
 13799  	if c.header_ == nil {
 13800  		c.header_ = make(http.Header)
 13801  	}
 13802  	return c.header_
 13803  }
 13804  
 13805  func (c *FoldersMuteConfigsListCall) doRequest(alt string) (*http.Response, error) {
 13806  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13807  	if c.ifNoneMatch_ != "" {
 13808  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13809  	}
 13810  	var body io.Reader = nil
 13811  	c.urlParams_.Set("alt", alt)
 13812  	c.urlParams_.Set("prettyPrint", "false")
 13813  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/muteConfigs")
 13814  	urls += "?" + c.urlParams_.Encode()
 13815  	req, err := http.NewRequest("GET", urls, body)
 13816  	if err != nil {
 13817  		return nil, err
 13818  	}
 13819  	req.Header = reqHeaders
 13820  	googleapi.Expand(req.URL, map[string]string{
 13821  		"parent": c.parent,
 13822  	})
 13823  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13824  }
 13825  
 13826  // Do executes the "securitycenter.folders.muteConfigs.list" call.
 13827  // Any non-2xx status code is an error. Response headers are in either
 13828  // *ListMuteConfigsResponse.ServerResponse.Header or (if a response was
 13829  // returned at all) in error.(*googleapi.Error).Header. Use
 13830  // googleapi.IsNotModified to check whether the returned error was because
 13831  // http.StatusNotModified was returned.
 13832  func (c *FoldersMuteConfigsListCall) Do(opts ...googleapi.CallOption) (*ListMuteConfigsResponse, error) {
 13833  	gensupport.SetOptions(c.urlParams_, opts...)
 13834  	res, err := c.doRequest("json")
 13835  	if res != nil && res.StatusCode == http.StatusNotModified {
 13836  		if res.Body != nil {
 13837  			res.Body.Close()
 13838  		}
 13839  		return nil, gensupport.WrapError(&googleapi.Error{
 13840  			Code:   res.StatusCode,
 13841  			Header: res.Header,
 13842  		})
 13843  	}
 13844  	if err != nil {
 13845  		return nil, err
 13846  	}
 13847  	defer googleapi.CloseBody(res)
 13848  	if err := googleapi.CheckResponse(res); err != nil {
 13849  		return nil, gensupport.WrapError(err)
 13850  	}
 13851  	ret := &ListMuteConfigsResponse{
 13852  		ServerResponse: googleapi.ServerResponse{
 13853  			Header:         res.Header,
 13854  			HTTPStatusCode: res.StatusCode,
 13855  		},
 13856  	}
 13857  	target := &ret
 13858  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13859  		return nil, err
 13860  	}
 13861  	return ret, nil
 13862  }
 13863  
 13864  // Pages invokes f for each page of results.
 13865  // A non-nil error returned from f will halt the iteration.
 13866  // The provided context supersedes any context provided to the Context method.
 13867  func (c *FoldersMuteConfigsListCall) Pages(ctx context.Context, f func(*ListMuteConfigsResponse) error) error {
 13868  	c.ctx_ = ctx
 13869  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 13870  	for {
 13871  		x, err := c.Do()
 13872  		if err != nil {
 13873  			return err
 13874  		}
 13875  		if err := f(x); err != nil {
 13876  			return err
 13877  		}
 13878  		if x.NextPageToken == "" {
 13879  			return nil
 13880  		}
 13881  		c.PageToken(x.NextPageToken)
 13882  	}
 13883  }
 13884  
 13885  type FoldersMuteConfigsPatchCall struct {
 13886  	s                                     *Service
 13887  	name                                  string
 13888  	googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig
 13889  	urlParams_                            gensupport.URLParams
 13890  	ctx_                                  context.Context
 13891  	header_                               http.Header
 13892  }
 13893  
 13894  // Patch: Updates a mute config.
 13895  //
 13896  //   - name: This field will be ignored if provided on config creation. Format
 13897  //     "organizations/{organization}/muteConfigs/{mute_config}"
 13898  //     "folders/{folder}/muteConfigs/{mute_config}"
 13899  //     "projects/{project}/muteConfigs/{mute_config}"
 13900  //     "organizations/{organization}/locations/global/muteConfigs/{mute_config}"
 13901  //     "folders/{folder}/locations/global/muteConfigs/{mute_config}"
 13902  //     "projects/{project}/locations/global/muteConfigs/{mute_config}".
 13903  func (r *FoldersMuteConfigsService) Patch(name string, googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig) *FoldersMuteConfigsPatchCall {
 13904  	c := &FoldersMuteConfigsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13905  	c.name = name
 13906  	c.googlecloudsecuritycenterv1muteconfig = googlecloudsecuritycenterv1muteconfig
 13907  	return c
 13908  }
 13909  
 13910  // UpdateMask sets the optional parameter "updateMask": The list of fields to
 13911  // be updated. If empty all mutable fields will be updated.
 13912  func (c *FoldersMuteConfigsPatchCall) UpdateMask(updateMask string) *FoldersMuteConfigsPatchCall {
 13913  	c.urlParams_.Set("updateMask", updateMask)
 13914  	return c
 13915  }
 13916  
 13917  // Fields allows partial responses to be retrieved. See
 13918  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13919  // details.
 13920  func (c *FoldersMuteConfigsPatchCall) Fields(s ...googleapi.Field) *FoldersMuteConfigsPatchCall {
 13921  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13922  	return c
 13923  }
 13924  
 13925  // Context sets the context to be used in this call's Do method.
 13926  func (c *FoldersMuteConfigsPatchCall) Context(ctx context.Context) *FoldersMuteConfigsPatchCall {
 13927  	c.ctx_ = ctx
 13928  	return c
 13929  }
 13930  
 13931  // Header returns a http.Header that can be modified by the caller to add
 13932  // headers to the request.
 13933  func (c *FoldersMuteConfigsPatchCall) Header() http.Header {
 13934  	if c.header_ == nil {
 13935  		c.header_ = make(http.Header)
 13936  	}
 13937  	return c.header_
 13938  }
 13939  
 13940  func (c *FoldersMuteConfigsPatchCall) doRequest(alt string) (*http.Response, error) {
 13941  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 13942  	var body io.Reader = nil
 13943  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1muteconfig)
 13944  	if err != nil {
 13945  		return nil, err
 13946  	}
 13947  	c.urlParams_.Set("alt", alt)
 13948  	c.urlParams_.Set("prettyPrint", "false")
 13949  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 13950  	urls += "?" + c.urlParams_.Encode()
 13951  	req, err := http.NewRequest("PATCH", urls, body)
 13952  	if err != nil {
 13953  		return nil, err
 13954  	}
 13955  	req.Header = reqHeaders
 13956  	googleapi.Expand(req.URL, map[string]string{
 13957  		"name": c.name,
 13958  	})
 13959  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13960  }
 13961  
 13962  // Do executes the "securitycenter.folders.muteConfigs.patch" call.
 13963  // Any non-2xx status code is an error. Response headers are in either
 13964  // *GoogleCloudSecuritycenterV1MuteConfig.ServerResponse.Header or (if a
 13965  // response was returned at all) in error.(*googleapi.Error).Header. Use
 13966  // googleapi.IsNotModified to check whether the returned error was because
 13967  // http.StatusNotModified was returned.
 13968  func (c *FoldersMuteConfigsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1MuteConfig, error) {
 13969  	gensupport.SetOptions(c.urlParams_, opts...)
 13970  	res, err := c.doRequest("json")
 13971  	if res != nil && res.StatusCode == http.StatusNotModified {
 13972  		if res.Body != nil {
 13973  			res.Body.Close()
 13974  		}
 13975  		return nil, gensupport.WrapError(&googleapi.Error{
 13976  			Code:   res.StatusCode,
 13977  			Header: res.Header,
 13978  		})
 13979  	}
 13980  	if err != nil {
 13981  		return nil, err
 13982  	}
 13983  	defer googleapi.CloseBody(res)
 13984  	if err := googleapi.CheckResponse(res); err != nil {
 13985  		return nil, gensupport.WrapError(err)
 13986  	}
 13987  	ret := &GoogleCloudSecuritycenterV1MuteConfig{
 13988  		ServerResponse: googleapi.ServerResponse{
 13989  			Header:         res.Header,
 13990  			HTTPStatusCode: res.StatusCode,
 13991  		},
 13992  	}
 13993  	target := &ret
 13994  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13995  		return nil, err
 13996  	}
 13997  	return ret, nil
 13998  }
 13999  
 14000  type FoldersNotificationConfigsCreateCall struct {
 14001  	s                  *Service
 14002  	parent             string
 14003  	notificationconfig *NotificationConfig
 14004  	urlParams_         gensupport.URLParams
 14005  	ctx_               context.Context
 14006  	header_            http.Header
 14007  }
 14008  
 14009  // Create: Creates a notification config.
 14010  //
 14011  //   - parent: Resource name of the new notification config's parent. Its format
 14012  //     is "organizations/[organization_id]", "folders/[folder_id]", or
 14013  //     "projects/[project_id]".
 14014  func (r *FoldersNotificationConfigsService) Create(parent string, notificationconfig *NotificationConfig) *FoldersNotificationConfigsCreateCall {
 14015  	c := &FoldersNotificationConfigsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14016  	c.parent = parent
 14017  	c.notificationconfig = notificationconfig
 14018  	return c
 14019  }
 14020  
 14021  // ConfigId sets the optional parameter "configId": Required. Unique identifier
 14022  // provided by the client within the parent scope. It must be between 1 and 128
 14023  // characters and contain alphanumeric characters, underscores, or hyphens
 14024  // only.
 14025  func (c *FoldersNotificationConfigsCreateCall) ConfigId(configId string) *FoldersNotificationConfigsCreateCall {
 14026  	c.urlParams_.Set("configId", configId)
 14027  	return c
 14028  }
 14029  
 14030  // Fields allows partial responses to be retrieved. See
 14031  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14032  // details.
 14033  func (c *FoldersNotificationConfigsCreateCall) Fields(s ...googleapi.Field) *FoldersNotificationConfigsCreateCall {
 14034  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14035  	return c
 14036  }
 14037  
 14038  // Context sets the context to be used in this call's Do method.
 14039  func (c *FoldersNotificationConfigsCreateCall) Context(ctx context.Context) *FoldersNotificationConfigsCreateCall {
 14040  	c.ctx_ = ctx
 14041  	return c
 14042  }
 14043  
 14044  // Header returns a http.Header that can be modified by the caller to add
 14045  // headers to the request.
 14046  func (c *FoldersNotificationConfigsCreateCall) Header() http.Header {
 14047  	if c.header_ == nil {
 14048  		c.header_ = make(http.Header)
 14049  	}
 14050  	return c.header_
 14051  }
 14052  
 14053  func (c *FoldersNotificationConfigsCreateCall) doRequest(alt string) (*http.Response, error) {
 14054  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 14055  	var body io.Reader = nil
 14056  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.notificationconfig)
 14057  	if err != nil {
 14058  		return nil, err
 14059  	}
 14060  	c.urlParams_.Set("alt", alt)
 14061  	c.urlParams_.Set("prettyPrint", "false")
 14062  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/notificationConfigs")
 14063  	urls += "?" + c.urlParams_.Encode()
 14064  	req, err := http.NewRequest("POST", urls, body)
 14065  	if err != nil {
 14066  		return nil, err
 14067  	}
 14068  	req.Header = reqHeaders
 14069  	googleapi.Expand(req.URL, map[string]string{
 14070  		"parent": c.parent,
 14071  	})
 14072  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14073  }
 14074  
 14075  // Do executes the "securitycenter.folders.notificationConfigs.create" call.
 14076  // Any non-2xx status code is an error. Response headers are in either
 14077  // *NotificationConfig.ServerResponse.Header or (if a response was returned at
 14078  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 14079  // check whether the returned error was because http.StatusNotModified was
 14080  // returned.
 14081  func (c *FoldersNotificationConfigsCreateCall) Do(opts ...googleapi.CallOption) (*NotificationConfig, error) {
 14082  	gensupport.SetOptions(c.urlParams_, opts...)
 14083  	res, err := c.doRequest("json")
 14084  	if res != nil && res.StatusCode == http.StatusNotModified {
 14085  		if res.Body != nil {
 14086  			res.Body.Close()
 14087  		}
 14088  		return nil, gensupport.WrapError(&googleapi.Error{
 14089  			Code:   res.StatusCode,
 14090  			Header: res.Header,
 14091  		})
 14092  	}
 14093  	if err != nil {
 14094  		return nil, err
 14095  	}
 14096  	defer googleapi.CloseBody(res)
 14097  	if err := googleapi.CheckResponse(res); err != nil {
 14098  		return nil, gensupport.WrapError(err)
 14099  	}
 14100  	ret := &NotificationConfig{
 14101  		ServerResponse: googleapi.ServerResponse{
 14102  			Header:         res.Header,
 14103  			HTTPStatusCode: res.StatusCode,
 14104  		},
 14105  	}
 14106  	target := &ret
 14107  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14108  		return nil, err
 14109  	}
 14110  	return ret, nil
 14111  }
 14112  
 14113  type FoldersNotificationConfigsDeleteCall struct {
 14114  	s          *Service
 14115  	name       string
 14116  	urlParams_ gensupport.URLParams
 14117  	ctx_       context.Context
 14118  	header_    http.Header
 14119  }
 14120  
 14121  // Delete: Deletes a notification config.
 14122  //
 14123  //   - name: Name of the notification config to delete. Its format is
 14124  //     "organizations/[organization_id]/notificationConfigs/[config_id]",
 14125  //     "folders/[folder_id]/notificationConfigs/[config_id]", or
 14126  //     "projects/[project_id]/notificationConfigs/[config_id]".
 14127  func (r *FoldersNotificationConfigsService) Delete(name string) *FoldersNotificationConfigsDeleteCall {
 14128  	c := &FoldersNotificationConfigsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14129  	c.name = name
 14130  	return c
 14131  }
 14132  
 14133  // Fields allows partial responses to be retrieved. See
 14134  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14135  // details.
 14136  func (c *FoldersNotificationConfigsDeleteCall) Fields(s ...googleapi.Field) *FoldersNotificationConfigsDeleteCall {
 14137  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14138  	return c
 14139  }
 14140  
 14141  // Context sets the context to be used in this call's Do method.
 14142  func (c *FoldersNotificationConfigsDeleteCall) Context(ctx context.Context) *FoldersNotificationConfigsDeleteCall {
 14143  	c.ctx_ = ctx
 14144  	return c
 14145  }
 14146  
 14147  // Header returns a http.Header that can be modified by the caller to add
 14148  // headers to the request.
 14149  func (c *FoldersNotificationConfigsDeleteCall) Header() http.Header {
 14150  	if c.header_ == nil {
 14151  		c.header_ = make(http.Header)
 14152  	}
 14153  	return c.header_
 14154  }
 14155  
 14156  func (c *FoldersNotificationConfigsDeleteCall) doRequest(alt string) (*http.Response, error) {
 14157  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14158  	var body io.Reader = nil
 14159  	c.urlParams_.Set("alt", alt)
 14160  	c.urlParams_.Set("prettyPrint", "false")
 14161  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 14162  	urls += "?" + c.urlParams_.Encode()
 14163  	req, err := http.NewRequest("DELETE", urls, body)
 14164  	if err != nil {
 14165  		return nil, err
 14166  	}
 14167  	req.Header = reqHeaders
 14168  	googleapi.Expand(req.URL, map[string]string{
 14169  		"name": c.name,
 14170  	})
 14171  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14172  }
 14173  
 14174  // Do executes the "securitycenter.folders.notificationConfigs.delete" call.
 14175  // Any non-2xx status code is an error. Response headers are in either
 14176  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 14177  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 14178  // whether the returned error was because http.StatusNotModified was returned.
 14179  func (c *FoldersNotificationConfigsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 14180  	gensupport.SetOptions(c.urlParams_, opts...)
 14181  	res, err := c.doRequest("json")
 14182  	if res != nil && res.StatusCode == http.StatusNotModified {
 14183  		if res.Body != nil {
 14184  			res.Body.Close()
 14185  		}
 14186  		return nil, gensupport.WrapError(&googleapi.Error{
 14187  			Code:   res.StatusCode,
 14188  			Header: res.Header,
 14189  		})
 14190  	}
 14191  	if err != nil {
 14192  		return nil, err
 14193  	}
 14194  	defer googleapi.CloseBody(res)
 14195  	if err := googleapi.CheckResponse(res); err != nil {
 14196  		return nil, gensupport.WrapError(err)
 14197  	}
 14198  	ret := &Empty{
 14199  		ServerResponse: googleapi.ServerResponse{
 14200  			Header:         res.Header,
 14201  			HTTPStatusCode: res.StatusCode,
 14202  		},
 14203  	}
 14204  	target := &ret
 14205  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14206  		return nil, err
 14207  	}
 14208  	return ret, nil
 14209  }
 14210  
 14211  type FoldersNotificationConfigsGetCall struct {
 14212  	s            *Service
 14213  	name         string
 14214  	urlParams_   gensupport.URLParams
 14215  	ifNoneMatch_ string
 14216  	ctx_         context.Context
 14217  	header_      http.Header
 14218  }
 14219  
 14220  // Get: Gets a notification config.
 14221  //
 14222  //   - name: Name of the notification config to get. Its format is
 14223  //     "organizations/[organization_id]/notificationConfigs/[config_id]",
 14224  //     "folders/[folder_id]/notificationConfigs/[config_id]", or
 14225  //     "projects/[project_id]/notificationConfigs/[config_id]".
 14226  func (r *FoldersNotificationConfigsService) Get(name string) *FoldersNotificationConfigsGetCall {
 14227  	c := &FoldersNotificationConfigsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14228  	c.name = name
 14229  	return c
 14230  }
 14231  
 14232  // Fields allows partial responses to be retrieved. See
 14233  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14234  // details.
 14235  func (c *FoldersNotificationConfigsGetCall) Fields(s ...googleapi.Field) *FoldersNotificationConfigsGetCall {
 14236  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14237  	return c
 14238  }
 14239  
 14240  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 14241  // object's ETag matches the given value. This is useful for getting updates
 14242  // only after the object has changed since the last request.
 14243  func (c *FoldersNotificationConfigsGetCall) IfNoneMatch(entityTag string) *FoldersNotificationConfigsGetCall {
 14244  	c.ifNoneMatch_ = entityTag
 14245  	return c
 14246  }
 14247  
 14248  // Context sets the context to be used in this call's Do method.
 14249  func (c *FoldersNotificationConfigsGetCall) Context(ctx context.Context) *FoldersNotificationConfigsGetCall {
 14250  	c.ctx_ = ctx
 14251  	return c
 14252  }
 14253  
 14254  // Header returns a http.Header that can be modified by the caller to add
 14255  // headers to the request.
 14256  func (c *FoldersNotificationConfigsGetCall) Header() http.Header {
 14257  	if c.header_ == nil {
 14258  		c.header_ = make(http.Header)
 14259  	}
 14260  	return c.header_
 14261  }
 14262  
 14263  func (c *FoldersNotificationConfigsGetCall) doRequest(alt string) (*http.Response, error) {
 14264  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14265  	if c.ifNoneMatch_ != "" {
 14266  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 14267  	}
 14268  	var body io.Reader = nil
 14269  	c.urlParams_.Set("alt", alt)
 14270  	c.urlParams_.Set("prettyPrint", "false")
 14271  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 14272  	urls += "?" + c.urlParams_.Encode()
 14273  	req, err := http.NewRequest("GET", urls, body)
 14274  	if err != nil {
 14275  		return nil, err
 14276  	}
 14277  	req.Header = reqHeaders
 14278  	googleapi.Expand(req.URL, map[string]string{
 14279  		"name": c.name,
 14280  	})
 14281  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14282  }
 14283  
 14284  // Do executes the "securitycenter.folders.notificationConfigs.get" call.
 14285  // Any non-2xx status code is an error. Response headers are in either
 14286  // *NotificationConfig.ServerResponse.Header or (if a response was returned at
 14287  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 14288  // check whether the returned error was because http.StatusNotModified was
 14289  // returned.
 14290  func (c *FoldersNotificationConfigsGetCall) Do(opts ...googleapi.CallOption) (*NotificationConfig, error) {
 14291  	gensupport.SetOptions(c.urlParams_, opts...)
 14292  	res, err := c.doRequest("json")
 14293  	if res != nil && res.StatusCode == http.StatusNotModified {
 14294  		if res.Body != nil {
 14295  			res.Body.Close()
 14296  		}
 14297  		return nil, gensupport.WrapError(&googleapi.Error{
 14298  			Code:   res.StatusCode,
 14299  			Header: res.Header,
 14300  		})
 14301  	}
 14302  	if err != nil {
 14303  		return nil, err
 14304  	}
 14305  	defer googleapi.CloseBody(res)
 14306  	if err := googleapi.CheckResponse(res); err != nil {
 14307  		return nil, gensupport.WrapError(err)
 14308  	}
 14309  	ret := &NotificationConfig{
 14310  		ServerResponse: googleapi.ServerResponse{
 14311  			Header:         res.Header,
 14312  			HTTPStatusCode: res.StatusCode,
 14313  		},
 14314  	}
 14315  	target := &ret
 14316  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14317  		return nil, err
 14318  	}
 14319  	return ret, nil
 14320  }
 14321  
 14322  type FoldersNotificationConfigsListCall struct {
 14323  	s            *Service
 14324  	parent       string
 14325  	urlParams_   gensupport.URLParams
 14326  	ifNoneMatch_ string
 14327  	ctx_         context.Context
 14328  	header_      http.Header
 14329  }
 14330  
 14331  // List: Lists notification configs.
 14332  //
 14333  //   - parent: The name of the parent in which to list the notification
 14334  //     configurations. Its format is "organizations/[organization_id]",
 14335  //     "folders/[folder_id]", or "projects/[project_id]".
 14336  func (r *FoldersNotificationConfigsService) List(parent string) *FoldersNotificationConfigsListCall {
 14337  	c := &FoldersNotificationConfigsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14338  	c.parent = parent
 14339  	return c
 14340  }
 14341  
 14342  // PageSize sets the optional parameter "pageSize": The maximum number of
 14343  // results to return in a single response. Default is 10, minimum is 1, maximum
 14344  // is 1000.
 14345  func (c *FoldersNotificationConfigsListCall) PageSize(pageSize int64) *FoldersNotificationConfigsListCall {
 14346  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 14347  	return c
 14348  }
 14349  
 14350  // PageToken sets the optional parameter "pageToken": The value returned by the
 14351  // last `ListNotificationConfigsResponse`; indicates that this is a
 14352  // continuation of a prior `ListNotificationConfigs` call, and that the system
 14353  // should return the next page of data.
 14354  func (c *FoldersNotificationConfigsListCall) PageToken(pageToken string) *FoldersNotificationConfigsListCall {
 14355  	c.urlParams_.Set("pageToken", pageToken)
 14356  	return c
 14357  }
 14358  
 14359  // Fields allows partial responses to be retrieved. See
 14360  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14361  // details.
 14362  func (c *FoldersNotificationConfigsListCall) Fields(s ...googleapi.Field) *FoldersNotificationConfigsListCall {
 14363  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14364  	return c
 14365  }
 14366  
 14367  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 14368  // object's ETag matches the given value. This is useful for getting updates
 14369  // only after the object has changed since the last request.
 14370  func (c *FoldersNotificationConfigsListCall) IfNoneMatch(entityTag string) *FoldersNotificationConfigsListCall {
 14371  	c.ifNoneMatch_ = entityTag
 14372  	return c
 14373  }
 14374  
 14375  // Context sets the context to be used in this call's Do method.
 14376  func (c *FoldersNotificationConfigsListCall) Context(ctx context.Context) *FoldersNotificationConfigsListCall {
 14377  	c.ctx_ = ctx
 14378  	return c
 14379  }
 14380  
 14381  // Header returns a http.Header that can be modified by the caller to add
 14382  // headers to the request.
 14383  func (c *FoldersNotificationConfigsListCall) Header() http.Header {
 14384  	if c.header_ == nil {
 14385  		c.header_ = make(http.Header)
 14386  	}
 14387  	return c.header_
 14388  }
 14389  
 14390  func (c *FoldersNotificationConfigsListCall) doRequest(alt string) (*http.Response, error) {
 14391  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14392  	if c.ifNoneMatch_ != "" {
 14393  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 14394  	}
 14395  	var body io.Reader = nil
 14396  	c.urlParams_.Set("alt", alt)
 14397  	c.urlParams_.Set("prettyPrint", "false")
 14398  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/notificationConfigs")
 14399  	urls += "?" + c.urlParams_.Encode()
 14400  	req, err := http.NewRequest("GET", urls, body)
 14401  	if err != nil {
 14402  		return nil, err
 14403  	}
 14404  	req.Header = reqHeaders
 14405  	googleapi.Expand(req.URL, map[string]string{
 14406  		"parent": c.parent,
 14407  	})
 14408  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14409  }
 14410  
 14411  // Do executes the "securitycenter.folders.notificationConfigs.list" call.
 14412  // Any non-2xx status code is an error. Response headers are in either
 14413  // *ListNotificationConfigsResponse.ServerResponse.Header or (if a response was
 14414  // returned at all) in error.(*googleapi.Error).Header. Use
 14415  // googleapi.IsNotModified to check whether the returned error was because
 14416  // http.StatusNotModified was returned.
 14417  func (c *FoldersNotificationConfigsListCall) Do(opts ...googleapi.CallOption) (*ListNotificationConfigsResponse, error) {
 14418  	gensupport.SetOptions(c.urlParams_, opts...)
 14419  	res, err := c.doRequest("json")
 14420  	if res != nil && res.StatusCode == http.StatusNotModified {
 14421  		if res.Body != nil {
 14422  			res.Body.Close()
 14423  		}
 14424  		return nil, gensupport.WrapError(&googleapi.Error{
 14425  			Code:   res.StatusCode,
 14426  			Header: res.Header,
 14427  		})
 14428  	}
 14429  	if err != nil {
 14430  		return nil, err
 14431  	}
 14432  	defer googleapi.CloseBody(res)
 14433  	if err := googleapi.CheckResponse(res); err != nil {
 14434  		return nil, gensupport.WrapError(err)
 14435  	}
 14436  	ret := &ListNotificationConfigsResponse{
 14437  		ServerResponse: googleapi.ServerResponse{
 14438  			Header:         res.Header,
 14439  			HTTPStatusCode: res.StatusCode,
 14440  		},
 14441  	}
 14442  	target := &ret
 14443  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14444  		return nil, err
 14445  	}
 14446  	return ret, nil
 14447  }
 14448  
 14449  // Pages invokes f for each page of results.
 14450  // A non-nil error returned from f will halt the iteration.
 14451  // The provided context supersedes any context provided to the Context method.
 14452  func (c *FoldersNotificationConfigsListCall) Pages(ctx context.Context, f func(*ListNotificationConfigsResponse) error) error {
 14453  	c.ctx_ = ctx
 14454  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 14455  	for {
 14456  		x, err := c.Do()
 14457  		if err != nil {
 14458  			return err
 14459  		}
 14460  		if err := f(x); err != nil {
 14461  			return err
 14462  		}
 14463  		if x.NextPageToken == "" {
 14464  			return nil
 14465  		}
 14466  		c.PageToken(x.NextPageToken)
 14467  	}
 14468  }
 14469  
 14470  type FoldersNotificationConfigsPatchCall struct {
 14471  	s                  *Service
 14472  	name               string
 14473  	notificationconfig *NotificationConfig
 14474  	urlParams_         gensupport.URLParams
 14475  	ctx_               context.Context
 14476  	header_            http.Header
 14477  }
 14478  
 14479  // Patch:  Updates a notification config. The following update fields are
 14480  // allowed: description, pubsub_topic, streaming_config.filter
 14481  //
 14482  //   - name: The relative resource name of this notification config. See:
 14483  //     https://cloud.google.com/apis/design/resource_names#relative_resource_name
 14484  //     Example:
 14485  //     "organizations/{organization_id}/notificationConfigs/notify_public_bucket",
 14486  //     "folders/{folder_id}/notificationConfigs/notify_public_bucket", or
 14487  //     "projects/{project_id}/notificationConfigs/notify_public_bucket".
 14488  func (r *FoldersNotificationConfigsService) Patch(name string, notificationconfig *NotificationConfig) *FoldersNotificationConfigsPatchCall {
 14489  	c := &FoldersNotificationConfigsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14490  	c.name = name
 14491  	c.notificationconfig = notificationconfig
 14492  	return c
 14493  }
 14494  
 14495  // UpdateMask sets the optional parameter "updateMask": The FieldMask to use
 14496  // when updating the notification config. If empty all mutable fields will be
 14497  // updated.
 14498  func (c *FoldersNotificationConfigsPatchCall) UpdateMask(updateMask string) *FoldersNotificationConfigsPatchCall {
 14499  	c.urlParams_.Set("updateMask", updateMask)
 14500  	return c
 14501  }
 14502  
 14503  // Fields allows partial responses to be retrieved. See
 14504  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14505  // details.
 14506  func (c *FoldersNotificationConfigsPatchCall) Fields(s ...googleapi.Field) *FoldersNotificationConfigsPatchCall {
 14507  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14508  	return c
 14509  }
 14510  
 14511  // Context sets the context to be used in this call's Do method.
 14512  func (c *FoldersNotificationConfigsPatchCall) Context(ctx context.Context) *FoldersNotificationConfigsPatchCall {
 14513  	c.ctx_ = ctx
 14514  	return c
 14515  }
 14516  
 14517  // Header returns a http.Header that can be modified by the caller to add
 14518  // headers to the request.
 14519  func (c *FoldersNotificationConfigsPatchCall) Header() http.Header {
 14520  	if c.header_ == nil {
 14521  		c.header_ = make(http.Header)
 14522  	}
 14523  	return c.header_
 14524  }
 14525  
 14526  func (c *FoldersNotificationConfigsPatchCall) doRequest(alt string) (*http.Response, error) {
 14527  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 14528  	var body io.Reader = nil
 14529  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.notificationconfig)
 14530  	if err != nil {
 14531  		return nil, err
 14532  	}
 14533  	c.urlParams_.Set("alt", alt)
 14534  	c.urlParams_.Set("prettyPrint", "false")
 14535  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 14536  	urls += "?" + c.urlParams_.Encode()
 14537  	req, err := http.NewRequest("PATCH", urls, body)
 14538  	if err != nil {
 14539  		return nil, err
 14540  	}
 14541  	req.Header = reqHeaders
 14542  	googleapi.Expand(req.URL, map[string]string{
 14543  		"name": c.name,
 14544  	})
 14545  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14546  }
 14547  
 14548  // Do executes the "securitycenter.folders.notificationConfigs.patch" call.
 14549  // Any non-2xx status code is an error. Response headers are in either
 14550  // *NotificationConfig.ServerResponse.Header or (if a response was returned at
 14551  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 14552  // check whether the returned error was because http.StatusNotModified was
 14553  // returned.
 14554  func (c *FoldersNotificationConfigsPatchCall) Do(opts ...googleapi.CallOption) (*NotificationConfig, error) {
 14555  	gensupport.SetOptions(c.urlParams_, opts...)
 14556  	res, err := c.doRequest("json")
 14557  	if res != nil && res.StatusCode == http.StatusNotModified {
 14558  		if res.Body != nil {
 14559  			res.Body.Close()
 14560  		}
 14561  		return nil, gensupport.WrapError(&googleapi.Error{
 14562  			Code:   res.StatusCode,
 14563  			Header: res.Header,
 14564  		})
 14565  	}
 14566  	if err != nil {
 14567  		return nil, err
 14568  	}
 14569  	defer googleapi.CloseBody(res)
 14570  	if err := googleapi.CheckResponse(res); err != nil {
 14571  		return nil, gensupport.WrapError(err)
 14572  	}
 14573  	ret := &NotificationConfig{
 14574  		ServerResponse: googleapi.ServerResponse{
 14575  			Header:         res.Header,
 14576  			HTTPStatusCode: res.StatusCode,
 14577  		},
 14578  	}
 14579  	target := &ret
 14580  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14581  		return nil, err
 14582  	}
 14583  	return ret, nil
 14584  }
 14585  
 14586  type FoldersSecurityHealthAnalyticsSettingsCustomModulesCreateCall struct {
 14587  	s                                                              *Service
 14588  	parent                                                         string
 14589  	googlecloudsecuritycenterv1securityhealthanalyticscustommodule *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule
 14590  	urlParams_                                                     gensupport.URLParams
 14591  	ctx_                                                           context.Context
 14592  	header_                                                        http.Header
 14593  }
 14594  
 14595  // Create: Creates a resident SecurityHealthAnalyticsCustomModule at the scope
 14596  // of the given CRM parent, and also creates inherited
 14597  // SecurityHealthAnalyticsCustomModules for all CRM descendants of the given
 14598  // parent. These modules are enabled by default.
 14599  //
 14600  //   - parent: Resource name of the new custom module's parent. Its format is
 14601  //     "organizations/{organization}/securityHealthAnalyticsSettings",
 14602  //     "folders/{folder}/securityHealthAnalyticsSettings", or
 14603  //     "projects/{project}/securityHealthAnalyticsSettings".
 14604  func (r *FoldersSecurityHealthAnalyticsSettingsCustomModulesService) Create(parent string, googlecloudsecuritycenterv1securityhealthanalyticscustommodule *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule) *FoldersSecurityHealthAnalyticsSettingsCustomModulesCreateCall {
 14605  	c := &FoldersSecurityHealthAnalyticsSettingsCustomModulesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14606  	c.parent = parent
 14607  	c.googlecloudsecuritycenterv1securityhealthanalyticscustommodule = googlecloudsecuritycenterv1securityhealthanalyticscustommodule
 14608  	return c
 14609  }
 14610  
 14611  // Fields allows partial responses to be retrieved. See
 14612  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14613  // details.
 14614  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesCreateCall) Fields(s ...googleapi.Field) *FoldersSecurityHealthAnalyticsSettingsCustomModulesCreateCall {
 14615  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14616  	return c
 14617  }
 14618  
 14619  // Context sets the context to be used in this call's Do method.
 14620  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesCreateCall) Context(ctx context.Context) *FoldersSecurityHealthAnalyticsSettingsCustomModulesCreateCall {
 14621  	c.ctx_ = ctx
 14622  	return c
 14623  }
 14624  
 14625  // Header returns a http.Header that can be modified by the caller to add
 14626  // headers to the request.
 14627  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesCreateCall) Header() http.Header {
 14628  	if c.header_ == nil {
 14629  		c.header_ = make(http.Header)
 14630  	}
 14631  	return c.header_
 14632  }
 14633  
 14634  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesCreateCall) doRequest(alt string) (*http.Response, error) {
 14635  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 14636  	var body io.Reader = nil
 14637  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1securityhealthanalyticscustommodule)
 14638  	if err != nil {
 14639  		return nil, err
 14640  	}
 14641  	c.urlParams_.Set("alt", alt)
 14642  	c.urlParams_.Set("prettyPrint", "false")
 14643  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules")
 14644  	urls += "?" + c.urlParams_.Encode()
 14645  	req, err := http.NewRequest("POST", urls, body)
 14646  	if err != nil {
 14647  		return nil, err
 14648  	}
 14649  	req.Header = reqHeaders
 14650  	googleapi.Expand(req.URL, map[string]string{
 14651  		"parent": c.parent,
 14652  	})
 14653  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14654  }
 14655  
 14656  // Do executes the "securitycenter.folders.securityHealthAnalyticsSettings.customModules.create" call.
 14657  // Any non-2xx status code is an error. Response headers are in either
 14658  // *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.ServerRespons
 14659  // e.Header or (if a response was returned at all) in
 14660  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 14661  // whether the returned error was because http.StatusNotModified was returned.
 14662  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule, error) {
 14663  	gensupport.SetOptions(c.urlParams_, opts...)
 14664  	res, err := c.doRequest("json")
 14665  	if res != nil && res.StatusCode == http.StatusNotModified {
 14666  		if res.Body != nil {
 14667  			res.Body.Close()
 14668  		}
 14669  		return nil, gensupport.WrapError(&googleapi.Error{
 14670  			Code:   res.StatusCode,
 14671  			Header: res.Header,
 14672  		})
 14673  	}
 14674  	if err != nil {
 14675  		return nil, err
 14676  	}
 14677  	defer googleapi.CloseBody(res)
 14678  	if err := googleapi.CheckResponse(res); err != nil {
 14679  		return nil, gensupport.WrapError(err)
 14680  	}
 14681  	ret := &GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule{
 14682  		ServerResponse: googleapi.ServerResponse{
 14683  			Header:         res.Header,
 14684  			HTTPStatusCode: res.StatusCode,
 14685  		},
 14686  	}
 14687  	target := &ret
 14688  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14689  		return nil, err
 14690  	}
 14691  	return ret, nil
 14692  }
 14693  
 14694  type FoldersSecurityHealthAnalyticsSettingsCustomModulesDeleteCall struct {
 14695  	s          *Service
 14696  	name       string
 14697  	urlParams_ gensupport.URLParams
 14698  	ctx_       context.Context
 14699  	header_    http.Header
 14700  }
 14701  
 14702  // Delete: Deletes the specified SecurityHealthAnalyticsCustomModule and all of
 14703  // its descendants in the CRM hierarchy. This method is only supported for
 14704  // resident custom modules.
 14705  //
 14706  //   - name: Name of the custom module to delete. Its format is
 14707  //     "organizations/{organization}/securityHealthAnalyticsSettings/customModules
 14708  //     /{customModule}",
 14709  //     "folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModu
 14710  //     le}", or
 14711  //     "projects/{project}/securityHealthAnalyticsSettings/customModules/{customMo
 14712  //     dule}".
 14713  func (r *FoldersSecurityHealthAnalyticsSettingsCustomModulesService) Delete(name string) *FoldersSecurityHealthAnalyticsSettingsCustomModulesDeleteCall {
 14714  	c := &FoldersSecurityHealthAnalyticsSettingsCustomModulesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14715  	c.name = name
 14716  	return c
 14717  }
 14718  
 14719  // Fields allows partial responses to be retrieved. See
 14720  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14721  // details.
 14722  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesDeleteCall) Fields(s ...googleapi.Field) *FoldersSecurityHealthAnalyticsSettingsCustomModulesDeleteCall {
 14723  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14724  	return c
 14725  }
 14726  
 14727  // Context sets the context to be used in this call's Do method.
 14728  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesDeleteCall) Context(ctx context.Context) *FoldersSecurityHealthAnalyticsSettingsCustomModulesDeleteCall {
 14729  	c.ctx_ = ctx
 14730  	return c
 14731  }
 14732  
 14733  // Header returns a http.Header that can be modified by the caller to add
 14734  // headers to the request.
 14735  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesDeleteCall) Header() http.Header {
 14736  	if c.header_ == nil {
 14737  		c.header_ = make(http.Header)
 14738  	}
 14739  	return c.header_
 14740  }
 14741  
 14742  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesDeleteCall) doRequest(alt string) (*http.Response, error) {
 14743  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14744  	var body io.Reader = nil
 14745  	c.urlParams_.Set("alt", alt)
 14746  	c.urlParams_.Set("prettyPrint", "false")
 14747  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 14748  	urls += "?" + c.urlParams_.Encode()
 14749  	req, err := http.NewRequest("DELETE", urls, body)
 14750  	if err != nil {
 14751  		return nil, err
 14752  	}
 14753  	req.Header = reqHeaders
 14754  	googleapi.Expand(req.URL, map[string]string{
 14755  		"name": c.name,
 14756  	})
 14757  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14758  }
 14759  
 14760  // Do executes the "securitycenter.folders.securityHealthAnalyticsSettings.customModules.delete" call.
 14761  // Any non-2xx status code is an error. Response headers are in either
 14762  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 14763  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 14764  // whether the returned error was because http.StatusNotModified was returned.
 14765  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 14766  	gensupport.SetOptions(c.urlParams_, opts...)
 14767  	res, err := c.doRequest("json")
 14768  	if res != nil && res.StatusCode == http.StatusNotModified {
 14769  		if res.Body != nil {
 14770  			res.Body.Close()
 14771  		}
 14772  		return nil, gensupport.WrapError(&googleapi.Error{
 14773  			Code:   res.StatusCode,
 14774  			Header: res.Header,
 14775  		})
 14776  	}
 14777  	if err != nil {
 14778  		return nil, err
 14779  	}
 14780  	defer googleapi.CloseBody(res)
 14781  	if err := googleapi.CheckResponse(res); err != nil {
 14782  		return nil, gensupport.WrapError(err)
 14783  	}
 14784  	ret := &Empty{
 14785  		ServerResponse: googleapi.ServerResponse{
 14786  			Header:         res.Header,
 14787  			HTTPStatusCode: res.StatusCode,
 14788  		},
 14789  	}
 14790  	target := &ret
 14791  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14792  		return nil, err
 14793  	}
 14794  	return ret, nil
 14795  }
 14796  
 14797  type FoldersSecurityHealthAnalyticsSettingsCustomModulesGetCall struct {
 14798  	s            *Service
 14799  	name         string
 14800  	urlParams_   gensupport.URLParams
 14801  	ifNoneMatch_ string
 14802  	ctx_         context.Context
 14803  	header_      http.Header
 14804  }
 14805  
 14806  // Get: Retrieves a SecurityHealthAnalyticsCustomModule.
 14807  //
 14808  //   - name: Name of the custom module to get. Its format is
 14809  //     "organizations/{organization}/securityHealthAnalyticsSettings/customModules
 14810  //     /{customModule}",
 14811  //     "folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModu
 14812  //     le}", or
 14813  //     "projects/{project}/securityHealthAnalyticsSettings/customModules/{customMo
 14814  //     dule}".
 14815  func (r *FoldersSecurityHealthAnalyticsSettingsCustomModulesService) Get(name string) *FoldersSecurityHealthAnalyticsSettingsCustomModulesGetCall {
 14816  	c := &FoldersSecurityHealthAnalyticsSettingsCustomModulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14817  	c.name = name
 14818  	return c
 14819  }
 14820  
 14821  // Fields allows partial responses to be retrieved. See
 14822  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14823  // details.
 14824  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesGetCall) Fields(s ...googleapi.Field) *FoldersSecurityHealthAnalyticsSettingsCustomModulesGetCall {
 14825  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14826  	return c
 14827  }
 14828  
 14829  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 14830  // object's ETag matches the given value. This is useful for getting updates
 14831  // only after the object has changed since the last request.
 14832  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesGetCall) IfNoneMatch(entityTag string) *FoldersSecurityHealthAnalyticsSettingsCustomModulesGetCall {
 14833  	c.ifNoneMatch_ = entityTag
 14834  	return c
 14835  }
 14836  
 14837  // Context sets the context to be used in this call's Do method.
 14838  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesGetCall) Context(ctx context.Context) *FoldersSecurityHealthAnalyticsSettingsCustomModulesGetCall {
 14839  	c.ctx_ = ctx
 14840  	return c
 14841  }
 14842  
 14843  // Header returns a http.Header that can be modified by the caller to add
 14844  // headers to the request.
 14845  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesGetCall) Header() http.Header {
 14846  	if c.header_ == nil {
 14847  		c.header_ = make(http.Header)
 14848  	}
 14849  	return c.header_
 14850  }
 14851  
 14852  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesGetCall) doRequest(alt string) (*http.Response, error) {
 14853  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14854  	if c.ifNoneMatch_ != "" {
 14855  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 14856  	}
 14857  	var body io.Reader = nil
 14858  	c.urlParams_.Set("alt", alt)
 14859  	c.urlParams_.Set("prettyPrint", "false")
 14860  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 14861  	urls += "?" + c.urlParams_.Encode()
 14862  	req, err := http.NewRequest("GET", urls, body)
 14863  	if err != nil {
 14864  		return nil, err
 14865  	}
 14866  	req.Header = reqHeaders
 14867  	googleapi.Expand(req.URL, map[string]string{
 14868  		"name": c.name,
 14869  	})
 14870  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14871  }
 14872  
 14873  // Do executes the "securitycenter.folders.securityHealthAnalyticsSettings.customModules.get" call.
 14874  // Any non-2xx status code is an error. Response headers are in either
 14875  // *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.ServerRespons
 14876  // e.Header or (if a response was returned at all) in
 14877  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 14878  // whether the returned error was because http.StatusNotModified was returned.
 14879  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule, error) {
 14880  	gensupport.SetOptions(c.urlParams_, opts...)
 14881  	res, err := c.doRequest("json")
 14882  	if res != nil && res.StatusCode == http.StatusNotModified {
 14883  		if res.Body != nil {
 14884  			res.Body.Close()
 14885  		}
 14886  		return nil, gensupport.WrapError(&googleapi.Error{
 14887  			Code:   res.StatusCode,
 14888  			Header: res.Header,
 14889  		})
 14890  	}
 14891  	if err != nil {
 14892  		return nil, err
 14893  	}
 14894  	defer googleapi.CloseBody(res)
 14895  	if err := googleapi.CheckResponse(res); err != nil {
 14896  		return nil, gensupport.WrapError(err)
 14897  	}
 14898  	ret := &GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule{
 14899  		ServerResponse: googleapi.ServerResponse{
 14900  			Header:         res.Header,
 14901  			HTTPStatusCode: res.StatusCode,
 14902  		},
 14903  	}
 14904  	target := &ret
 14905  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14906  		return nil, err
 14907  	}
 14908  	return ret, nil
 14909  }
 14910  
 14911  type FoldersSecurityHealthAnalyticsSettingsCustomModulesListCall struct {
 14912  	s            *Service
 14913  	parent       string
 14914  	urlParams_   gensupport.URLParams
 14915  	ifNoneMatch_ string
 14916  	ctx_         context.Context
 14917  	header_      http.Header
 14918  }
 14919  
 14920  // List: Returns a list of all SecurityHealthAnalyticsCustomModules for the
 14921  // given parent. This includes resident modules defined at the scope of the
 14922  // parent, and inherited modules, inherited from CRM ancestors.
 14923  //
 14924  //   - parent: Name of parent to list custom modules. Its format is
 14925  //     "organizations/{organization}/securityHealthAnalyticsSettings",
 14926  //     "folders/{folder}/securityHealthAnalyticsSettings", or
 14927  //     "projects/{project}/securityHealthAnalyticsSettings".
 14928  func (r *FoldersSecurityHealthAnalyticsSettingsCustomModulesService) List(parent string) *FoldersSecurityHealthAnalyticsSettingsCustomModulesListCall {
 14929  	c := &FoldersSecurityHealthAnalyticsSettingsCustomModulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14930  	c.parent = parent
 14931  	return c
 14932  }
 14933  
 14934  // PageSize sets the optional parameter "pageSize": The maximum number of
 14935  // results to return in a single response. Default is 10, minimum is 1, maximum
 14936  // is 1000.
 14937  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesListCall) PageSize(pageSize int64) *FoldersSecurityHealthAnalyticsSettingsCustomModulesListCall {
 14938  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 14939  	return c
 14940  }
 14941  
 14942  // PageToken sets the optional parameter "pageToken": The value returned by the
 14943  // last call indicating a continuation
 14944  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesListCall) PageToken(pageToken string) *FoldersSecurityHealthAnalyticsSettingsCustomModulesListCall {
 14945  	c.urlParams_.Set("pageToken", pageToken)
 14946  	return c
 14947  }
 14948  
 14949  // Fields allows partial responses to be retrieved. See
 14950  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14951  // details.
 14952  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesListCall) Fields(s ...googleapi.Field) *FoldersSecurityHealthAnalyticsSettingsCustomModulesListCall {
 14953  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14954  	return c
 14955  }
 14956  
 14957  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 14958  // object's ETag matches the given value. This is useful for getting updates
 14959  // only after the object has changed since the last request.
 14960  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesListCall) IfNoneMatch(entityTag string) *FoldersSecurityHealthAnalyticsSettingsCustomModulesListCall {
 14961  	c.ifNoneMatch_ = entityTag
 14962  	return c
 14963  }
 14964  
 14965  // Context sets the context to be used in this call's Do method.
 14966  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesListCall) Context(ctx context.Context) *FoldersSecurityHealthAnalyticsSettingsCustomModulesListCall {
 14967  	c.ctx_ = ctx
 14968  	return c
 14969  }
 14970  
 14971  // Header returns a http.Header that can be modified by the caller to add
 14972  // headers to the request.
 14973  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesListCall) Header() http.Header {
 14974  	if c.header_ == nil {
 14975  		c.header_ = make(http.Header)
 14976  	}
 14977  	return c.header_
 14978  }
 14979  
 14980  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesListCall) doRequest(alt string) (*http.Response, error) {
 14981  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14982  	if c.ifNoneMatch_ != "" {
 14983  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 14984  	}
 14985  	var body io.Reader = nil
 14986  	c.urlParams_.Set("alt", alt)
 14987  	c.urlParams_.Set("prettyPrint", "false")
 14988  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules")
 14989  	urls += "?" + c.urlParams_.Encode()
 14990  	req, err := http.NewRequest("GET", urls, body)
 14991  	if err != nil {
 14992  		return nil, err
 14993  	}
 14994  	req.Header = reqHeaders
 14995  	googleapi.Expand(req.URL, map[string]string{
 14996  		"parent": c.parent,
 14997  	})
 14998  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14999  }
 15000  
 15001  // Do executes the "securitycenter.folders.securityHealthAnalyticsSettings.customModules.list" call.
 15002  // Any non-2xx status code is an error. Response headers are in either
 15003  // *ListSecurityHealthAnalyticsCustomModulesResponse.ServerResponse.Header or
 15004  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
 15005  // googleapi.IsNotModified to check whether the returned error was because
 15006  // http.StatusNotModified was returned.
 15007  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesListCall) Do(opts ...googleapi.CallOption) (*ListSecurityHealthAnalyticsCustomModulesResponse, error) {
 15008  	gensupport.SetOptions(c.urlParams_, opts...)
 15009  	res, err := c.doRequest("json")
 15010  	if res != nil && res.StatusCode == http.StatusNotModified {
 15011  		if res.Body != nil {
 15012  			res.Body.Close()
 15013  		}
 15014  		return nil, gensupport.WrapError(&googleapi.Error{
 15015  			Code:   res.StatusCode,
 15016  			Header: res.Header,
 15017  		})
 15018  	}
 15019  	if err != nil {
 15020  		return nil, err
 15021  	}
 15022  	defer googleapi.CloseBody(res)
 15023  	if err := googleapi.CheckResponse(res); err != nil {
 15024  		return nil, gensupport.WrapError(err)
 15025  	}
 15026  	ret := &ListSecurityHealthAnalyticsCustomModulesResponse{
 15027  		ServerResponse: googleapi.ServerResponse{
 15028  			Header:         res.Header,
 15029  			HTTPStatusCode: res.StatusCode,
 15030  		},
 15031  	}
 15032  	target := &ret
 15033  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15034  		return nil, err
 15035  	}
 15036  	return ret, nil
 15037  }
 15038  
 15039  // Pages invokes f for each page of results.
 15040  // A non-nil error returned from f will halt the iteration.
 15041  // The provided context supersedes any context provided to the Context method.
 15042  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesListCall) Pages(ctx context.Context, f func(*ListSecurityHealthAnalyticsCustomModulesResponse) error) error {
 15043  	c.ctx_ = ctx
 15044  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 15045  	for {
 15046  		x, err := c.Do()
 15047  		if err != nil {
 15048  			return err
 15049  		}
 15050  		if err := f(x); err != nil {
 15051  			return err
 15052  		}
 15053  		if x.NextPageToken == "" {
 15054  			return nil
 15055  		}
 15056  		c.PageToken(x.NextPageToken)
 15057  	}
 15058  }
 15059  
 15060  type FoldersSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall struct {
 15061  	s            *Service
 15062  	parent       string
 15063  	urlParams_   gensupport.URLParams
 15064  	ifNoneMatch_ string
 15065  	ctx_         context.Context
 15066  	header_      http.Header
 15067  }
 15068  
 15069  // ListDescendant: Returns a list of all resident
 15070  // SecurityHealthAnalyticsCustomModules under the given CRM parent and all of
 15071  // the parent’s CRM descendants.
 15072  //
 15073  //   - parent: Name of parent to list descendant custom modules. Its format is
 15074  //     "organizations/{organization}/securityHealthAnalyticsSettings",
 15075  //     "folders/{folder}/securityHealthAnalyticsSettings", or
 15076  //     "projects/{project}/securityHealthAnalyticsSettings".
 15077  func (r *FoldersSecurityHealthAnalyticsSettingsCustomModulesService) ListDescendant(parent string) *FoldersSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall {
 15078  	c := &FoldersSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15079  	c.parent = parent
 15080  	return c
 15081  }
 15082  
 15083  // PageSize sets the optional parameter "pageSize": The maximum number of
 15084  // results to return in a single response. Default is 10, minimum is 1, maximum
 15085  // is 1000.
 15086  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) PageSize(pageSize int64) *FoldersSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall {
 15087  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 15088  	return c
 15089  }
 15090  
 15091  // PageToken sets the optional parameter "pageToken": The value returned by the
 15092  // last call indicating a continuation
 15093  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) PageToken(pageToken string) *FoldersSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall {
 15094  	c.urlParams_.Set("pageToken", pageToken)
 15095  	return c
 15096  }
 15097  
 15098  // Fields allows partial responses to be retrieved. See
 15099  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15100  // details.
 15101  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) Fields(s ...googleapi.Field) *FoldersSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall {
 15102  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15103  	return c
 15104  }
 15105  
 15106  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 15107  // object's ETag matches the given value. This is useful for getting updates
 15108  // only after the object has changed since the last request.
 15109  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) IfNoneMatch(entityTag string) *FoldersSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall {
 15110  	c.ifNoneMatch_ = entityTag
 15111  	return c
 15112  }
 15113  
 15114  // Context sets the context to be used in this call's Do method.
 15115  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) Context(ctx context.Context) *FoldersSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall {
 15116  	c.ctx_ = ctx
 15117  	return c
 15118  }
 15119  
 15120  // Header returns a http.Header that can be modified by the caller to add
 15121  // headers to the request.
 15122  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) Header() http.Header {
 15123  	if c.header_ == nil {
 15124  		c.header_ = make(http.Header)
 15125  	}
 15126  	return c.header_
 15127  }
 15128  
 15129  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) doRequest(alt string) (*http.Response, error) {
 15130  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 15131  	if c.ifNoneMatch_ != "" {
 15132  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 15133  	}
 15134  	var body io.Reader = nil
 15135  	c.urlParams_.Set("alt", alt)
 15136  	c.urlParams_.Set("prettyPrint", "false")
 15137  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules:listDescendant")
 15138  	urls += "?" + c.urlParams_.Encode()
 15139  	req, err := http.NewRequest("GET", urls, body)
 15140  	if err != nil {
 15141  		return nil, err
 15142  	}
 15143  	req.Header = reqHeaders
 15144  	googleapi.Expand(req.URL, map[string]string{
 15145  		"parent": c.parent,
 15146  	})
 15147  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15148  }
 15149  
 15150  // Do executes the "securitycenter.folders.securityHealthAnalyticsSettings.customModules.listDescendant" call.
 15151  // Any non-2xx status code is an error. Response headers are in either
 15152  // *ListDescendantSecurityHealthAnalyticsCustomModulesResponse.ServerResponse.He
 15153  // ader or (if a response was returned at all) in
 15154  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 15155  // whether the returned error was because http.StatusNotModified was returned.
 15156  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) Do(opts ...googleapi.CallOption) (*ListDescendantSecurityHealthAnalyticsCustomModulesResponse, error) {
 15157  	gensupport.SetOptions(c.urlParams_, opts...)
 15158  	res, err := c.doRequest("json")
 15159  	if res != nil && res.StatusCode == http.StatusNotModified {
 15160  		if res.Body != nil {
 15161  			res.Body.Close()
 15162  		}
 15163  		return nil, gensupport.WrapError(&googleapi.Error{
 15164  			Code:   res.StatusCode,
 15165  			Header: res.Header,
 15166  		})
 15167  	}
 15168  	if err != nil {
 15169  		return nil, err
 15170  	}
 15171  	defer googleapi.CloseBody(res)
 15172  	if err := googleapi.CheckResponse(res); err != nil {
 15173  		return nil, gensupport.WrapError(err)
 15174  	}
 15175  	ret := &ListDescendantSecurityHealthAnalyticsCustomModulesResponse{
 15176  		ServerResponse: googleapi.ServerResponse{
 15177  			Header:         res.Header,
 15178  			HTTPStatusCode: res.StatusCode,
 15179  		},
 15180  	}
 15181  	target := &ret
 15182  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15183  		return nil, err
 15184  	}
 15185  	return ret, nil
 15186  }
 15187  
 15188  // Pages invokes f for each page of results.
 15189  // A non-nil error returned from f will halt the iteration.
 15190  // The provided context supersedes any context provided to the Context method.
 15191  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) Pages(ctx context.Context, f func(*ListDescendantSecurityHealthAnalyticsCustomModulesResponse) error) error {
 15192  	c.ctx_ = ctx
 15193  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 15194  	for {
 15195  		x, err := c.Do()
 15196  		if err != nil {
 15197  			return err
 15198  		}
 15199  		if err := f(x); err != nil {
 15200  			return err
 15201  		}
 15202  		if x.NextPageToken == "" {
 15203  			return nil
 15204  		}
 15205  		c.PageToken(x.NextPageToken)
 15206  	}
 15207  }
 15208  
 15209  type FoldersSecurityHealthAnalyticsSettingsCustomModulesPatchCall struct {
 15210  	s                                                              *Service
 15211  	name                                                           string
 15212  	googlecloudsecuritycenterv1securityhealthanalyticscustommodule *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule
 15213  	urlParams_                                                     gensupport.URLParams
 15214  	ctx_                                                           context.Context
 15215  	header_                                                        http.Header
 15216  }
 15217  
 15218  // Patch: Updates the SecurityHealthAnalyticsCustomModule under the given name
 15219  // based on the given update mask. Updating the enablement state is supported
 15220  // on both resident and inherited modules (though resident modules cannot have
 15221  // an enablement state of "inherited"). Updating the display name and custom
 15222  // config of a module is supported on resident modules only.
 15223  //
 15224  //   - name: Immutable. The resource name of the custom module. Its format is
 15225  //     "organizations/{organization}/securityHealthAnalyticsSettings/customModules
 15226  //     /{customModule}", or
 15227  //     "folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModu
 15228  //     le}", or
 15229  //     "projects/{project}/securityHealthAnalyticsSettings/customModules/{customMo
 15230  //     dule}" The id {customModule} is server-generated and is not user settable.
 15231  //     It will be a numeric id containing 1-20 digits.
 15232  func (r *FoldersSecurityHealthAnalyticsSettingsCustomModulesService) Patch(name string, googlecloudsecuritycenterv1securityhealthanalyticscustommodule *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule) *FoldersSecurityHealthAnalyticsSettingsCustomModulesPatchCall {
 15233  	c := &FoldersSecurityHealthAnalyticsSettingsCustomModulesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15234  	c.name = name
 15235  	c.googlecloudsecuritycenterv1securityhealthanalyticscustommodule = googlecloudsecuritycenterv1securityhealthanalyticscustommodule
 15236  	return c
 15237  }
 15238  
 15239  // UpdateMask sets the optional parameter "updateMask": The list of fields to
 15240  // be updated. The only fields that can be updated are `enablement_state` and
 15241  // `custom_config`. If empty or set to the wildcard value `*`, both
 15242  // `enablement_state` and `custom_config` are updated.
 15243  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesPatchCall) UpdateMask(updateMask string) *FoldersSecurityHealthAnalyticsSettingsCustomModulesPatchCall {
 15244  	c.urlParams_.Set("updateMask", updateMask)
 15245  	return c
 15246  }
 15247  
 15248  // Fields allows partial responses to be retrieved. See
 15249  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15250  // details.
 15251  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesPatchCall) Fields(s ...googleapi.Field) *FoldersSecurityHealthAnalyticsSettingsCustomModulesPatchCall {
 15252  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15253  	return c
 15254  }
 15255  
 15256  // Context sets the context to be used in this call's Do method.
 15257  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesPatchCall) Context(ctx context.Context) *FoldersSecurityHealthAnalyticsSettingsCustomModulesPatchCall {
 15258  	c.ctx_ = ctx
 15259  	return c
 15260  }
 15261  
 15262  // Header returns a http.Header that can be modified by the caller to add
 15263  // headers to the request.
 15264  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesPatchCall) Header() http.Header {
 15265  	if c.header_ == nil {
 15266  		c.header_ = make(http.Header)
 15267  	}
 15268  	return c.header_
 15269  }
 15270  
 15271  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesPatchCall) doRequest(alt string) (*http.Response, error) {
 15272  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 15273  	var body io.Reader = nil
 15274  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1securityhealthanalyticscustommodule)
 15275  	if err != nil {
 15276  		return nil, err
 15277  	}
 15278  	c.urlParams_.Set("alt", alt)
 15279  	c.urlParams_.Set("prettyPrint", "false")
 15280  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 15281  	urls += "?" + c.urlParams_.Encode()
 15282  	req, err := http.NewRequest("PATCH", urls, body)
 15283  	if err != nil {
 15284  		return nil, err
 15285  	}
 15286  	req.Header = reqHeaders
 15287  	googleapi.Expand(req.URL, map[string]string{
 15288  		"name": c.name,
 15289  	})
 15290  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15291  }
 15292  
 15293  // Do executes the "securitycenter.folders.securityHealthAnalyticsSettings.customModules.patch" call.
 15294  // Any non-2xx status code is an error. Response headers are in either
 15295  // *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.ServerRespons
 15296  // e.Header or (if a response was returned at all) in
 15297  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 15298  // whether the returned error was because http.StatusNotModified was returned.
 15299  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule, error) {
 15300  	gensupport.SetOptions(c.urlParams_, opts...)
 15301  	res, err := c.doRequest("json")
 15302  	if res != nil && res.StatusCode == http.StatusNotModified {
 15303  		if res.Body != nil {
 15304  			res.Body.Close()
 15305  		}
 15306  		return nil, gensupport.WrapError(&googleapi.Error{
 15307  			Code:   res.StatusCode,
 15308  			Header: res.Header,
 15309  		})
 15310  	}
 15311  	if err != nil {
 15312  		return nil, err
 15313  	}
 15314  	defer googleapi.CloseBody(res)
 15315  	if err := googleapi.CheckResponse(res); err != nil {
 15316  		return nil, gensupport.WrapError(err)
 15317  	}
 15318  	ret := &GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule{
 15319  		ServerResponse: googleapi.ServerResponse{
 15320  			Header:         res.Header,
 15321  			HTTPStatusCode: res.StatusCode,
 15322  		},
 15323  	}
 15324  	target := &ret
 15325  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15326  		return nil, err
 15327  	}
 15328  	return ret, nil
 15329  }
 15330  
 15331  type FoldersSecurityHealthAnalyticsSettingsCustomModulesSimulateCall struct {
 15332  	s                                                  *Service
 15333  	parent                                             string
 15334  	simulatesecurityhealthanalyticscustommodulerequest *SimulateSecurityHealthAnalyticsCustomModuleRequest
 15335  	urlParams_                                         gensupport.URLParams
 15336  	ctx_                                               context.Context
 15337  	header_                                            http.Header
 15338  }
 15339  
 15340  // Simulate: Simulates a given SecurityHealthAnalyticsCustomModule and
 15341  // Resource.
 15342  //
 15343  //   - parent: The relative resource name of the organization, project, or
 15344  //     folder. For more information about relative resource names, see Relative
 15345  //     Resource Name
 15346  //     (https://cloud.google.com/apis/design/resource_names#relative_resource_name)
 15347  //     Example: `organizations/{organization_id}`.
 15348  func (r *FoldersSecurityHealthAnalyticsSettingsCustomModulesService) Simulate(parent string, simulatesecurityhealthanalyticscustommodulerequest *SimulateSecurityHealthAnalyticsCustomModuleRequest) *FoldersSecurityHealthAnalyticsSettingsCustomModulesSimulateCall {
 15349  	c := &FoldersSecurityHealthAnalyticsSettingsCustomModulesSimulateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15350  	c.parent = parent
 15351  	c.simulatesecurityhealthanalyticscustommodulerequest = simulatesecurityhealthanalyticscustommodulerequest
 15352  	return c
 15353  }
 15354  
 15355  // Fields allows partial responses to be retrieved. See
 15356  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15357  // details.
 15358  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesSimulateCall) Fields(s ...googleapi.Field) *FoldersSecurityHealthAnalyticsSettingsCustomModulesSimulateCall {
 15359  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15360  	return c
 15361  }
 15362  
 15363  // Context sets the context to be used in this call's Do method.
 15364  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesSimulateCall) Context(ctx context.Context) *FoldersSecurityHealthAnalyticsSettingsCustomModulesSimulateCall {
 15365  	c.ctx_ = ctx
 15366  	return c
 15367  }
 15368  
 15369  // Header returns a http.Header that can be modified by the caller to add
 15370  // headers to the request.
 15371  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesSimulateCall) Header() http.Header {
 15372  	if c.header_ == nil {
 15373  		c.header_ = make(http.Header)
 15374  	}
 15375  	return c.header_
 15376  }
 15377  
 15378  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesSimulateCall) doRequest(alt string) (*http.Response, error) {
 15379  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 15380  	var body io.Reader = nil
 15381  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.simulatesecurityhealthanalyticscustommodulerequest)
 15382  	if err != nil {
 15383  		return nil, err
 15384  	}
 15385  	c.urlParams_.Set("alt", alt)
 15386  	c.urlParams_.Set("prettyPrint", "false")
 15387  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules:simulate")
 15388  	urls += "?" + c.urlParams_.Encode()
 15389  	req, err := http.NewRequest("POST", urls, body)
 15390  	if err != nil {
 15391  		return nil, err
 15392  	}
 15393  	req.Header = reqHeaders
 15394  	googleapi.Expand(req.URL, map[string]string{
 15395  		"parent": c.parent,
 15396  	})
 15397  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15398  }
 15399  
 15400  // Do executes the "securitycenter.folders.securityHealthAnalyticsSettings.customModules.simulate" call.
 15401  // Any non-2xx status code is an error. Response headers are in either
 15402  // *SimulateSecurityHealthAnalyticsCustomModuleResponse.ServerResponse.Header
 15403  // or (if a response was returned at all) in error.(*googleapi.Error).Header.
 15404  // Use googleapi.IsNotModified to check whether the returned error was because
 15405  // http.StatusNotModified was returned.
 15406  func (c *FoldersSecurityHealthAnalyticsSettingsCustomModulesSimulateCall) Do(opts ...googleapi.CallOption) (*SimulateSecurityHealthAnalyticsCustomModuleResponse, error) {
 15407  	gensupport.SetOptions(c.urlParams_, opts...)
 15408  	res, err := c.doRequest("json")
 15409  	if res != nil && res.StatusCode == http.StatusNotModified {
 15410  		if res.Body != nil {
 15411  			res.Body.Close()
 15412  		}
 15413  		return nil, gensupport.WrapError(&googleapi.Error{
 15414  			Code:   res.StatusCode,
 15415  			Header: res.Header,
 15416  		})
 15417  	}
 15418  	if err != nil {
 15419  		return nil, err
 15420  	}
 15421  	defer googleapi.CloseBody(res)
 15422  	if err := googleapi.CheckResponse(res); err != nil {
 15423  		return nil, gensupport.WrapError(err)
 15424  	}
 15425  	ret := &SimulateSecurityHealthAnalyticsCustomModuleResponse{
 15426  		ServerResponse: googleapi.ServerResponse{
 15427  			Header:         res.Header,
 15428  			HTTPStatusCode: res.StatusCode,
 15429  		},
 15430  	}
 15431  	target := &ret
 15432  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15433  		return nil, err
 15434  	}
 15435  	return ret, nil
 15436  }
 15437  
 15438  type FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall struct {
 15439  	s            *Service
 15440  	name         string
 15441  	urlParams_   gensupport.URLParams
 15442  	ifNoneMatch_ string
 15443  	ctx_         context.Context
 15444  	header_      http.Header
 15445  }
 15446  
 15447  // Get: Retrieves an EffectiveSecurityHealthAnalyticsCustomModule.
 15448  //
 15449  //   - name: Name of the effective custom module to get. Its format is
 15450  //     "organizations/{organization}/securityHealthAnalyticsSettings/effectiveCust
 15451  //     omModules/{customModule}",
 15452  //     "folders/{folder}/securityHealthAnalyticsSettings/effectiveCustomModules/{c
 15453  //     ustomModule}", or
 15454  //     "projects/{project}/securityHealthAnalyticsSettings/effectiveCustomModules/
 15455  //     {customModule}".
 15456  func (r *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesService) Get(name string) *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall {
 15457  	c := &FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15458  	c.name = name
 15459  	return c
 15460  }
 15461  
 15462  // Fields allows partial responses to be retrieved. See
 15463  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15464  // details.
 15465  func (c *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall) Fields(s ...googleapi.Field) *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall {
 15466  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15467  	return c
 15468  }
 15469  
 15470  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 15471  // object's ETag matches the given value. This is useful for getting updates
 15472  // only after the object has changed since the last request.
 15473  func (c *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall) IfNoneMatch(entityTag string) *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall {
 15474  	c.ifNoneMatch_ = entityTag
 15475  	return c
 15476  }
 15477  
 15478  // Context sets the context to be used in this call's Do method.
 15479  func (c *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall) Context(ctx context.Context) *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall {
 15480  	c.ctx_ = ctx
 15481  	return c
 15482  }
 15483  
 15484  // Header returns a http.Header that can be modified by the caller to add
 15485  // headers to the request.
 15486  func (c *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall) Header() http.Header {
 15487  	if c.header_ == nil {
 15488  		c.header_ = make(http.Header)
 15489  	}
 15490  	return c.header_
 15491  }
 15492  
 15493  func (c *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall) doRequest(alt string) (*http.Response, error) {
 15494  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 15495  	if c.ifNoneMatch_ != "" {
 15496  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 15497  	}
 15498  	var body io.Reader = nil
 15499  	c.urlParams_.Set("alt", alt)
 15500  	c.urlParams_.Set("prettyPrint", "false")
 15501  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 15502  	urls += "?" + c.urlParams_.Encode()
 15503  	req, err := http.NewRequest("GET", urls, body)
 15504  	if err != nil {
 15505  		return nil, err
 15506  	}
 15507  	req.Header = reqHeaders
 15508  	googleapi.Expand(req.URL, map[string]string{
 15509  		"name": c.name,
 15510  	})
 15511  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15512  }
 15513  
 15514  // Do executes the "securitycenter.folders.securityHealthAnalyticsSettings.effectiveCustomModules.get" call.
 15515  // Any non-2xx status code is an error. Response headers are in either
 15516  // *GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.Serv
 15517  // erResponse.Header or (if a response was returned at all) in
 15518  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 15519  // whether the returned error was because http.StatusNotModified was returned.
 15520  func (c *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule, error) {
 15521  	gensupport.SetOptions(c.urlParams_, opts...)
 15522  	res, err := c.doRequest("json")
 15523  	if res != nil && res.StatusCode == http.StatusNotModified {
 15524  		if res.Body != nil {
 15525  			res.Body.Close()
 15526  		}
 15527  		return nil, gensupport.WrapError(&googleapi.Error{
 15528  			Code:   res.StatusCode,
 15529  			Header: res.Header,
 15530  		})
 15531  	}
 15532  	if err != nil {
 15533  		return nil, err
 15534  	}
 15535  	defer googleapi.CloseBody(res)
 15536  	if err := googleapi.CheckResponse(res); err != nil {
 15537  		return nil, gensupport.WrapError(err)
 15538  	}
 15539  	ret := &GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule{
 15540  		ServerResponse: googleapi.ServerResponse{
 15541  			Header:         res.Header,
 15542  			HTTPStatusCode: res.StatusCode,
 15543  		},
 15544  	}
 15545  	target := &ret
 15546  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15547  		return nil, err
 15548  	}
 15549  	return ret, nil
 15550  }
 15551  
 15552  type FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall struct {
 15553  	s            *Service
 15554  	parent       string
 15555  	urlParams_   gensupport.URLParams
 15556  	ifNoneMatch_ string
 15557  	ctx_         context.Context
 15558  	header_      http.Header
 15559  }
 15560  
 15561  // List: Returns a list of all EffectiveSecurityHealthAnalyticsCustomModules
 15562  // for the given parent. This includes resident modules defined at the scope of
 15563  // the parent, and inherited modules, inherited from CRM ancestors.
 15564  //
 15565  //   - parent: Name of parent to list effective custom modules. Its format is
 15566  //     "organizations/{organization}/securityHealthAnalyticsSettings",
 15567  //     "folders/{folder}/securityHealthAnalyticsSettings", or
 15568  //     "projects/{project}/securityHealthAnalyticsSettings".
 15569  func (r *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesService) List(parent string) *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall {
 15570  	c := &FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15571  	c.parent = parent
 15572  	return c
 15573  }
 15574  
 15575  // PageSize sets the optional parameter "pageSize": The maximum number of
 15576  // results to return in a single response. Default is 10, minimum is 1, maximum
 15577  // is 1000.
 15578  func (c *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) PageSize(pageSize int64) *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall {
 15579  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 15580  	return c
 15581  }
 15582  
 15583  // PageToken sets the optional parameter "pageToken": The value returned by the
 15584  // last call indicating a continuation
 15585  func (c *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) PageToken(pageToken string) *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall {
 15586  	c.urlParams_.Set("pageToken", pageToken)
 15587  	return c
 15588  }
 15589  
 15590  // Fields allows partial responses to be retrieved. See
 15591  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15592  // details.
 15593  func (c *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) Fields(s ...googleapi.Field) *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall {
 15594  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15595  	return c
 15596  }
 15597  
 15598  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 15599  // object's ETag matches the given value. This is useful for getting updates
 15600  // only after the object has changed since the last request.
 15601  func (c *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) IfNoneMatch(entityTag string) *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall {
 15602  	c.ifNoneMatch_ = entityTag
 15603  	return c
 15604  }
 15605  
 15606  // Context sets the context to be used in this call's Do method.
 15607  func (c *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) Context(ctx context.Context) *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall {
 15608  	c.ctx_ = ctx
 15609  	return c
 15610  }
 15611  
 15612  // Header returns a http.Header that can be modified by the caller to add
 15613  // headers to the request.
 15614  func (c *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) Header() http.Header {
 15615  	if c.header_ == nil {
 15616  		c.header_ = make(http.Header)
 15617  	}
 15618  	return c.header_
 15619  }
 15620  
 15621  func (c *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) doRequest(alt string) (*http.Response, error) {
 15622  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 15623  	if c.ifNoneMatch_ != "" {
 15624  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 15625  	}
 15626  	var body io.Reader = nil
 15627  	c.urlParams_.Set("alt", alt)
 15628  	c.urlParams_.Set("prettyPrint", "false")
 15629  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/effectiveCustomModules")
 15630  	urls += "?" + c.urlParams_.Encode()
 15631  	req, err := http.NewRequest("GET", urls, body)
 15632  	if err != nil {
 15633  		return nil, err
 15634  	}
 15635  	req.Header = reqHeaders
 15636  	googleapi.Expand(req.URL, map[string]string{
 15637  		"parent": c.parent,
 15638  	})
 15639  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15640  }
 15641  
 15642  // Do executes the "securitycenter.folders.securityHealthAnalyticsSettings.effectiveCustomModules.list" call.
 15643  // Any non-2xx status code is an error. Response headers are in either
 15644  // *ListEffectiveSecurityHealthAnalyticsCustomModulesResponse.ServerResponse.Hea
 15645  // der or (if a response was returned at all) in
 15646  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 15647  // whether the returned error was because http.StatusNotModified was returned.
 15648  func (c *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) Do(opts ...googleapi.CallOption) (*ListEffectiveSecurityHealthAnalyticsCustomModulesResponse, error) {
 15649  	gensupport.SetOptions(c.urlParams_, opts...)
 15650  	res, err := c.doRequest("json")
 15651  	if res != nil && res.StatusCode == http.StatusNotModified {
 15652  		if res.Body != nil {
 15653  			res.Body.Close()
 15654  		}
 15655  		return nil, gensupport.WrapError(&googleapi.Error{
 15656  			Code:   res.StatusCode,
 15657  			Header: res.Header,
 15658  		})
 15659  	}
 15660  	if err != nil {
 15661  		return nil, err
 15662  	}
 15663  	defer googleapi.CloseBody(res)
 15664  	if err := googleapi.CheckResponse(res); err != nil {
 15665  		return nil, gensupport.WrapError(err)
 15666  	}
 15667  	ret := &ListEffectiveSecurityHealthAnalyticsCustomModulesResponse{
 15668  		ServerResponse: googleapi.ServerResponse{
 15669  			Header:         res.Header,
 15670  			HTTPStatusCode: res.StatusCode,
 15671  		},
 15672  	}
 15673  	target := &ret
 15674  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15675  		return nil, err
 15676  	}
 15677  	return ret, nil
 15678  }
 15679  
 15680  // Pages invokes f for each page of results.
 15681  // A non-nil error returned from f will halt the iteration.
 15682  // The provided context supersedes any context provided to the Context method.
 15683  func (c *FoldersSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) Pages(ctx context.Context, f func(*ListEffectiveSecurityHealthAnalyticsCustomModulesResponse) error) error {
 15684  	c.ctx_ = ctx
 15685  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 15686  	for {
 15687  		x, err := c.Do()
 15688  		if err != nil {
 15689  			return err
 15690  		}
 15691  		if err := f(x); err != nil {
 15692  			return err
 15693  		}
 15694  		if x.NextPageToken == "" {
 15695  			return nil
 15696  		}
 15697  		c.PageToken(x.NextPageToken)
 15698  	}
 15699  }
 15700  
 15701  type FoldersSourcesListCall struct {
 15702  	s            *Service
 15703  	parent       string
 15704  	urlParams_   gensupport.URLParams
 15705  	ifNoneMatch_ string
 15706  	ctx_         context.Context
 15707  	header_      http.Header
 15708  }
 15709  
 15710  // List: Lists all sources belonging to an organization.
 15711  //
 15712  //   - parent: Resource name of the parent of sources to list. Its format should
 15713  //     be "organizations/[organization_id]", "folders/[folder_id]", or
 15714  //     "projects/[project_id]".
 15715  func (r *FoldersSourcesService) List(parent string) *FoldersSourcesListCall {
 15716  	c := &FoldersSourcesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15717  	c.parent = parent
 15718  	return c
 15719  }
 15720  
 15721  // PageSize sets the optional parameter "pageSize": The maximum number of
 15722  // results to return in a single response. Default is 10, minimum is 1, maximum
 15723  // is 1000.
 15724  func (c *FoldersSourcesListCall) PageSize(pageSize int64) *FoldersSourcesListCall {
 15725  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 15726  	return c
 15727  }
 15728  
 15729  // PageToken sets the optional parameter "pageToken": The value returned by the
 15730  // last `ListSourcesResponse`; indicates that this is a continuation of a prior
 15731  // `ListSources` call, and that the system should return the next page of data.
 15732  func (c *FoldersSourcesListCall) PageToken(pageToken string) *FoldersSourcesListCall {
 15733  	c.urlParams_.Set("pageToken", pageToken)
 15734  	return c
 15735  }
 15736  
 15737  // Fields allows partial responses to be retrieved. See
 15738  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15739  // details.
 15740  func (c *FoldersSourcesListCall) Fields(s ...googleapi.Field) *FoldersSourcesListCall {
 15741  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15742  	return c
 15743  }
 15744  
 15745  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 15746  // object's ETag matches the given value. This is useful for getting updates
 15747  // only after the object has changed since the last request.
 15748  func (c *FoldersSourcesListCall) IfNoneMatch(entityTag string) *FoldersSourcesListCall {
 15749  	c.ifNoneMatch_ = entityTag
 15750  	return c
 15751  }
 15752  
 15753  // Context sets the context to be used in this call's Do method.
 15754  func (c *FoldersSourcesListCall) Context(ctx context.Context) *FoldersSourcesListCall {
 15755  	c.ctx_ = ctx
 15756  	return c
 15757  }
 15758  
 15759  // Header returns a http.Header that can be modified by the caller to add
 15760  // headers to the request.
 15761  func (c *FoldersSourcesListCall) Header() http.Header {
 15762  	if c.header_ == nil {
 15763  		c.header_ = make(http.Header)
 15764  	}
 15765  	return c.header_
 15766  }
 15767  
 15768  func (c *FoldersSourcesListCall) doRequest(alt string) (*http.Response, error) {
 15769  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 15770  	if c.ifNoneMatch_ != "" {
 15771  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 15772  	}
 15773  	var body io.Reader = nil
 15774  	c.urlParams_.Set("alt", alt)
 15775  	c.urlParams_.Set("prettyPrint", "false")
 15776  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/sources")
 15777  	urls += "?" + c.urlParams_.Encode()
 15778  	req, err := http.NewRequest("GET", urls, body)
 15779  	if err != nil {
 15780  		return nil, err
 15781  	}
 15782  	req.Header = reqHeaders
 15783  	googleapi.Expand(req.URL, map[string]string{
 15784  		"parent": c.parent,
 15785  	})
 15786  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15787  }
 15788  
 15789  // Do executes the "securitycenter.folders.sources.list" call.
 15790  // Any non-2xx status code is an error. Response headers are in either
 15791  // *ListSourcesResponse.ServerResponse.Header or (if a response was returned at
 15792  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 15793  // check whether the returned error was because http.StatusNotModified was
 15794  // returned.
 15795  func (c *FoldersSourcesListCall) Do(opts ...googleapi.CallOption) (*ListSourcesResponse, error) {
 15796  	gensupport.SetOptions(c.urlParams_, opts...)
 15797  	res, err := c.doRequest("json")
 15798  	if res != nil && res.StatusCode == http.StatusNotModified {
 15799  		if res.Body != nil {
 15800  			res.Body.Close()
 15801  		}
 15802  		return nil, gensupport.WrapError(&googleapi.Error{
 15803  			Code:   res.StatusCode,
 15804  			Header: res.Header,
 15805  		})
 15806  	}
 15807  	if err != nil {
 15808  		return nil, err
 15809  	}
 15810  	defer googleapi.CloseBody(res)
 15811  	if err := googleapi.CheckResponse(res); err != nil {
 15812  		return nil, gensupport.WrapError(err)
 15813  	}
 15814  	ret := &ListSourcesResponse{
 15815  		ServerResponse: googleapi.ServerResponse{
 15816  			Header:         res.Header,
 15817  			HTTPStatusCode: res.StatusCode,
 15818  		},
 15819  	}
 15820  	target := &ret
 15821  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15822  		return nil, err
 15823  	}
 15824  	return ret, nil
 15825  }
 15826  
 15827  // Pages invokes f for each page of results.
 15828  // A non-nil error returned from f will halt the iteration.
 15829  // The provided context supersedes any context provided to the Context method.
 15830  func (c *FoldersSourcesListCall) Pages(ctx context.Context, f func(*ListSourcesResponse) error) error {
 15831  	c.ctx_ = ctx
 15832  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 15833  	for {
 15834  		x, err := c.Do()
 15835  		if err != nil {
 15836  			return err
 15837  		}
 15838  		if err := f(x); err != nil {
 15839  			return err
 15840  		}
 15841  		if x.NextPageToken == "" {
 15842  			return nil
 15843  		}
 15844  		c.PageToken(x.NextPageToken)
 15845  	}
 15846  }
 15847  
 15848  type FoldersSourcesFindingsGroupCall struct {
 15849  	s                    *Service
 15850  	parent               string
 15851  	groupfindingsrequest *GroupFindingsRequest
 15852  	urlParams_           gensupport.URLParams
 15853  	ctx_                 context.Context
 15854  	header_              http.Header
 15855  }
 15856  
 15857  // Group: Filters an organization or source's findings and groups them by their
 15858  // specified properties. To group across all sources provide a `-` as the
 15859  // source id. Example: /v1/organizations/{organization_id}/sources/-/findings,
 15860  // /v1/folders/{folder_id}/sources/-/findings,
 15861  // /v1/projects/{project_id}/sources/-/findings
 15862  //
 15863  //   - parent: Name of the source to groupBy. Its format is
 15864  //     "organizations/[organization_id]/sources/[source_id]",
 15865  //     folders/[folder_id]/sources/[source_id], or
 15866  //     projects/[project_id]/sources/[source_id]. To groupBy across all sources
 15867  //     provide a source_id of `-`. For example:
 15868  //     organizations/{organization_id}/sources/-, folders/{folder_id}/sources/-,
 15869  //     or projects/{project_id}/sources/-.
 15870  func (r *FoldersSourcesFindingsService) Group(parent string, groupfindingsrequest *GroupFindingsRequest) *FoldersSourcesFindingsGroupCall {
 15871  	c := &FoldersSourcesFindingsGroupCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15872  	c.parent = parent
 15873  	c.groupfindingsrequest = groupfindingsrequest
 15874  	return c
 15875  }
 15876  
 15877  // Fields allows partial responses to be retrieved. See
 15878  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15879  // details.
 15880  func (c *FoldersSourcesFindingsGroupCall) Fields(s ...googleapi.Field) *FoldersSourcesFindingsGroupCall {
 15881  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15882  	return c
 15883  }
 15884  
 15885  // Context sets the context to be used in this call's Do method.
 15886  func (c *FoldersSourcesFindingsGroupCall) Context(ctx context.Context) *FoldersSourcesFindingsGroupCall {
 15887  	c.ctx_ = ctx
 15888  	return c
 15889  }
 15890  
 15891  // Header returns a http.Header that can be modified by the caller to add
 15892  // headers to the request.
 15893  func (c *FoldersSourcesFindingsGroupCall) Header() http.Header {
 15894  	if c.header_ == nil {
 15895  		c.header_ = make(http.Header)
 15896  	}
 15897  	return c.header_
 15898  }
 15899  
 15900  func (c *FoldersSourcesFindingsGroupCall) doRequest(alt string) (*http.Response, error) {
 15901  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 15902  	var body io.Reader = nil
 15903  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.groupfindingsrequest)
 15904  	if err != nil {
 15905  		return nil, err
 15906  	}
 15907  	c.urlParams_.Set("alt", alt)
 15908  	c.urlParams_.Set("prettyPrint", "false")
 15909  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/findings:group")
 15910  	urls += "?" + c.urlParams_.Encode()
 15911  	req, err := http.NewRequest("POST", urls, body)
 15912  	if err != nil {
 15913  		return nil, err
 15914  	}
 15915  	req.Header = reqHeaders
 15916  	googleapi.Expand(req.URL, map[string]string{
 15917  		"parent": c.parent,
 15918  	})
 15919  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15920  }
 15921  
 15922  // Do executes the "securitycenter.folders.sources.findings.group" call.
 15923  // Any non-2xx status code is an error. Response headers are in either
 15924  // *GroupFindingsResponse.ServerResponse.Header or (if a response was returned
 15925  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 15926  // check whether the returned error was because http.StatusNotModified was
 15927  // returned.
 15928  func (c *FoldersSourcesFindingsGroupCall) Do(opts ...googleapi.CallOption) (*GroupFindingsResponse, error) {
 15929  	gensupport.SetOptions(c.urlParams_, opts...)
 15930  	res, err := c.doRequest("json")
 15931  	if res != nil && res.StatusCode == http.StatusNotModified {
 15932  		if res.Body != nil {
 15933  			res.Body.Close()
 15934  		}
 15935  		return nil, gensupport.WrapError(&googleapi.Error{
 15936  			Code:   res.StatusCode,
 15937  			Header: res.Header,
 15938  		})
 15939  	}
 15940  	if err != nil {
 15941  		return nil, err
 15942  	}
 15943  	defer googleapi.CloseBody(res)
 15944  	if err := googleapi.CheckResponse(res); err != nil {
 15945  		return nil, gensupport.WrapError(err)
 15946  	}
 15947  	ret := &GroupFindingsResponse{
 15948  		ServerResponse: googleapi.ServerResponse{
 15949  			Header:         res.Header,
 15950  			HTTPStatusCode: res.StatusCode,
 15951  		},
 15952  	}
 15953  	target := &ret
 15954  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15955  		return nil, err
 15956  	}
 15957  	return ret, nil
 15958  }
 15959  
 15960  // Pages invokes f for each page of results.
 15961  // A non-nil error returned from f will halt the iteration.
 15962  // The provided context supersedes any context provided to the Context method.
 15963  func (c *FoldersSourcesFindingsGroupCall) Pages(ctx context.Context, f func(*GroupFindingsResponse) error) error {
 15964  	c.ctx_ = ctx
 15965  	defer func(pt string) { c.groupfindingsrequest.PageToken = pt }(c.groupfindingsrequest.PageToken)
 15966  	for {
 15967  		x, err := c.Do()
 15968  		if err != nil {
 15969  			return err
 15970  		}
 15971  		if err := f(x); err != nil {
 15972  			return err
 15973  		}
 15974  		if x.NextPageToken == "" {
 15975  			return nil
 15976  		}
 15977  		c.groupfindingsrequest.PageToken = x.NextPageToken
 15978  	}
 15979  }
 15980  
 15981  type FoldersSourcesFindingsListCall struct {
 15982  	s            *Service
 15983  	parent       string
 15984  	urlParams_   gensupport.URLParams
 15985  	ifNoneMatch_ string
 15986  	ctx_         context.Context
 15987  	header_      http.Header
 15988  }
 15989  
 15990  // List: Lists an organization or source's findings. To list across all sources
 15991  // provide a `-` as the source id. Example:
 15992  // /v1/organizations/{organization_id}/sources/-/findings
 15993  //
 15994  //   - parent: Name of the source the findings belong to. Its format is
 15995  //     "organizations/[organization_id]/sources/[source_id],
 15996  //     folders/[folder_id]/sources/[source_id], or
 15997  //     projects/[project_id]/sources/[source_id]". To list across all sources
 15998  //     provide a source_id of `-`. For example:
 15999  //     organizations/{organization_id}/sources/-, folders/{folder_id}/sources/-
 16000  //     or projects/{projects_id}/sources/-.
 16001  func (r *FoldersSourcesFindingsService) List(parent string) *FoldersSourcesFindingsListCall {
 16002  	c := &FoldersSourcesFindingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16003  	c.parent = parent
 16004  	return c
 16005  }
 16006  
 16007  // CompareDuration sets the optional parameter "compareDuration": When
 16008  // compare_duration is set, the ListFindingsResult's "state_change" attribute
 16009  // is updated to indicate whether the finding had its state changed, the
 16010  // finding's state remained unchanged, or if the finding was added in any state
 16011  // during the compare_duration period of time that precedes the read_time. This
 16012  // is the time between (read_time - compare_duration) and read_time. The
 16013  // state_change value is derived based on the presence and state of the finding
 16014  // at the two points in time. Intermediate state changes between the two times
 16015  // don't affect the result. For example, the results aren't affected if the
 16016  // finding is made inactive and then active again. Possible "state_change"
 16017  // values when compare_duration is specified: * "CHANGED": indicates that the
 16018  // finding was present and matched the given filter at the start of
 16019  // compare_duration, but changed its state at read_time. * "UNCHANGED":
 16020  // indicates that the finding was present and matched the given filter at the
 16021  // start of compare_duration and did not change state at read_time. * "ADDED":
 16022  // indicates that the finding did not match the given filter or was not present
 16023  // at the start of compare_duration, but was present at read_time. * "REMOVED":
 16024  // indicates that the finding was present and matched the filter at the start
 16025  // of compare_duration, but did not match the filter at read_time. If
 16026  // compare_duration is not specified, then the only possible state_change is
 16027  // "UNUSED", which will be the state_change set for all findings present at
 16028  // read_time.
 16029  func (c *FoldersSourcesFindingsListCall) CompareDuration(compareDuration string) *FoldersSourcesFindingsListCall {
 16030  	c.urlParams_.Set("compareDuration", compareDuration)
 16031  	return c
 16032  }
 16033  
 16034  // FieldMask sets the optional parameter "fieldMask": A field mask to specify
 16035  // the Finding fields to be listed in the response. An empty field mask will
 16036  // list all fields.
 16037  func (c *FoldersSourcesFindingsListCall) FieldMask(fieldMask string) *FoldersSourcesFindingsListCall {
 16038  	c.urlParams_.Set("fieldMask", fieldMask)
 16039  	return c
 16040  }
 16041  
 16042  // Filter sets the optional parameter "filter": Expression that defines the
 16043  // filter to apply across findings. The expression is a list of one or more
 16044  // restrictions combined via logical operators `AND` and `OR`. Parentheses are
 16045  // supported, and `OR` has higher precedence than `AND`. Restrictions have the
 16046  // form ` ` and may have a `-` character in front of them to indicate negation.
 16047  // Examples include: * name * source_properties.a_property *
 16048  // security_marks.marks.marka The supported operators are: * `=` for all value
 16049  // types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring
 16050  // matching, for strings. The supported value types are: * string literals in
 16051  // quotes. * integer literals without quotes. * boolean literals `true` and
 16052  // `false` without quotes. The following field and operator combinations are
 16053  // supported: * name: `=` * parent: `=`, `:` * resource_name: `=`, `:` * state:
 16054  // `=`, `:` * category: `=`, `:` * external_uri: `=`, `:` * event_time: `=`,
 16055  // `>`, `<`, `>=`, `<=` Usage: This should be milliseconds since epoch or an
 16056  // RFC3339 string. Examples: `event_time = "2019-06-10T16:07:18-07:00"
 16057  // `event_time = 1560208038000` * severity: `=`, `:` * workflow_state: `=`, `:`
 16058  // * security_marks.marks: `=`, `:` * source_properties: `=`, `:`, `>`, `<`,
 16059  // `>=`, `<=` For example, `source_properties.size = 100` is a valid filter
 16060  // string. Use a partial match on the empty string to filter based on a
 16061  // property existing: `source_properties.my_property : "" Use a negated
 16062  // partial match on the empty string to filter based on a property not
 16063  // existing: `-source_properties.my_property : "" * resource: * resource.name:
 16064  // `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name:
 16065  // `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name:
 16066  // `=`, `:` * resource.type: `=`, `:` * resource.folders.resource_folder: `=`,
 16067  // `:` * resource.display_name: `=`, `:`
 16068  func (c *FoldersSourcesFindingsListCall) Filter(filter string) *FoldersSourcesFindingsListCall {
 16069  	c.urlParams_.Set("filter", filter)
 16070  	return c
 16071  }
 16072  
 16073  // OrderBy sets the optional parameter "orderBy": Expression that defines what
 16074  // fields and order to use for sorting. The string value should follow SQL
 16075  // syntax: comma separated list of fields. For example:
 16076  // "name,resource_properties.a_property". The default sorting order is
 16077  // ascending. To specify descending order for a field, a suffix " desc" should
 16078  // be appended to the field name. For example: "name
 16079  // desc,source_properties.a_property". Redundant space characters in the syntax
 16080  // are insignificant. "name desc,source_properties.a_property" and " name desc
 16081  // , source_properties.a_property " are equivalent. The following fields are
 16082  // supported: name parent state category resource_name event_time
 16083  // source_properties security_marks.marks
 16084  func (c *FoldersSourcesFindingsListCall) OrderBy(orderBy string) *FoldersSourcesFindingsListCall {
 16085  	c.urlParams_.Set("orderBy", orderBy)
 16086  	return c
 16087  }
 16088  
 16089  // PageSize sets the optional parameter "pageSize": The maximum number of
 16090  // results to return in a single response. Default is 10, minimum is 1, maximum
 16091  // is 1000.
 16092  func (c *FoldersSourcesFindingsListCall) PageSize(pageSize int64) *FoldersSourcesFindingsListCall {
 16093  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 16094  	return c
 16095  }
 16096  
 16097  // PageToken sets the optional parameter "pageToken": The value returned by the
 16098  // last `ListFindingsResponse`; indicates that this is a continuation of a
 16099  // prior `ListFindings` call, and that the system should return the next page
 16100  // of data.
 16101  func (c *FoldersSourcesFindingsListCall) PageToken(pageToken string) *FoldersSourcesFindingsListCall {
 16102  	c.urlParams_.Set("pageToken", pageToken)
 16103  	return c
 16104  }
 16105  
 16106  // ReadTime sets the optional parameter "readTime": Time used as a reference
 16107  // point when filtering findings. The filter is limited to findings existing at
 16108  // the supplied time and their values are those at that specific time. Absence
 16109  // of this field will default to the API's version of NOW.
 16110  func (c *FoldersSourcesFindingsListCall) ReadTime(readTime string) *FoldersSourcesFindingsListCall {
 16111  	c.urlParams_.Set("readTime", readTime)
 16112  	return c
 16113  }
 16114  
 16115  // Fields allows partial responses to be retrieved. See
 16116  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16117  // details.
 16118  func (c *FoldersSourcesFindingsListCall) Fields(s ...googleapi.Field) *FoldersSourcesFindingsListCall {
 16119  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16120  	return c
 16121  }
 16122  
 16123  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 16124  // object's ETag matches the given value. This is useful for getting updates
 16125  // only after the object has changed since the last request.
 16126  func (c *FoldersSourcesFindingsListCall) IfNoneMatch(entityTag string) *FoldersSourcesFindingsListCall {
 16127  	c.ifNoneMatch_ = entityTag
 16128  	return c
 16129  }
 16130  
 16131  // Context sets the context to be used in this call's Do method.
 16132  func (c *FoldersSourcesFindingsListCall) Context(ctx context.Context) *FoldersSourcesFindingsListCall {
 16133  	c.ctx_ = ctx
 16134  	return c
 16135  }
 16136  
 16137  // Header returns a http.Header that can be modified by the caller to add
 16138  // headers to the request.
 16139  func (c *FoldersSourcesFindingsListCall) Header() http.Header {
 16140  	if c.header_ == nil {
 16141  		c.header_ = make(http.Header)
 16142  	}
 16143  	return c.header_
 16144  }
 16145  
 16146  func (c *FoldersSourcesFindingsListCall) doRequest(alt string) (*http.Response, error) {
 16147  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 16148  	if c.ifNoneMatch_ != "" {
 16149  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 16150  	}
 16151  	var body io.Reader = nil
 16152  	c.urlParams_.Set("alt", alt)
 16153  	c.urlParams_.Set("prettyPrint", "false")
 16154  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/findings")
 16155  	urls += "?" + c.urlParams_.Encode()
 16156  	req, err := http.NewRequest("GET", urls, body)
 16157  	if err != nil {
 16158  		return nil, err
 16159  	}
 16160  	req.Header = reqHeaders
 16161  	googleapi.Expand(req.URL, map[string]string{
 16162  		"parent": c.parent,
 16163  	})
 16164  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16165  }
 16166  
 16167  // Do executes the "securitycenter.folders.sources.findings.list" call.
 16168  // Any non-2xx status code is an error. Response headers are in either
 16169  // *ListFindingsResponse.ServerResponse.Header or (if a response was returned
 16170  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 16171  // check whether the returned error was because http.StatusNotModified was
 16172  // returned.
 16173  func (c *FoldersSourcesFindingsListCall) Do(opts ...googleapi.CallOption) (*ListFindingsResponse, error) {
 16174  	gensupport.SetOptions(c.urlParams_, opts...)
 16175  	res, err := c.doRequest("json")
 16176  	if res != nil && res.StatusCode == http.StatusNotModified {
 16177  		if res.Body != nil {
 16178  			res.Body.Close()
 16179  		}
 16180  		return nil, gensupport.WrapError(&googleapi.Error{
 16181  			Code:   res.StatusCode,
 16182  			Header: res.Header,
 16183  		})
 16184  	}
 16185  	if err != nil {
 16186  		return nil, err
 16187  	}
 16188  	defer googleapi.CloseBody(res)
 16189  	if err := googleapi.CheckResponse(res); err != nil {
 16190  		return nil, gensupport.WrapError(err)
 16191  	}
 16192  	ret := &ListFindingsResponse{
 16193  		ServerResponse: googleapi.ServerResponse{
 16194  			Header:         res.Header,
 16195  			HTTPStatusCode: res.StatusCode,
 16196  		},
 16197  	}
 16198  	target := &ret
 16199  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16200  		return nil, err
 16201  	}
 16202  	return ret, nil
 16203  }
 16204  
 16205  // Pages invokes f for each page of results.
 16206  // A non-nil error returned from f will halt the iteration.
 16207  // The provided context supersedes any context provided to the Context method.
 16208  func (c *FoldersSourcesFindingsListCall) Pages(ctx context.Context, f func(*ListFindingsResponse) error) error {
 16209  	c.ctx_ = ctx
 16210  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 16211  	for {
 16212  		x, err := c.Do()
 16213  		if err != nil {
 16214  			return err
 16215  		}
 16216  		if err := f(x); err != nil {
 16217  			return err
 16218  		}
 16219  		if x.NextPageToken == "" {
 16220  			return nil
 16221  		}
 16222  		c.PageToken(x.NextPageToken)
 16223  	}
 16224  }
 16225  
 16226  type FoldersSourcesFindingsPatchCall struct {
 16227  	s          *Service
 16228  	name       string
 16229  	finding    *Finding
 16230  	urlParams_ gensupport.URLParams
 16231  	ctx_       context.Context
 16232  	header_    http.Header
 16233  }
 16234  
 16235  // Patch: Creates or updates a finding. The corresponding source must exist for
 16236  // a finding creation to succeed.
 16237  //
 16238  //   - name: The relative resource name
 16239  //     (https://cloud.google.com/apis/design/resource_names#relative_resource_name)
 16240  //     of the finding. Example:
 16241  //     "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}"
 16242  //     , "folders/{folder_id}/sources/{source_id}/findings/{finding_id}",
 16243  //     "projects/{project_id}/sources/{source_id}/findings/{finding_id}".
 16244  func (r *FoldersSourcesFindingsService) Patch(name string, finding *Finding) *FoldersSourcesFindingsPatchCall {
 16245  	c := &FoldersSourcesFindingsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16246  	c.name = name
 16247  	c.finding = finding
 16248  	return c
 16249  }
 16250  
 16251  // UpdateMask sets the optional parameter "updateMask": The FieldMask to use
 16252  // when updating the finding resource. This field should not be specified when
 16253  // creating a finding. When updating a finding, an empty mask is treated as
 16254  // updating all mutable fields and replacing source_properties. Individual
 16255  // source_properties can be added/updated by using "source_properties." in the
 16256  // field mask.
 16257  func (c *FoldersSourcesFindingsPatchCall) UpdateMask(updateMask string) *FoldersSourcesFindingsPatchCall {
 16258  	c.urlParams_.Set("updateMask", updateMask)
 16259  	return c
 16260  }
 16261  
 16262  // Fields allows partial responses to be retrieved. See
 16263  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16264  // details.
 16265  func (c *FoldersSourcesFindingsPatchCall) Fields(s ...googleapi.Field) *FoldersSourcesFindingsPatchCall {
 16266  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16267  	return c
 16268  }
 16269  
 16270  // Context sets the context to be used in this call's Do method.
 16271  func (c *FoldersSourcesFindingsPatchCall) Context(ctx context.Context) *FoldersSourcesFindingsPatchCall {
 16272  	c.ctx_ = ctx
 16273  	return c
 16274  }
 16275  
 16276  // Header returns a http.Header that can be modified by the caller to add
 16277  // headers to the request.
 16278  func (c *FoldersSourcesFindingsPatchCall) Header() http.Header {
 16279  	if c.header_ == nil {
 16280  		c.header_ = make(http.Header)
 16281  	}
 16282  	return c.header_
 16283  }
 16284  
 16285  func (c *FoldersSourcesFindingsPatchCall) doRequest(alt string) (*http.Response, error) {
 16286  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 16287  	var body io.Reader = nil
 16288  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.finding)
 16289  	if err != nil {
 16290  		return nil, err
 16291  	}
 16292  	c.urlParams_.Set("alt", alt)
 16293  	c.urlParams_.Set("prettyPrint", "false")
 16294  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 16295  	urls += "?" + c.urlParams_.Encode()
 16296  	req, err := http.NewRequest("PATCH", urls, body)
 16297  	if err != nil {
 16298  		return nil, err
 16299  	}
 16300  	req.Header = reqHeaders
 16301  	googleapi.Expand(req.URL, map[string]string{
 16302  		"name": c.name,
 16303  	})
 16304  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16305  }
 16306  
 16307  // Do executes the "securitycenter.folders.sources.findings.patch" call.
 16308  // Any non-2xx status code is an error. Response headers are in either
 16309  // *Finding.ServerResponse.Header or (if a response was returned at all) in
 16310  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 16311  // whether the returned error was because http.StatusNotModified was returned.
 16312  func (c *FoldersSourcesFindingsPatchCall) Do(opts ...googleapi.CallOption) (*Finding, error) {
 16313  	gensupport.SetOptions(c.urlParams_, opts...)
 16314  	res, err := c.doRequest("json")
 16315  	if res != nil && res.StatusCode == http.StatusNotModified {
 16316  		if res.Body != nil {
 16317  			res.Body.Close()
 16318  		}
 16319  		return nil, gensupport.WrapError(&googleapi.Error{
 16320  			Code:   res.StatusCode,
 16321  			Header: res.Header,
 16322  		})
 16323  	}
 16324  	if err != nil {
 16325  		return nil, err
 16326  	}
 16327  	defer googleapi.CloseBody(res)
 16328  	if err := googleapi.CheckResponse(res); err != nil {
 16329  		return nil, gensupport.WrapError(err)
 16330  	}
 16331  	ret := &Finding{
 16332  		ServerResponse: googleapi.ServerResponse{
 16333  			Header:         res.Header,
 16334  			HTTPStatusCode: res.StatusCode,
 16335  		},
 16336  	}
 16337  	target := &ret
 16338  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16339  		return nil, err
 16340  	}
 16341  	return ret, nil
 16342  }
 16343  
 16344  type FoldersSourcesFindingsSetMuteCall struct {
 16345  	s              *Service
 16346  	name           string
 16347  	setmuterequest *SetMuteRequest
 16348  	urlParams_     gensupport.URLParams
 16349  	ctx_           context.Context
 16350  	header_        http.Header
 16351  }
 16352  
 16353  // SetMute: Updates the mute state of a finding.
 16354  //
 16355  //   - name: The relative resource name
 16356  //     (https://cloud.google.com/apis/design/resource_names#relative_resource_name)
 16357  //     of the finding. Example:
 16358  //     "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}"
 16359  //     , "folders/{folder_id}/sources/{source_id}/findings/{finding_id}",
 16360  //     "projects/{project_id}/sources/{source_id}/findings/{finding_id}".
 16361  func (r *FoldersSourcesFindingsService) SetMute(name string, setmuterequest *SetMuteRequest) *FoldersSourcesFindingsSetMuteCall {
 16362  	c := &FoldersSourcesFindingsSetMuteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16363  	c.name = name
 16364  	c.setmuterequest = setmuterequest
 16365  	return c
 16366  }
 16367  
 16368  // Fields allows partial responses to be retrieved. See
 16369  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16370  // details.
 16371  func (c *FoldersSourcesFindingsSetMuteCall) Fields(s ...googleapi.Field) *FoldersSourcesFindingsSetMuteCall {
 16372  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16373  	return c
 16374  }
 16375  
 16376  // Context sets the context to be used in this call's Do method.
 16377  func (c *FoldersSourcesFindingsSetMuteCall) Context(ctx context.Context) *FoldersSourcesFindingsSetMuteCall {
 16378  	c.ctx_ = ctx
 16379  	return c
 16380  }
 16381  
 16382  // Header returns a http.Header that can be modified by the caller to add
 16383  // headers to the request.
 16384  func (c *FoldersSourcesFindingsSetMuteCall) Header() http.Header {
 16385  	if c.header_ == nil {
 16386  		c.header_ = make(http.Header)
 16387  	}
 16388  	return c.header_
 16389  }
 16390  
 16391  func (c *FoldersSourcesFindingsSetMuteCall) doRequest(alt string) (*http.Response, error) {
 16392  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 16393  	var body io.Reader = nil
 16394  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setmuterequest)
 16395  	if err != nil {
 16396  		return nil, err
 16397  	}
 16398  	c.urlParams_.Set("alt", alt)
 16399  	c.urlParams_.Set("prettyPrint", "false")
 16400  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:setMute")
 16401  	urls += "?" + c.urlParams_.Encode()
 16402  	req, err := http.NewRequest("POST", urls, body)
 16403  	if err != nil {
 16404  		return nil, err
 16405  	}
 16406  	req.Header = reqHeaders
 16407  	googleapi.Expand(req.URL, map[string]string{
 16408  		"name": c.name,
 16409  	})
 16410  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16411  }
 16412  
 16413  // Do executes the "securitycenter.folders.sources.findings.setMute" call.
 16414  // Any non-2xx status code is an error. Response headers are in either
 16415  // *Finding.ServerResponse.Header or (if a response was returned at all) in
 16416  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 16417  // whether the returned error was because http.StatusNotModified was returned.
 16418  func (c *FoldersSourcesFindingsSetMuteCall) Do(opts ...googleapi.CallOption) (*Finding, error) {
 16419  	gensupport.SetOptions(c.urlParams_, opts...)
 16420  	res, err := c.doRequest("json")
 16421  	if res != nil && res.StatusCode == http.StatusNotModified {
 16422  		if res.Body != nil {
 16423  			res.Body.Close()
 16424  		}
 16425  		return nil, gensupport.WrapError(&googleapi.Error{
 16426  			Code:   res.StatusCode,
 16427  			Header: res.Header,
 16428  		})
 16429  	}
 16430  	if err != nil {
 16431  		return nil, err
 16432  	}
 16433  	defer googleapi.CloseBody(res)
 16434  	if err := googleapi.CheckResponse(res); err != nil {
 16435  		return nil, gensupport.WrapError(err)
 16436  	}
 16437  	ret := &Finding{
 16438  		ServerResponse: googleapi.ServerResponse{
 16439  			Header:         res.Header,
 16440  			HTTPStatusCode: res.StatusCode,
 16441  		},
 16442  	}
 16443  	target := &ret
 16444  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16445  		return nil, err
 16446  	}
 16447  	return ret, nil
 16448  }
 16449  
 16450  type FoldersSourcesFindingsSetStateCall struct {
 16451  	s                      *Service
 16452  	name                   string
 16453  	setfindingstaterequest *SetFindingStateRequest
 16454  	urlParams_             gensupport.URLParams
 16455  	ctx_                   context.Context
 16456  	header_                http.Header
 16457  }
 16458  
 16459  // SetState: Updates the state of a finding.
 16460  //
 16461  //   - name: The relative resource name
 16462  //     (https://cloud.google.com/apis/design/resource_names#relative_resource_name)
 16463  //     of the finding. Example:
 16464  //     "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}"
 16465  //     , "folders/{folder_id}/sources/{source_id}/findings/{finding_id}",
 16466  //     "projects/{project_id}/sources/{source_id}/findings/{finding_id}".
 16467  func (r *FoldersSourcesFindingsService) SetState(name string, setfindingstaterequest *SetFindingStateRequest) *FoldersSourcesFindingsSetStateCall {
 16468  	c := &FoldersSourcesFindingsSetStateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16469  	c.name = name
 16470  	c.setfindingstaterequest = setfindingstaterequest
 16471  	return c
 16472  }
 16473  
 16474  // Fields allows partial responses to be retrieved. See
 16475  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16476  // details.
 16477  func (c *FoldersSourcesFindingsSetStateCall) Fields(s ...googleapi.Field) *FoldersSourcesFindingsSetStateCall {
 16478  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16479  	return c
 16480  }
 16481  
 16482  // Context sets the context to be used in this call's Do method.
 16483  func (c *FoldersSourcesFindingsSetStateCall) Context(ctx context.Context) *FoldersSourcesFindingsSetStateCall {
 16484  	c.ctx_ = ctx
 16485  	return c
 16486  }
 16487  
 16488  // Header returns a http.Header that can be modified by the caller to add
 16489  // headers to the request.
 16490  func (c *FoldersSourcesFindingsSetStateCall) Header() http.Header {
 16491  	if c.header_ == nil {
 16492  		c.header_ = make(http.Header)
 16493  	}
 16494  	return c.header_
 16495  }
 16496  
 16497  func (c *FoldersSourcesFindingsSetStateCall) doRequest(alt string) (*http.Response, error) {
 16498  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 16499  	var body io.Reader = nil
 16500  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setfindingstaterequest)
 16501  	if err != nil {
 16502  		return nil, err
 16503  	}
 16504  	c.urlParams_.Set("alt", alt)
 16505  	c.urlParams_.Set("prettyPrint", "false")
 16506  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:setState")
 16507  	urls += "?" + c.urlParams_.Encode()
 16508  	req, err := http.NewRequest("POST", urls, body)
 16509  	if err != nil {
 16510  		return nil, err
 16511  	}
 16512  	req.Header = reqHeaders
 16513  	googleapi.Expand(req.URL, map[string]string{
 16514  		"name": c.name,
 16515  	})
 16516  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16517  }
 16518  
 16519  // Do executes the "securitycenter.folders.sources.findings.setState" call.
 16520  // Any non-2xx status code is an error. Response headers are in either
 16521  // *Finding.ServerResponse.Header or (if a response was returned at all) in
 16522  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 16523  // whether the returned error was because http.StatusNotModified was returned.
 16524  func (c *FoldersSourcesFindingsSetStateCall) Do(opts ...googleapi.CallOption) (*Finding, error) {
 16525  	gensupport.SetOptions(c.urlParams_, opts...)
 16526  	res, err := c.doRequest("json")
 16527  	if res != nil && res.StatusCode == http.StatusNotModified {
 16528  		if res.Body != nil {
 16529  			res.Body.Close()
 16530  		}
 16531  		return nil, gensupport.WrapError(&googleapi.Error{
 16532  			Code:   res.StatusCode,
 16533  			Header: res.Header,
 16534  		})
 16535  	}
 16536  	if err != nil {
 16537  		return nil, err
 16538  	}
 16539  	defer googleapi.CloseBody(res)
 16540  	if err := googleapi.CheckResponse(res); err != nil {
 16541  		return nil, gensupport.WrapError(err)
 16542  	}
 16543  	ret := &Finding{
 16544  		ServerResponse: googleapi.ServerResponse{
 16545  			Header:         res.Header,
 16546  			HTTPStatusCode: res.StatusCode,
 16547  		},
 16548  	}
 16549  	target := &ret
 16550  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16551  		return nil, err
 16552  	}
 16553  	return ret, nil
 16554  }
 16555  
 16556  type FoldersSourcesFindingsUpdateSecurityMarksCall struct {
 16557  	s             *Service
 16558  	name          string
 16559  	securitymarks *SecurityMarks
 16560  	urlParams_    gensupport.URLParams
 16561  	ctx_          context.Context
 16562  	header_       http.Header
 16563  }
 16564  
 16565  // UpdateSecurityMarks: Updates security marks.
 16566  //
 16567  //   - name: The relative resource name of the SecurityMarks. See:
 16568  //     https://cloud.google.com/apis/design/resource_names#relative_resource_name
 16569  //     Examples:
 16570  //     "organizations/{organization_id}/assets/{asset_id}/securityMarks"
 16571  //     "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/
 16572  //     securityMarks".
 16573  func (r *FoldersSourcesFindingsService) UpdateSecurityMarks(name string, securitymarks *SecurityMarks) *FoldersSourcesFindingsUpdateSecurityMarksCall {
 16574  	c := &FoldersSourcesFindingsUpdateSecurityMarksCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16575  	c.name = name
 16576  	c.securitymarks = securitymarks
 16577  	return c
 16578  }
 16579  
 16580  // StartTime sets the optional parameter "startTime": The time at which the
 16581  // updated SecurityMarks take effect. If not set uses current server time.
 16582  // Updates will be applied to the SecurityMarks that are active immediately
 16583  // preceding this time. Must be earlier or equal to the server time.
 16584  func (c *FoldersSourcesFindingsUpdateSecurityMarksCall) StartTime(startTime string) *FoldersSourcesFindingsUpdateSecurityMarksCall {
 16585  	c.urlParams_.Set("startTime", startTime)
 16586  	return c
 16587  }
 16588  
 16589  // UpdateMask sets the optional parameter "updateMask": The FieldMask to use
 16590  // when updating the security marks resource. The field mask must not contain
 16591  // duplicate fields. If empty or set to "marks", all marks will be replaced.
 16592  // Individual marks can be updated using "marks.".
 16593  func (c *FoldersSourcesFindingsUpdateSecurityMarksCall) UpdateMask(updateMask string) *FoldersSourcesFindingsUpdateSecurityMarksCall {
 16594  	c.urlParams_.Set("updateMask", updateMask)
 16595  	return c
 16596  }
 16597  
 16598  // Fields allows partial responses to be retrieved. See
 16599  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16600  // details.
 16601  func (c *FoldersSourcesFindingsUpdateSecurityMarksCall) Fields(s ...googleapi.Field) *FoldersSourcesFindingsUpdateSecurityMarksCall {
 16602  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16603  	return c
 16604  }
 16605  
 16606  // Context sets the context to be used in this call's Do method.
 16607  func (c *FoldersSourcesFindingsUpdateSecurityMarksCall) Context(ctx context.Context) *FoldersSourcesFindingsUpdateSecurityMarksCall {
 16608  	c.ctx_ = ctx
 16609  	return c
 16610  }
 16611  
 16612  // Header returns a http.Header that can be modified by the caller to add
 16613  // headers to the request.
 16614  func (c *FoldersSourcesFindingsUpdateSecurityMarksCall) Header() http.Header {
 16615  	if c.header_ == nil {
 16616  		c.header_ = make(http.Header)
 16617  	}
 16618  	return c.header_
 16619  }
 16620  
 16621  func (c *FoldersSourcesFindingsUpdateSecurityMarksCall) doRequest(alt string) (*http.Response, error) {
 16622  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 16623  	var body io.Reader = nil
 16624  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.securitymarks)
 16625  	if err != nil {
 16626  		return nil, err
 16627  	}
 16628  	c.urlParams_.Set("alt", alt)
 16629  	c.urlParams_.Set("prettyPrint", "false")
 16630  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 16631  	urls += "?" + c.urlParams_.Encode()
 16632  	req, err := http.NewRequest("PATCH", urls, body)
 16633  	if err != nil {
 16634  		return nil, err
 16635  	}
 16636  	req.Header = reqHeaders
 16637  	googleapi.Expand(req.URL, map[string]string{
 16638  		"name": c.name,
 16639  	})
 16640  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16641  }
 16642  
 16643  // Do executes the "securitycenter.folders.sources.findings.updateSecurityMarks" call.
 16644  // Any non-2xx status code is an error. Response headers are in either
 16645  // *SecurityMarks.ServerResponse.Header or (if a response was returned at all)
 16646  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 16647  // whether the returned error was because http.StatusNotModified was returned.
 16648  func (c *FoldersSourcesFindingsUpdateSecurityMarksCall) Do(opts ...googleapi.CallOption) (*SecurityMarks, error) {
 16649  	gensupport.SetOptions(c.urlParams_, opts...)
 16650  	res, err := c.doRequest("json")
 16651  	if res != nil && res.StatusCode == http.StatusNotModified {
 16652  		if res.Body != nil {
 16653  			res.Body.Close()
 16654  		}
 16655  		return nil, gensupport.WrapError(&googleapi.Error{
 16656  			Code:   res.StatusCode,
 16657  			Header: res.Header,
 16658  		})
 16659  	}
 16660  	if err != nil {
 16661  		return nil, err
 16662  	}
 16663  	defer googleapi.CloseBody(res)
 16664  	if err := googleapi.CheckResponse(res); err != nil {
 16665  		return nil, gensupport.WrapError(err)
 16666  	}
 16667  	ret := &SecurityMarks{
 16668  		ServerResponse: googleapi.ServerResponse{
 16669  			Header:         res.Header,
 16670  			HTTPStatusCode: res.StatusCode,
 16671  		},
 16672  	}
 16673  	target := &ret
 16674  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16675  		return nil, err
 16676  	}
 16677  	return ret, nil
 16678  }
 16679  
 16680  type FoldersSourcesFindingsExternalSystemsPatchCall struct {
 16681  	s                                         *Service
 16682  	name                                      string
 16683  	googlecloudsecuritycenterv1externalsystem *GoogleCloudSecuritycenterV1ExternalSystem
 16684  	urlParams_                                gensupport.URLParams
 16685  	ctx_                                      context.Context
 16686  	header_                                   http.Header
 16687  }
 16688  
 16689  // Patch: Updates external system. This is for a given finding.
 16690  //
 16691  //   - name: Full resource name of the external system, for example:
 16692  //     "organizations/1234/sources/5678/findings/123456/externalSystems/jira",
 16693  //     "folders/1234/sources/5678/findings/123456/externalSystems/jira",
 16694  //     "projects/1234/sources/5678/findings/123456/externalSystems/jira".
 16695  func (r *FoldersSourcesFindingsExternalSystemsService) Patch(name string, googlecloudsecuritycenterv1externalsystem *GoogleCloudSecuritycenterV1ExternalSystem) *FoldersSourcesFindingsExternalSystemsPatchCall {
 16696  	c := &FoldersSourcesFindingsExternalSystemsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16697  	c.name = name
 16698  	c.googlecloudsecuritycenterv1externalsystem = googlecloudsecuritycenterv1externalsystem
 16699  	return c
 16700  }
 16701  
 16702  // UpdateMask sets the optional parameter "updateMask": The FieldMask to use
 16703  // when updating the external system resource. If empty all mutable fields will
 16704  // be updated.
 16705  func (c *FoldersSourcesFindingsExternalSystemsPatchCall) UpdateMask(updateMask string) *FoldersSourcesFindingsExternalSystemsPatchCall {
 16706  	c.urlParams_.Set("updateMask", updateMask)
 16707  	return c
 16708  }
 16709  
 16710  // Fields allows partial responses to be retrieved. See
 16711  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16712  // details.
 16713  func (c *FoldersSourcesFindingsExternalSystemsPatchCall) Fields(s ...googleapi.Field) *FoldersSourcesFindingsExternalSystemsPatchCall {
 16714  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16715  	return c
 16716  }
 16717  
 16718  // Context sets the context to be used in this call's Do method.
 16719  func (c *FoldersSourcesFindingsExternalSystemsPatchCall) Context(ctx context.Context) *FoldersSourcesFindingsExternalSystemsPatchCall {
 16720  	c.ctx_ = ctx
 16721  	return c
 16722  }
 16723  
 16724  // Header returns a http.Header that can be modified by the caller to add
 16725  // headers to the request.
 16726  func (c *FoldersSourcesFindingsExternalSystemsPatchCall) Header() http.Header {
 16727  	if c.header_ == nil {
 16728  		c.header_ = make(http.Header)
 16729  	}
 16730  	return c.header_
 16731  }
 16732  
 16733  func (c *FoldersSourcesFindingsExternalSystemsPatchCall) doRequest(alt string) (*http.Response, error) {
 16734  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 16735  	var body io.Reader = nil
 16736  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1externalsystem)
 16737  	if err != nil {
 16738  		return nil, err
 16739  	}
 16740  	c.urlParams_.Set("alt", alt)
 16741  	c.urlParams_.Set("prettyPrint", "false")
 16742  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 16743  	urls += "?" + c.urlParams_.Encode()
 16744  	req, err := http.NewRequest("PATCH", urls, body)
 16745  	if err != nil {
 16746  		return nil, err
 16747  	}
 16748  	req.Header = reqHeaders
 16749  	googleapi.Expand(req.URL, map[string]string{
 16750  		"name": c.name,
 16751  	})
 16752  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16753  }
 16754  
 16755  // Do executes the "securitycenter.folders.sources.findings.externalSystems.patch" call.
 16756  // Any non-2xx status code is an error. Response headers are in either
 16757  // *GoogleCloudSecuritycenterV1ExternalSystem.ServerResponse.Header or (if a
 16758  // response was returned at all) in error.(*googleapi.Error).Header. Use
 16759  // googleapi.IsNotModified to check whether the returned error was because
 16760  // http.StatusNotModified was returned.
 16761  func (c *FoldersSourcesFindingsExternalSystemsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1ExternalSystem, error) {
 16762  	gensupport.SetOptions(c.urlParams_, opts...)
 16763  	res, err := c.doRequest("json")
 16764  	if res != nil && res.StatusCode == http.StatusNotModified {
 16765  		if res.Body != nil {
 16766  			res.Body.Close()
 16767  		}
 16768  		return nil, gensupport.WrapError(&googleapi.Error{
 16769  			Code:   res.StatusCode,
 16770  			Header: res.Header,
 16771  		})
 16772  	}
 16773  	if err != nil {
 16774  		return nil, err
 16775  	}
 16776  	defer googleapi.CloseBody(res)
 16777  	if err := googleapi.CheckResponse(res); err != nil {
 16778  		return nil, gensupport.WrapError(err)
 16779  	}
 16780  	ret := &GoogleCloudSecuritycenterV1ExternalSystem{
 16781  		ServerResponse: googleapi.ServerResponse{
 16782  			Header:         res.Header,
 16783  			HTTPStatusCode: res.StatusCode,
 16784  		},
 16785  	}
 16786  	target := &ret
 16787  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16788  		return nil, err
 16789  	}
 16790  	return ret, nil
 16791  }
 16792  
 16793  type OrganizationsGetOrganizationSettingsCall struct {
 16794  	s            *Service
 16795  	name         string
 16796  	urlParams_   gensupport.URLParams
 16797  	ifNoneMatch_ string
 16798  	ctx_         context.Context
 16799  	header_      http.Header
 16800  }
 16801  
 16802  // GetOrganizationSettings: Gets the settings for an organization.
 16803  //
 16804  //   - name: Name of the organization to get organization settings for. Its
 16805  //     format is "organizations/[organization_id]/organizationSettings".
 16806  func (r *OrganizationsService) GetOrganizationSettings(name string) *OrganizationsGetOrganizationSettingsCall {
 16807  	c := &OrganizationsGetOrganizationSettingsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16808  	c.name = name
 16809  	return c
 16810  }
 16811  
 16812  // Fields allows partial responses to be retrieved. See
 16813  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16814  // details.
 16815  func (c *OrganizationsGetOrganizationSettingsCall) Fields(s ...googleapi.Field) *OrganizationsGetOrganizationSettingsCall {
 16816  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16817  	return c
 16818  }
 16819  
 16820  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 16821  // object's ETag matches the given value. This is useful for getting updates
 16822  // only after the object has changed since the last request.
 16823  func (c *OrganizationsGetOrganizationSettingsCall) IfNoneMatch(entityTag string) *OrganizationsGetOrganizationSettingsCall {
 16824  	c.ifNoneMatch_ = entityTag
 16825  	return c
 16826  }
 16827  
 16828  // Context sets the context to be used in this call's Do method.
 16829  func (c *OrganizationsGetOrganizationSettingsCall) Context(ctx context.Context) *OrganizationsGetOrganizationSettingsCall {
 16830  	c.ctx_ = ctx
 16831  	return c
 16832  }
 16833  
 16834  // Header returns a http.Header that can be modified by the caller to add
 16835  // headers to the request.
 16836  func (c *OrganizationsGetOrganizationSettingsCall) Header() http.Header {
 16837  	if c.header_ == nil {
 16838  		c.header_ = make(http.Header)
 16839  	}
 16840  	return c.header_
 16841  }
 16842  
 16843  func (c *OrganizationsGetOrganizationSettingsCall) doRequest(alt string) (*http.Response, error) {
 16844  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 16845  	if c.ifNoneMatch_ != "" {
 16846  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 16847  	}
 16848  	var body io.Reader = nil
 16849  	c.urlParams_.Set("alt", alt)
 16850  	c.urlParams_.Set("prettyPrint", "false")
 16851  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 16852  	urls += "?" + c.urlParams_.Encode()
 16853  	req, err := http.NewRequest("GET", urls, body)
 16854  	if err != nil {
 16855  		return nil, err
 16856  	}
 16857  	req.Header = reqHeaders
 16858  	googleapi.Expand(req.URL, map[string]string{
 16859  		"name": c.name,
 16860  	})
 16861  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16862  }
 16863  
 16864  // Do executes the "securitycenter.organizations.getOrganizationSettings" call.
 16865  // Any non-2xx status code is an error. Response headers are in either
 16866  // *OrganizationSettings.ServerResponse.Header or (if a response was returned
 16867  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 16868  // check whether the returned error was because http.StatusNotModified was
 16869  // returned.
 16870  func (c *OrganizationsGetOrganizationSettingsCall) Do(opts ...googleapi.CallOption) (*OrganizationSettings, error) {
 16871  	gensupport.SetOptions(c.urlParams_, opts...)
 16872  	res, err := c.doRequest("json")
 16873  	if res != nil && res.StatusCode == http.StatusNotModified {
 16874  		if res.Body != nil {
 16875  			res.Body.Close()
 16876  		}
 16877  		return nil, gensupport.WrapError(&googleapi.Error{
 16878  			Code:   res.StatusCode,
 16879  			Header: res.Header,
 16880  		})
 16881  	}
 16882  	if err != nil {
 16883  		return nil, err
 16884  	}
 16885  	defer googleapi.CloseBody(res)
 16886  	if err := googleapi.CheckResponse(res); err != nil {
 16887  		return nil, gensupport.WrapError(err)
 16888  	}
 16889  	ret := &OrganizationSettings{
 16890  		ServerResponse: googleapi.ServerResponse{
 16891  			Header:         res.Header,
 16892  			HTTPStatusCode: res.StatusCode,
 16893  		},
 16894  	}
 16895  	target := &ret
 16896  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16897  		return nil, err
 16898  	}
 16899  	return ret, nil
 16900  }
 16901  
 16902  type OrganizationsUpdateOrganizationSettingsCall struct {
 16903  	s                    *Service
 16904  	name                 string
 16905  	organizationsettings *OrganizationSettings
 16906  	urlParams_           gensupport.URLParams
 16907  	ctx_                 context.Context
 16908  	header_              http.Header
 16909  }
 16910  
 16911  // UpdateOrganizationSettings: Updates an organization's settings.
 16912  //
 16913  //   - name: The relative resource name of the settings. See:
 16914  //     https://cloud.google.com/apis/design/resource_names#relative_resource_name
 16915  //     Example: "organizations/{organization_id}/organizationSettings".
 16916  func (r *OrganizationsService) UpdateOrganizationSettings(name string, organizationsettings *OrganizationSettings) *OrganizationsUpdateOrganizationSettingsCall {
 16917  	c := &OrganizationsUpdateOrganizationSettingsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16918  	c.name = name
 16919  	c.organizationsettings = organizationsettings
 16920  	return c
 16921  }
 16922  
 16923  // UpdateMask sets the optional parameter "updateMask": The FieldMask to use
 16924  // when updating the settings resource. If empty all mutable fields will be
 16925  // updated.
 16926  func (c *OrganizationsUpdateOrganizationSettingsCall) UpdateMask(updateMask string) *OrganizationsUpdateOrganizationSettingsCall {
 16927  	c.urlParams_.Set("updateMask", updateMask)
 16928  	return c
 16929  }
 16930  
 16931  // Fields allows partial responses to be retrieved. See
 16932  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16933  // details.
 16934  func (c *OrganizationsUpdateOrganizationSettingsCall) Fields(s ...googleapi.Field) *OrganizationsUpdateOrganizationSettingsCall {
 16935  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16936  	return c
 16937  }
 16938  
 16939  // Context sets the context to be used in this call's Do method.
 16940  func (c *OrganizationsUpdateOrganizationSettingsCall) Context(ctx context.Context) *OrganizationsUpdateOrganizationSettingsCall {
 16941  	c.ctx_ = ctx
 16942  	return c
 16943  }
 16944  
 16945  // Header returns a http.Header that can be modified by the caller to add
 16946  // headers to the request.
 16947  func (c *OrganizationsUpdateOrganizationSettingsCall) Header() http.Header {
 16948  	if c.header_ == nil {
 16949  		c.header_ = make(http.Header)
 16950  	}
 16951  	return c.header_
 16952  }
 16953  
 16954  func (c *OrganizationsUpdateOrganizationSettingsCall) doRequest(alt string) (*http.Response, error) {
 16955  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 16956  	var body io.Reader = nil
 16957  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.organizationsettings)
 16958  	if err != nil {
 16959  		return nil, err
 16960  	}
 16961  	c.urlParams_.Set("alt", alt)
 16962  	c.urlParams_.Set("prettyPrint", "false")
 16963  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 16964  	urls += "?" + c.urlParams_.Encode()
 16965  	req, err := http.NewRequest("PATCH", urls, body)
 16966  	if err != nil {
 16967  		return nil, err
 16968  	}
 16969  	req.Header = reqHeaders
 16970  	googleapi.Expand(req.URL, map[string]string{
 16971  		"name": c.name,
 16972  	})
 16973  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16974  }
 16975  
 16976  // Do executes the "securitycenter.organizations.updateOrganizationSettings" call.
 16977  // Any non-2xx status code is an error. Response headers are in either
 16978  // *OrganizationSettings.ServerResponse.Header or (if a response was returned
 16979  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 16980  // check whether the returned error was because http.StatusNotModified was
 16981  // returned.
 16982  func (c *OrganizationsUpdateOrganizationSettingsCall) Do(opts ...googleapi.CallOption) (*OrganizationSettings, error) {
 16983  	gensupport.SetOptions(c.urlParams_, opts...)
 16984  	res, err := c.doRequest("json")
 16985  	if res != nil && res.StatusCode == http.StatusNotModified {
 16986  		if res.Body != nil {
 16987  			res.Body.Close()
 16988  		}
 16989  		return nil, gensupport.WrapError(&googleapi.Error{
 16990  			Code:   res.StatusCode,
 16991  			Header: res.Header,
 16992  		})
 16993  	}
 16994  	if err != nil {
 16995  		return nil, err
 16996  	}
 16997  	defer googleapi.CloseBody(res)
 16998  	if err := googleapi.CheckResponse(res); err != nil {
 16999  		return nil, gensupport.WrapError(err)
 17000  	}
 17001  	ret := &OrganizationSettings{
 17002  		ServerResponse: googleapi.ServerResponse{
 17003  			Header:         res.Header,
 17004  			HTTPStatusCode: res.StatusCode,
 17005  		},
 17006  	}
 17007  	target := &ret
 17008  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17009  		return nil, err
 17010  	}
 17011  	return ret, nil
 17012  }
 17013  
 17014  type OrganizationsAssetsGroupCall struct {
 17015  	s                  *Service
 17016  	parent             string
 17017  	groupassetsrequest *GroupAssetsRequest
 17018  	urlParams_         gensupport.URLParams
 17019  	ctx_               context.Context
 17020  	header_            http.Header
 17021  }
 17022  
 17023  // Group: Filters an organization's assets and groups them by their specified
 17024  // properties.
 17025  //
 17026  //   - parent: The name of the parent to group the assets by. Its format is
 17027  //     "organizations/[organization_id]", "folders/[folder_id]", or
 17028  //     "projects/[project_id]".
 17029  func (r *OrganizationsAssetsService) Group(parent string, groupassetsrequest *GroupAssetsRequest) *OrganizationsAssetsGroupCall {
 17030  	c := &OrganizationsAssetsGroupCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17031  	c.parent = parent
 17032  	c.groupassetsrequest = groupassetsrequest
 17033  	return c
 17034  }
 17035  
 17036  // Fields allows partial responses to be retrieved. See
 17037  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17038  // details.
 17039  func (c *OrganizationsAssetsGroupCall) Fields(s ...googleapi.Field) *OrganizationsAssetsGroupCall {
 17040  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17041  	return c
 17042  }
 17043  
 17044  // Context sets the context to be used in this call's Do method.
 17045  func (c *OrganizationsAssetsGroupCall) Context(ctx context.Context) *OrganizationsAssetsGroupCall {
 17046  	c.ctx_ = ctx
 17047  	return c
 17048  }
 17049  
 17050  // Header returns a http.Header that can be modified by the caller to add
 17051  // headers to the request.
 17052  func (c *OrganizationsAssetsGroupCall) Header() http.Header {
 17053  	if c.header_ == nil {
 17054  		c.header_ = make(http.Header)
 17055  	}
 17056  	return c.header_
 17057  }
 17058  
 17059  func (c *OrganizationsAssetsGroupCall) doRequest(alt string) (*http.Response, error) {
 17060  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 17061  	var body io.Reader = nil
 17062  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.groupassetsrequest)
 17063  	if err != nil {
 17064  		return nil, err
 17065  	}
 17066  	c.urlParams_.Set("alt", alt)
 17067  	c.urlParams_.Set("prettyPrint", "false")
 17068  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/assets:group")
 17069  	urls += "?" + c.urlParams_.Encode()
 17070  	req, err := http.NewRequest("POST", urls, body)
 17071  	if err != nil {
 17072  		return nil, err
 17073  	}
 17074  	req.Header = reqHeaders
 17075  	googleapi.Expand(req.URL, map[string]string{
 17076  		"parent": c.parent,
 17077  	})
 17078  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17079  }
 17080  
 17081  // Do executes the "securitycenter.organizations.assets.group" call.
 17082  // Any non-2xx status code is an error. Response headers are in either
 17083  // *GroupAssetsResponse.ServerResponse.Header or (if a response was returned at
 17084  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 17085  // check whether the returned error was because http.StatusNotModified was
 17086  // returned.
 17087  func (c *OrganizationsAssetsGroupCall) Do(opts ...googleapi.CallOption) (*GroupAssetsResponse, error) {
 17088  	gensupport.SetOptions(c.urlParams_, opts...)
 17089  	res, err := c.doRequest("json")
 17090  	if res != nil && res.StatusCode == http.StatusNotModified {
 17091  		if res.Body != nil {
 17092  			res.Body.Close()
 17093  		}
 17094  		return nil, gensupport.WrapError(&googleapi.Error{
 17095  			Code:   res.StatusCode,
 17096  			Header: res.Header,
 17097  		})
 17098  	}
 17099  	if err != nil {
 17100  		return nil, err
 17101  	}
 17102  	defer googleapi.CloseBody(res)
 17103  	if err := googleapi.CheckResponse(res); err != nil {
 17104  		return nil, gensupport.WrapError(err)
 17105  	}
 17106  	ret := &GroupAssetsResponse{
 17107  		ServerResponse: googleapi.ServerResponse{
 17108  			Header:         res.Header,
 17109  			HTTPStatusCode: res.StatusCode,
 17110  		},
 17111  	}
 17112  	target := &ret
 17113  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17114  		return nil, err
 17115  	}
 17116  	return ret, nil
 17117  }
 17118  
 17119  // Pages invokes f for each page of results.
 17120  // A non-nil error returned from f will halt the iteration.
 17121  // The provided context supersedes any context provided to the Context method.
 17122  func (c *OrganizationsAssetsGroupCall) Pages(ctx context.Context, f func(*GroupAssetsResponse) error) error {
 17123  	c.ctx_ = ctx
 17124  	defer func(pt string) { c.groupassetsrequest.PageToken = pt }(c.groupassetsrequest.PageToken)
 17125  	for {
 17126  		x, err := c.Do()
 17127  		if err != nil {
 17128  			return err
 17129  		}
 17130  		if err := f(x); err != nil {
 17131  			return err
 17132  		}
 17133  		if x.NextPageToken == "" {
 17134  			return nil
 17135  		}
 17136  		c.groupassetsrequest.PageToken = x.NextPageToken
 17137  	}
 17138  }
 17139  
 17140  type OrganizationsAssetsListCall struct {
 17141  	s            *Service
 17142  	parent       string
 17143  	urlParams_   gensupport.URLParams
 17144  	ifNoneMatch_ string
 17145  	ctx_         context.Context
 17146  	header_      http.Header
 17147  }
 17148  
 17149  // List: Lists an organization's assets.
 17150  //
 17151  //   - parent: The name of the parent resource that contains the assets. The
 17152  //     value that you can specify on parent depends on the method in which you
 17153  //     specify parent. You can specify one of the following values:
 17154  //     "organizations/[organization_id]", "folders/[folder_id]", or
 17155  //     "projects/[project_id]".
 17156  func (r *OrganizationsAssetsService) List(parent string) *OrganizationsAssetsListCall {
 17157  	c := &OrganizationsAssetsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17158  	c.parent = parent
 17159  	return c
 17160  }
 17161  
 17162  // CompareDuration sets the optional parameter "compareDuration": When
 17163  // compare_duration is set, the ListAssetsResult's "state_change" attribute is
 17164  // updated to indicate whether the asset was added, removed, or remained
 17165  // present during the compare_duration period of time that precedes the
 17166  // read_time. This is the time between (read_time - compare_duration) and
 17167  // read_time. The state_change value is derived based on the presence of the
 17168  // asset at the two points in time. Intermediate state changes between the two
 17169  // times don't affect the result. For example, the results aren't affected if
 17170  // the asset is removed and re-created again. Possible "state_change" values
 17171  // when compare_duration is specified: * "ADDED": indicates that the asset was
 17172  // not present at the start of compare_duration, but present at read_time. *
 17173  // "REMOVED": indicates that the asset was present at the start of
 17174  // compare_duration, but not present at read_time. * "ACTIVE": indicates that
 17175  // the asset was present at both the start and the end of the time period
 17176  // defined by compare_duration and read_time. If compare_duration is not
 17177  // specified, then the only possible state_change is "UNUSED", which will be
 17178  // the state_change set for all assets present at read_time.
 17179  func (c *OrganizationsAssetsListCall) CompareDuration(compareDuration string) *OrganizationsAssetsListCall {
 17180  	c.urlParams_.Set("compareDuration", compareDuration)
 17181  	return c
 17182  }
 17183  
 17184  // FieldMask sets the optional parameter "fieldMask": A field mask to specify
 17185  // the ListAssetsResult fields to be listed in the response. An empty field
 17186  // mask will list all fields.
 17187  func (c *OrganizationsAssetsListCall) FieldMask(fieldMask string) *OrganizationsAssetsListCall {
 17188  	c.urlParams_.Set("fieldMask", fieldMask)
 17189  	return c
 17190  }
 17191  
 17192  // Filter sets the optional parameter "filter": Expression that defines the
 17193  // filter to apply across assets. The expression is a list of zero or more
 17194  // restrictions combined via logical operators `AND` and `OR`. Parentheses are
 17195  // supported, and `OR` has higher precedence than `AND`. Restrictions have the
 17196  // form ` ` and may have a `-` character in front of them to indicate negation.
 17197  // The fields map to those defined in the Asset resource. Examples include: *
 17198  // name * security_center_properties.resource_name *
 17199  // resource_properties.a_property * security_marks.marks.marka The supported
 17200  // operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer
 17201  // values. * `:`, meaning substring matching, for strings. The supported value
 17202  // types are: * string literals in quotes. * integer literals without quotes. *
 17203  // boolean literals `true` and `false` without quotes. The following are the
 17204  // allowed field and operator combinations: * name: `=` * update_time: `=`,
 17205  // `>`, `<`, `>=`, `<=` Usage: This should be milliseconds since epoch or an
 17206  // RFC3339 string. Examples: `update_time = "2019-06-10T16:07:18-07:00"
 17207  // `update_time = 1560208038000` * create_time: `=`, `>`, `<`, `>=`, `<=`
 17208  // Usage: This should be milliseconds since epoch or an RFC3339 string.
 17209  // Examples: `create_time = "2019-06-10T16:07:18-07:00" `create_time =
 17210  // 1560208038000` * iam_policy.policy_blob: `=`, `:` * resource_properties:
 17211  // `=`, `:`, `>`, `<`, `>=`, `<=` * security_marks.marks: `=`, `:` *
 17212  // security_center_properties.resource_name: `=`, `:` *
 17213  // security_center_properties.resource_display_name: `=`, `:` *
 17214  // security_center_properties.resource_type: `=`, `:` *
 17215  // security_center_properties.resource_parent: `=`, `:` *
 17216  // security_center_properties.resource_parent_display_name: `=`, `:` *
 17217  // security_center_properties.resource_project: `=`, `:` *
 17218  // security_center_properties.resource_project_display_name: `=`, `:` *
 17219  // security_center_properties.resource_owners: `=`, `:` For example,
 17220  // `resource_properties.size = 100` is a valid filter string. Use a partial
 17221  // match on the empty string to filter based on a property existing:
 17222  // `resource_properties.my_property : "" Use a negated partial match on the
 17223  // empty string to filter based on a property not existing:
 17224  // `-resource_properties.my_property : ""
 17225  func (c *OrganizationsAssetsListCall) Filter(filter string) *OrganizationsAssetsListCall {
 17226  	c.urlParams_.Set("filter", filter)
 17227  	return c
 17228  }
 17229  
 17230  // OrderBy sets the optional parameter "orderBy": Expression that defines what
 17231  // fields and order to use for sorting. The string value should follow SQL
 17232  // syntax: comma separated list of fields. For example:
 17233  // "name,resource_properties.a_property". The default sorting order is
 17234  // ascending. To specify descending order for a field, a suffix " desc" should
 17235  // be appended to the field name. For example: "name
 17236  // desc,resource_properties.a_property". Redundant space characters in the
 17237  // syntax are insignificant. "name desc,resource_properties.a_property" and "
 17238  // name desc , resource_properties.a_property " are equivalent. The following
 17239  // fields are supported: name update_time resource_properties
 17240  // security_marks.marks security_center_properties.resource_name
 17241  // security_center_properties.resource_display_name
 17242  // security_center_properties.resource_parent
 17243  // security_center_properties.resource_parent_display_name
 17244  // security_center_properties.resource_project
 17245  // security_center_properties.resource_project_display_name
 17246  // security_center_properties.resource_type
 17247  func (c *OrganizationsAssetsListCall) OrderBy(orderBy string) *OrganizationsAssetsListCall {
 17248  	c.urlParams_.Set("orderBy", orderBy)
 17249  	return c
 17250  }
 17251  
 17252  // PageSize sets the optional parameter "pageSize": The maximum number of
 17253  // results to return in a single response. Default is 10, minimum is 1, maximum
 17254  // is 1000.
 17255  func (c *OrganizationsAssetsListCall) PageSize(pageSize int64) *OrganizationsAssetsListCall {
 17256  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 17257  	return c
 17258  }
 17259  
 17260  // PageToken sets the optional parameter "pageToken": The value returned by the
 17261  // last `ListAssetsResponse`; indicates that this is a continuation of a prior
 17262  // `ListAssets` call, and that the system should return the next page of data.
 17263  func (c *OrganizationsAssetsListCall) PageToken(pageToken string) *OrganizationsAssetsListCall {
 17264  	c.urlParams_.Set("pageToken", pageToken)
 17265  	return c
 17266  }
 17267  
 17268  // ReadTime sets the optional parameter "readTime": Time used as a reference
 17269  // point when filtering assets. The filter is limited to assets existing at the
 17270  // supplied time and their values are those at that specific time. Absence of
 17271  // this field will default to the API's version of NOW.
 17272  func (c *OrganizationsAssetsListCall) ReadTime(readTime string) *OrganizationsAssetsListCall {
 17273  	c.urlParams_.Set("readTime", readTime)
 17274  	return c
 17275  }
 17276  
 17277  // Fields allows partial responses to be retrieved. See
 17278  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17279  // details.
 17280  func (c *OrganizationsAssetsListCall) Fields(s ...googleapi.Field) *OrganizationsAssetsListCall {
 17281  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17282  	return c
 17283  }
 17284  
 17285  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 17286  // object's ETag matches the given value. This is useful for getting updates
 17287  // only after the object has changed since the last request.
 17288  func (c *OrganizationsAssetsListCall) IfNoneMatch(entityTag string) *OrganizationsAssetsListCall {
 17289  	c.ifNoneMatch_ = entityTag
 17290  	return c
 17291  }
 17292  
 17293  // Context sets the context to be used in this call's Do method.
 17294  func (c *OrganizationsAssetsListCall) Context(ctx context.Context) *OrganizationsAssetsListCall {
 17295  	c.ctx_ = ctx
 17296  	return c
 17297  }
 17298  
 17299  // Header returns a http.Header that can be modified by the caller to add
 17300  // headers to the request.
 17301  func (c *OrganizationsAssetsListCall) Header() http.Header {
 17302  	if c.header_ == nil {
 17303  		c.header_ = make(http.Header)
 17304  	}
 17305  	return c.header_
 17306  }
 17307  
 17308  func (c *OrganizationsAssetsListCall) doRequest(alt string) (*http.Response, error) {
 17309  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 17310  	if c.ifNoneMatch_ != "" {
 17311  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 17312  	}
 17313  	var body io.Reader = nil
 17314  	c.urlParams_.Set("alt", alt)
 17315  	c.urlParams_.Set("prettyPrint", "false")
 17316  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/assets")
 17317  	urls += "?" + c.urlParams_.Encode()
 17318  	req, err := http.NewRequest("GET", urls, body)
 17319  	if err != nil {
 17320  		return nil, err
 17321  	}
 17322  	req.Header = reqHeaders
 17323  	googleapi.Expand(req.URL, map[string]string{
 17324  		"parent": c.parent,
 17325  	})
 17326  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17327  }
 17328  
 17329  // Do executes the "securitycenter.organizations.assets.list" call.
 17330  // Any non-2xx status code is an error. Response headers are in either
 17331  // *ListAssetsResponse.ServerResponse.Header or (if a response was returned at
 17332  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 17333  // check whether the returned error was because http.StatusNotModified was
 17334  // returned.
 17335  func (c *OrganizationsAssetsListCall) Do(opts ...googleapi.CallOption) (*ListAssetsResponse, error) {
 17336  	gensupport.SetOptions(c.urlParams_, opts...)
 17337  	res, err := c.doRequest("json")
 17338  	if res != nil && res.StatusCode == http.StatusNotModified {
 17339  		if res.Body != nil {
 17340  			res.Body.Close()
 17341  		}
 17342  		return nil, gensupport.WrapError(&googleapi.Error{
 17343  			Code:   res.StatusCode,
 17344  			Header: res.Header,
 17345  		})
 17346  	}
 17347  	if err != nil {
 17348  		return nil, err
 17349  	}
 17350  	defer googleapi.CloseBody(res)
 17351  	if err := googleapi.CheckResponse(res); err != nil {
 17352  		return nil, gensupport.WrapError(err)
 17353  	}
 17354  	ret := &ListAssetsResponse{
 17355  		ServerResponse: googleapi.ServerResponse{
 17356  			Header:         res.Header,
 17357  			HTTPStatusCode: res.StatusCode,
 17358  		},
 17359  	}
 17360  	target := &ret
 17361  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17362  		return nil, err
 17363  	}
 17364  	return ret, nil
 17365  }
 17366  
 17367  // Pages invokes f for each page of results.
 17368  // A non-nil error returned from f will halt the iteration.
 17369  // The provided context supersedes any context provided to the Context method.
 17370  func (c *OrganizationsAssetsListCall) Pages(ctx context.Context, f func(*ListAssetsResponse) error) error {
 17371  	c.ctx_ = ctx
 17372  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 17373  	for {
 17374  		x, err := c.Do()
 17375  		if err != nil {
 17376  			return err
 17377  		}
 17378  		if err := f(x); err != nil {
 17379  			return err
 17380  		}
 17381  		if x.NextPageToken == "" {
 17382  			return nil
 17383  		}
 17384  		c.PageToken(x.NextPageToken)
 17385  	}
 17386  }
 17387  
 17388  type OrganizationsAssetsRunDiscoveryCall struct {
 17389  	s                        *Service
 17390  	parent                   string
 17391  	runassetdiscoveryrequest *RunAssetDiscoveryRequest
 17392  	urlParams_               gensupport.URLParams
 17393  	ctx_                     context.Context
 17394  	header_                  http.Header
 17395  }
 17396  
 17397  // RunDiscovery: Runs asset discovery. The discovery is tracked with a
 17398  // long-running operation. This API can only be called with limited frequency
 17399  // for an organization. If it is called too frequently the caller will receive
 17400  // a TOO_MANY_REQUESTS error.
 17401  //
 17402  //   - parent: Name of the organization to run asset discovery for. Its format is
 17403  //     "organizations/[organization_id]".
 17404  func (r *OrganizationsAssetsService) RunDiscovery(parent string, runassetdiscoveryrequest *RunAssetDiscoveryRequest) *OrganizationsAssetsRunDiscoveryCall {
 17405  	c := &OrganizationsAssetsRunDiscoveryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17406  	c.parent = parent
 17407  	c.runassetdiscoveryrequest = runassetdiscoveryrequest
 17408  	return c
 17409  }
 17410  
 17411  // Fields allows partial responses to be retrieved. See
 17412  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17413  // details.
 17414  func (c *OrganizationsAssetsRunDiscoveryCall) Fields(s ...googleapi.Field) *OrganizationsAssetsRunDiscoveryCall {
 17415  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17416  	return c
 17417  }
 17418  
 17419  // Context sets the context to be used in this call's Do method.
 17420  func (c *OrganizationsAssetsRunDiscoveryCall) Context(ctx context.Context) *OrganizationsAssetsRunDiscoveryCall {
 17421  	c.ctx_ = ctx
 17422  	return c
 17423  }
 17424  
 17425  // Header returns a http.Header that can be modified by the caller to add
 17426  // headers to the request.
 17427  func (c *OrganizationsAssetsRunDiscoveryCall) Header() http.Header {
 17428  	if c.header_ == nil {
 17429  		c.header_ = make(http.Header)
 17430  	}
 17431  	return c.header_
 17432  }
 17433  
 17434  func (c *OrganizationsAssetsRunDiscoveryCall) doRequest(alt string) (*http.Response, error) {
 17435  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 17436  	var body io.Reader = nil
 17437  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.runassetdiscoveryrequest)
 17438  	if err != nil {
 17439  		return nil, err
 17440  	}
 17441  	c.urlParams_.Set("alt", alt)
 17442  	c.urlParams_.Set("prettyPrint", "false")
 17443  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/assets:runDiscovery")
 17444  	urls += "?" + c.urlParams_.Encode()
 17445  	req, err := http.NewRequest("POST", urls, body)
 17446  	if err != nil {
 17447  		return nil, err
 17448  	}
 17449  	req.Header = reqHeaders
 17450  	googleapi.Expand(req.URL, map[string]string{
 17451  		"parent": c.parent,
 17452  	})
 17453  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17454  }
 17455  
 17456  // Do executes the "securitycenter.organizations.assets.runDiscovery" call.
 17457  // Any non-2xx status code is an error. Response headers are in either
 17458  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 17459  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 17460  // whether the returned error was because http.StatusNotModified was returned.
 17461  func (c *OrganizationsAssetsRunDiscoveryCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 17462  	gensupport.SetOptions(c.urlParams_, opts...)
 17463  	res, err := c.doRequest("json")
 17464  	if res != nil && res.StatusCode == http.StatusNotModified {
 17465  		if res.Body != nil {
 17466  			res.Body.Close()
 17467  		}
 17468  		return nil, gensupport.WrapError(&googleapi.Error{
 17469  			Code:   res.StatusCode,
 17470  			Header: res.Header,
 17471  		})
 17472  	}
 17473  	if err != nil {
 17474  		return nil, err
 17475  	}
 17476  	defer googleapi.CloseBody(res)
 17477  	if err := googleapi.CheckResponse(res); err != nil {
 17478  		return nil, gensupport.WrapError(err)
 17479  	}
 17480  	ret := &Operation{
 17481  		ServerResponse: googleapi.ServerResponse{
 17482  			Header:         res.Header,
 17483  			HTTPStatusCode: res.StatusCode,
 17484  		},
 17485  	}
 17486  	target := &ret
 17487  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17488  		return nil, err
 17489  	}
 17490  	return ret, nil
 17491  }
 17492  
 17493  type OrganizationsAssetsUpdateSecurityMarksCall struct {
 17494  	s             *Service
 17495  	name          string
 17496  	securitymarks *SecurityMarks
 17497  	urlParams_    gensupport.URLParams
 17498  	ctx_          context.Context
 17499  	header_       http.Header
 17500  }
 17501  
 17502  // UpdateSecurityMarks: Updates security marks.
 17503  //
 17504  //   - name: The relative resource name of the SecurityMarks. See:
 17505  //     https://cloud.google.com/apis/design/resource_names#relative_resource_name
 17506  //     Examples:
 17507  //     "organizations/{organization_id}/assets/{asset_id}/securityMarks"
 17508  //     "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/
 17509  //     securityMarks".
 17510  func (r *OrganizationsAssetsService) UpdateSecurityMarks(name string, securitymarks *SecurityMarks) *OrganizationsAssetsUpdateSecurityMarksCall {
 17511  	c := &OrganizationsAssetsUpdateSecurityMarksCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17512  	c.name = name
 17513  	c.securitymarks = securitymarks
 17514  	return c
 17515  }
 17516  
 17517  // StartTime sets the optional parameter "startTime": The time at which the
 17518  // updated SecurityMarks take effect. If not set uses current server time.
 17519  // Updates will be applied to the SecurityMarks that are active immediately
 17520  // preceding this time. Must be earlier or equal to the server time.
 17521  func (c *OrganizationsAssetsUpdateSecurityMarksCall) StartTime(startTime string) *OrganizationsAssetsUpdateSecurityMarksCall {
 17522  	c.urlParams_.Set("startTime", startTime)
 17523  	return c
 17524  }
 17525  
 17526  // UpdateMask sets the optional parameter "updateMask": The FieldMask to use
 17527  // when updating the security marks resource. The field mask must not contain
 17528  // duplicate fields. If empty or set to "marks", all marks will be replaced.
 17529  // Individual marks can be updated using "marks.".
 17530  func (c *OrganizationsAssetsUpdateSecurityMarksCall) UpdateMask(updateMask string) *OrganizationsAssetsUpdateSecurityMarksCall {
 17531  	c.urlParams_.Set("updateMask", updateMask)
 17532  	return c
 17533  }
 17534  
 17535  // Fields allows partial responses to be retrieved. See
 17536  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17537  // details.
 17538  func (c *OrganizationsAssetsUpdateSecurityMarksCall) Fields(s ...googleapi.Field) *OrganizationsAssetsUpdateSecurityMarksCall {
 17539  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17540  	return c
 17541  }
 17542  
 17543  // Context sets the context to be used in this call's Do method.
 17544  func (c *OrganizationsAssetsUpdateSecurityMarksCall) Context(ctx context.Context) *OrganizationsAssetsUpdateSecurityMarksCall {
 17545  	c.ctx_ = ctx
 17546  	return c
 17547  }
 17548  
 17549  // Header returns a http.Header that can be modified by the caller to add
 17550  // headers to the request.
 17551  func (c *OrganizationsAssetsUpdateSecurityMarksCall) Header() http.Header {
 17552  	if c.header_ == nil {
 17553  		c.header_ = make(http.Header)
 17554  	}
 17555  	return c.header_
 17556  }
 17557  
 17558  func (c *OrganizationsAssetsUpdateSecurityMarksCall) doRequest(alt string) (*http.Response, error) {
 17559  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 17560  	var body io.Reader = nil
 17561  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.securitymarks)
 17562  	if err != nil {
 17563  		return nil, err
 17564  	}
 17565  	c.urlParams_.Set("alt", alt)
 17566  	c.urlParams_.Set("prettyPrint", "false")
 17567  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 17568  	urls += "?" + c.urlParams_.Encode()
 17569  	req, err := http.NewRequest("PATCH", urls, body)
 17570  	if err != nil {
 17571  		return nil, err
 17572  	}
 17573  	req.Header = reqHeaders
 17574  	googleapi.Expand(req.URL, map[string]string{
 17575  		"name": c.name,
 17576  	})
 17577  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17578  }
 17579  
 17580  // Do executes the "securitycenter.organizations.assets.updateSecurityMarks" call.
 17581  // Any non-2xx status code is an error. Response headers are in either
 17582  // *SecurityMarks.ServerResponse.Header or (if a response was returned at all)
 17583  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 17584  // whether the returned error was because http.StatusNotModified was returned.
 17585  func (c *OrganizationsAssetsUpdateSecurityMarksCall) Do(opts ...googleapi.CallOption) (*SecurityMarks, error) {
 17586  	gensupport.SetOptions(c.urlParams_, opts...)
 17587  	res, err := c.doRequest("json")
 17588  	if res != nil && res.StatusCode == http.StatusNotModified {
 17589  		if res.Body != nil {
 17590  			res.Body.Close()
 17591  		}
 17592  		return nil, gensupport.WrapError(&googleapi.Error{
 17593  			Code:   res.StatusCode,
 17594  			Header: res.Header,
 17595  		})
 17596  	}
 17597  	if err != nil {
 17598  		return nil, err
 17599  	}
 17600  	defer googleapi.CloseBody(res)
 17601  	if err := googleapi.CheckResponse(res); err != nil {
 17602  		return nil, gensupport.WrapError(err)
 17603  	}
 17604  	ret := &SecurityMarks{
 17605  		ServerResponse: googleapi.ServerResponse{
 17606  			Header:         res.Header,
 17607  			HTTPStatusCode: res.StatusCode,
 17608  		},
 17609  	}
 17610  	target := &ret
 17611  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17612  		return nil, err
 17613  	}
 17614  	return ret, nil
 17615  }
 17616  
 17617  type OrganizationsBigQueryExportsCreateCall struct {
 17618  	s                                         *Service
 17619  	parent                                    string
 17620  	googlecloudsecuritycenterv1bigqueryexport *GoogleCloudSecuritycenterV1BigQueryExport
 17621  	urlParams_                                gensupport.URLParams
 17622  	ctx_                                      context.Context
 17623  	header_                                   http.Header
 17624  }
 17625  
 17626  // Create: Creates a BigQuery export.
 17627  //
 17628  //   - parent: The name of the parent resource of the new BigQuery export. Its
 17629  //     format is "organizations/[organization_id]", "folders/[folder_id]", or
 17630  //     "projects/[project_id]".
 17631  func (r *OrganizationsBigQueryExportsService) Create(parent string, googlecloudsecuritycenterv1bigqueryexport *GoogleCloudSecuritycenterV1BigQueryExport) *OrganizationsBigQueryExportsCreateCall {
 17632  	c := &OrganizationsBigQueryExportsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17633  	c.parent = parent
 17634  	c.googlecloudsecuritycenterv1bigqueryexport = googlecloudsecuritycenterv1bigqueryexport
 17635  	return c
 17636  }
 17637  
 17638  // BigQueryExportId sets the optional parameter "bigQueryExportId": Required.
 17639  // Unique identifier provided by the client within the parent scope. It must
 17640  // consist of only lowercase letters, numbers, and hyphens, must start with a
 17641  // letter, must end with either a letter or a number, and must be 63 characters
 17642  // or less.
 17643  func (c *OrganizationsBigQueryExportsCreateCall) BigQueryExportId(bigQueryExportId string) *OrganizationsBigQueryExportsCreateCall {
 17644  	c.urlParams_.Set("bigQueryExportId", bigQueryExportId)
 17645  	return c
 17646  }
 17647  
 17648  // Fields allows partial responses to be retrieved. See
 17649  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17650  // details.
 17651  func (c *OrganizationsBigQueryExportsCreateCall) Fields(s ...googleapi.Field) *OrganizationsBigQueryExportsCreateCall {
 17652  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17653  	return c
 17654  }
 17655  
 17656  // Context sets the context to be used in this call's Do method.
 17657  func (c *OrganizationsBigQueryExportsCreateCall) Context(ctx context.Context) *OrganizationsBigQueryExportsCreateCall {
 17658  	c.ctx_ = ctx
 17659  	return c
 17660  }
 17661  
 17662  // Header returns a http.Header that can be modified by the caller to add
 17663  // headers to the request.
 17664  func (c *OrganizationsBigQueryExportsCreateCall) Header() http.Header {
 17665  	if c.header_ == nil {
 17666  		c.header_ = make(http.Header)
 17667  	}
 17668  	return c.header_
 17669  }
 17670  
 17671  func (c *OrganizationsBigQueryExportsCreateCall) doRequest(alt string) (*http.Response, error) {
 17672  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 17673  	var body io.Reader = nil
 17674  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1bigqueryexport)
 17675  	if err != nil {
 17676  		return nil, err
 17677  	}
 17678  	c.urlParams_.Set("alt", alt)
 17679  	c.urlParams_.Set("prettyPrint", "false")
 17680  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/bigQueryExports")
 17681  	urls += "?" + c.urlParams_.Encode()
 17682  	req, err := http.NewRequest("POST", urls, body)
 17683  	if err != nil {
 17684  		return nil, err
 17685  	}
 17686  	req.Header = reqHeaders
 17687  	googleapi.Expand(req.URL, map[string]string{
 17688  		"parent": c.parent,
 17689  	})
 17690  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17691  }
 17692  
 17693  // Do executes the "securitycenter.organizations.bigQueryExports.create" call.
 17694  // Any non-2xx status code is an error. Response headers are in either
 17695  // *GoogleCloudSecuritycenterV1BigQueryExport.ServerResponse.Header or (if a
 17696  // response was returned at all) in error.(*googleapi.Error).Header. Use
 17697  // googleapi.IsNotModified to check whether the returned error was because
 17698  // http.StatusNotModified was returned.
 17699  func (c *OrganizationsBigQueryExportsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1BigQueryExport, error) {
 17700  	gensupport.SetOptions(c.urlParams_, opts...)
 17701  	res, err := c.doRequest("json")
 17702  	if res != nil && res.StatusCode == http.StatusNotModified {
 17703  		if res.Body != nil {
 17704  			res.Body.Close()
 17705  		}
 17706  		return nil, gensupport.WrapError(&googleapi.Error{
 17707  			Code:   res.StatusCode,
 17708  			Header: res.Header,
 17709  		})
 17710  	}
 17711  	if err != nil {
 17712  		return nil, err
 17713  	}
 17714  	defer googleapi.CloseBody(res)
 17715  	if err := googleapi.CheckResponse(res); err != nil {
 17716  		return nil, gensupport.WrapError(err)
 17717  	}
 17718  	ret := &GoogleCloudSecuritycenterV1BigQueryExport{
 17719  		ServerResponse: googleapi.ServerResponse{
 17720  			Header:         res.Header,
 17721  			HTTPStatusCode: res.StatusCode,
 17722  		},
 17723  	}
 17724  	target := &ret
 17725  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17726  		return nil, err
 17727  	}
 17728  	return ret, nil
 17729  }
 17730  
 17731  type OrganizationsBigQueryExportsDeleteCall struct {
 17732  	s          *Service
 17733  	name       string
 17734  	urlParams_ gensupport.URLParams
 17735  	ctx_       context.Context
 17736  	header_    http.Header
 17737  }
 17738  
 17739  // Delete: Deletes an existing BigQuery export.
 17740  //
 17741  //   - name: The name of the BigQuery export to delete. Its format is
 17742  //     organizations/{organization}/bigQueryExports/{export_id},
 17743  //     folders/{folder}/bigQueryExports/{export_id}, or
 17744  //     projects/{project}/bigQueryExports/{export_id}.
 17745  func (r *OrganizationsBigQueryExportsService) Delete(name string) *OrganizationsBigQueryExportsDeleteCall {
 17746  	c := &OrganizationsBigQueryExportsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17747  	c.name = name
 17748  	return c
 17749  }
 17750  
 17751  // Fields allows partial responses to be retrieved. See
 17752  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17753  // details.
 17754  func (c *OrganizationsBigQueryExportsDeleteCall) Fields(s ...googleapi.Field) *OrganizationsBigQueryExportsDeleteCall {
 17755  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17756  	return c
 17757  }
 17758  
 17759  // Context sets the context to be used in this call's Do method.
 17760  func (c *OrganizationsBigQueryExportsDeleteCall) Context(ctx context.Context) *OrganizationsBigQueryExportsDeleteCall {
 17761  	c.ctx_ = ctx
 17762  	return c
 17763  }
 17764  
 17765  // Header returns a http.Header that can be modified by the caller to add
 17766  // headers to the request.
 17767  func (c *OrganizationsBigQueryExportsDeleteCall) Header() http.Header {
 17768  	if c.header_ == nil {
 17769  		c.header_ = make(http.Header)
 17770  	}
 17771  	return c.header_
 17772  }
 17773  
 17774  func (c *OrganizationsBigQueryExportsDeleteCall) doRequest(alt string) (*http.Response, error) {
 17775  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 17776  	var body io.Reader = nil
 17777  	c.urlParams_.Set("alt", alt)
 17778  	c.urlParams_.Set("prettyPrint", "false")
 17779  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 17780  	urls += "?" + c.urlParams_.Encode()
 17781  	req, err := http.NewRequest("DELETE", urls, body)
 17782  	if err != nil {
 17783  		return nil, err
 17784  	}
 17785  	req.Header = reqHeaders
 17786  	googleapi.Expand(req.URL, map[string]string{
 17787  		"name": c.name,
 17788  	})
 17789  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17790  }
 17791  
 17792  // Do executes the "securitycenter.organizations.bigQueryExports.delete" call.
 17793  // Any non-2xx status code is an error. Response headers are in either
 17794  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 17795  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 17796  // whether the returned error was because http.StatusNotModified was returned.
 17797  func (c *OrganizationsBigQueryExportsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 17798  	gensupport.SetOptions(c.urlParams_, opts...)
 17799  	res, err := c.doRequest("json")
 17800  	if res != nil && res.StatusCode == http.StatusNotModified {
 17801  		if res.Body != nil {
 17802  			res.Body.Close()
 17803  		}
 17804  		return nil, gensupport.WrapError(&googleapi.Error{
 17805  			Code:   res.StatusCode,
 17806  			Header: res.Header,
 17807  		})
 17808  	}
 17809  	if err != nil {
 17810  		return nil, err
 17811  	}
 17812  	defer googleapi.CloseBody(res)
 17813  	if err := googleapi.CheckResponse(res); err != nil {
 17814  		return nil, gensupport.WrapError(err)
 17815  	}
 17816  	ret := &Empty{
 17817  		ServerResponse: googleapi.ServerResponse{
 17818  			Header:         res.Header,
 17819  			HTTPStatusCode: res.StatusCode,
 17820  		},
 17821  	}
 17822  	target := &ret
 17823  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17824  		return nil, err
 17825  	}
 17826  	return ret, nil
 17827  }
 17828  
 17829  type OrganizationsBigQueryExportsGetCall struct {
 17830  	s            *Service
 17831  	name         string
 17832  	urlParams_   gensupport.URLParams
 17833  	ifNoneMatch_ string
 17834  	ctx_         context.Context
 17835  	header_      http.Header
 17836  }
 17837  
 17838  // Get: Gets a BigQuery export.
 17839  //
 17840  //   - name: Name of the BigQuery export to retrieve. Its format is
 17841  //     organizations/{organization}/bigQueryExports/{export_id},
 17842  //     folders/{folder}/bigQueryExports/{export_id}, or
 17843  //     projects/{project}/bigQueryExports/{export_id}.
 17844  func (r *OrganizationsBigQueryExportsService) Get(name string) *OrganizationsBigQueryExportsGetCall {
 17845  	c := &OrganizationsBigQueryExportsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17846  	c.name = name
 17847  	return c
 17848  }
 17849  
 17850  // Fields allows partial responses to be retrieved. See
 17851  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17852  // details.
 17853  func (c *OrganizationsBigQueryExportsGetCall) Fields(s ...googleapi.Field) *OrganizationsBigQueryExportsGetCall {
 17854  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17855  	return c
 17856  }
 17857  
 17858  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 17859  // object's ETag matches the given value. This is useful for getting updates
 17860  // only after the object has changed since the last request.
 17861  func (c *OrganizationsBigQueryExportsGetCall) IfNoneMatch(entityTag string) *OrganizationsBigQueryExportsGetCall {
 17862  	c.ifNoneMatch_ = entityTag
 17863  	return c
 17864  }
 17865  
 17866  // Context sets the context to be used in this call's Do method.
 17867  func (c *OrganizationsBigQueryExportsGetCall) Context(ctx context.Context) *OrganizationsBigQueryExportsGetCall {
 17868  	c.ctx_ = ctx
 17869  	return c
 17870  }
 17871  
 17872  // Header returns a http.Header that can be modified by the caller to add
 17873  // headers to the request.
 17874  func (c *OrganizationsBigQueryExportsGetCall) Header() http.Header {
 17875  	if c.header_ == nil {
 17876  		c.header_ = make(http.Header)
 17877  	}
 17878  	return c.header_
 17879  }
 17880  
 17881  func (c *OrganizationsBigQueryExportsGetCall) doRequest(alt string) (*http.Response, error) {
 17882  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 17883  	if c.ifNoneMatch_ != "" {
 17884  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 17885  	}
 17886  	var body io.Reader = nil
 17887  	c.urlParams_.Set("alt", alt)
 17888  	c.urlParams_.Set("prettyPrint", "false")
 17889  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 17890  	urls += "?" + c.urlParams_.Encode()
 17891  	req, err := http.NewRequest("GET", urls, body)
 17892  	if err != nil {
 17893  		return nil, err
 17894  	}
 17895  	req.Header = reqHeaders
 17896  	googleapi.Expand(req.URL, map[string]string{
 17897  		"name": c.name,
 17898  	})
 17899  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17900  }
 17901  
 17902  // Do executes the "securitycenter.organizations.bigQueryExports.get" call.
 17903  // Any non-2xx status code is an error. Response headers are in either
 17904  // *GoogleCloudSecuritycenterV1BigQueryExport.ServerResponse.Header or (if a
 17905  // response was returned at all) in error.(*googleapi.Error).Header. Use
 17906  // googleapi.IsNotModified to check whether the returned error was because
 17907  // http.StatusNotModified was returned.
 17908  func (c *OrganizationsBigQueryExportsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1BigQueryExport, error) {
 17909  	gensupport.SetOptions(c.urlParams_, opts...)
 17910  	res, err := c.doRequest("json")
 17911  	if res != nil && res.StatusCode == http.StatusNotModified {
 17912  		if res.Body != nil {
 17913  			res.Body.Close()
 17914  		}
 17915  		return nil, gensupport.WrapError(&googleapi.Error{
 17916  			Code:   res.StatusCode,
 17917  			Header: res.Header,
 17918  		})
 17919  	}
 17920  	if err != nil {
 17921  		return nil, err
 17922  	}
 17923  	defer googleapi.CloseBody(res)
 17924  	if err := googleapi.CheckResponse(res); err != nil {
 17925  		return nil, gensupport.WrapError(err)
 17926  	}
 17927  	ret := &GoogleCloudSecuritycenterV1BigQueryExport{
 17928  		ServerResponse: googleapi.ServerResponse{
 17929  			Header:         res.Header,
 17930  			HTTPStatusCode: res.StatusCode,
 17931  		},
 17932  	}
 17933  	target := &ret
 17934  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17935  		return nil, err
 17936  	}
 17937  	return ret, nil
 17938  }
 17939  
 17940  type OrganizationsBigQueryExportsListCall struct {
 17941  	s            *Service
 17942  	parent       string
 17943  	urlParams_   gensupport.URLParams
 17944  	ifNoneMatch_ string
 17945  	ctx_         context.Context
 17946  	header_      http.Header
 17947  }
 17948  
 17949  // List: Lists BigQuery exports. Note that when requesting BigQuery exports at
 17950  // a given level all exports under that level are also returned e.g. if
 17951  // requesting BigQuery exports under a folder, then all BigQuery exports
 17952  // immediately under the folder plus the ones created under the projects within
 17953  // the folder are returned.
 17954  //
 17955  //   - parent: The parent, which owns the collection of BigQuery exports. Its
 17956  //     format is "organizations/[organization_id]", "folders/[folder_id]",
 17957  //     "projects/[project_id]".
 17958  func (r *OrganizationsBigQueryExportsService) List(parent string) *OrganizationsBigQueryExportsListCall {
 17959  	c := &OrganizationsBigQueryExportsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17960  	c.parent = parent
 17961  	return c
 17962  }
 17963  
 17964  // PageSize sets the optional parameter "pageSize": The maximum number of
 17965  // configs to return. The service may return fewer than this value. If
 17966  // unspecified, at most 10 configs will be returned. The maximum value is 1000;
 17967  // values above 1000 will be coerced to 1000.
 17968  func (c *OrganizationsBigQueryExportsListCall) PageSize(pageSize int64) *OrganizationsBigQueryExportsListCall {
 17969  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 17970  	return c
 17971  }
 17972  
 17973  // PageToken sets the optional parameter "pageToken": A page token, received
 17974  // from a previous `ListBigQueryExports` call. Provide this to retrieve the
 17975  // subsequent page. When paginating, all other parameters provided to
 17976  // `ListBigQueryExports` must match the call that provided the page token.
 17977  func (c *OrganizationsBigQueryExportsListCall) PageToken(pageToken string) *OrganizationsBigQueryExportsListCall {
 17978  	c.urlParams_.Set("pageToken", pageToken)
 17979  	return c
 17980  }
 17981  
 17982  // Fields allows partial responses to be retrieved. See
 17983  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17984  // details.
 17985  func (c *OrganizationsBigQueryExportsListCall) Fields(s ...googleapi.Field) *OrganizationsBigQueryExportsListCall {
 17986  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17987  	return c
 17988  }
 17989  
 17990  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 17991  // object's ETag matches the given value. This is useful for getting updates
 17992  // only after the object has changed since the last request.
 17993  func (c *OrganizationsBigQueryExportsListCall) IfNoneMatch(entityTag string) *OrganizationsBigQueryExportsListCall {
 17994  	c.ifNoneMatch_ = entityTag
 17995  	return c
 17996  }
 17997  
 17998  // Context sets the context to be used in this call's Do method.
 17999  func (c *OrganizationsBigQueryExportsListCall) Context(ctx context.Context) *OrganizationsBigQueryExportsListCall {
 18000  	c.ctx_ = ctx
 18001  	return c
 18002  }
 18003  
 18004  // Header returns a http.Header that can be modified by the caller to add
 18005  // headers to the request.
 18006  func (c *OrganizationsBigQueryExportsListCall) Header() http.Header {
 18007  	if c.header_ == nil {
 18008  		c.header_ = make(http.Header)
 18009  	}
 18010  	return c.header_
 18011  }
 18012  
 18013  func (c *OrganizationsBigQueryExportsListCall) doRequest(alt string) (*http.Response, error) {
 18014  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 18015  	if c.ifNoneMatch_ != "" {
 18016  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 18017  	}
 18018  	var body io.Reader = nil
 18019  	c.urlParams_.Set("alt", alt)
 18020  	c.urlParams_.Set("prettyPrint", "false")
 18021  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/bigQueryExports")
 18022  	urls += "?" + c.urlParams_.Encode()
 18023  	req, err := http.NewRequest("GET", urls, body)
 18024  	if err != nil {
 18025  		return nil, err
 18026  	}
 18027  	req.Header = reqHeaders
 18028  	googleapi.Expand(req.URL, map[string]string{
 18029  		"parent": c.parent,
 18030  	})
 18031  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18032  }
 18033  
 18034  // Do executes the "securitycenter.organizations.bigQueryExports.list" call.
 18035  // Any non-2xx status code is an error. Response headers are in either
 18036  // *ListBigQueryExportsResponse.ServerResponse.Header or (if a response was
 18037  // returned at all) in error.(*googleapi.Error).Header. Use
 18038  // googleapi.IsNotModified to check whether the returned error was because
 18039  // http.StatusNotModified was returned.
 18040  func (c *OrganizationsBigQueryExportsListCall) Do(opts ...googleapi.CallOption) (*ListBigQueryExportsResponse, error) {
 18041  	gensupport.SetOptions(c.urlParams_, opts...)
 18042  	res, err := c.doRequest("json")
 18043  	if res != nil && res.StatusCode == http.StatusNotModified {
 18044  		if res.Body != nil {
 18045  			res.Body.Close()
 18046  		}
 18047  		return nil, gensupport.WrapError(&googleapi.Error{
 18048  			Code:   res.StatusCode,
 18049  			Header: res.Header,
 18050  		})
 18051  	}
 18052  	if err != nil {
 18053  		return nil, err
 18054  	}
 18055  	defer googleapi.CloseBody(res)
 18056  	if err := googleapi.CheckResponse(res); err != nil {
 18057  		return nil, gensupport.WrapError(err)
 18058  	}
 18059  	ret := &ListBigQueryExportsResponse{
 18060  		ServerResponse: googleapi.ServerResponse{
 18061  			Header:         res.Header,
 18062  			HTTPStatusCode: res.StatusCode,
 18063  		},
 18064  	}
 18065  	target := &ret
 18066  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18067  		return nil, err
 18068  	}
 18069  	return ret, nil
 18070  }
 18071  
 18072  // Pages invokes f for each page of results.
 18073  // A non-nil error returned from f will halt the iteration.
 18074  // The provided context supersedes any context provided to the Context method.
 18075  func (c *OrganizationsBigQueryExportsListCall) Pages(ctx context.Context, f func(*ListBigQueryExportsResponse) error) error {
 18076  	c.ctx_ = ctx
 18077  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 18078  	for {
 18079  		x, err := c.Do()
 18080  		if err != nil {
 18081  			return err
 18082  		}
 18083  		if err := f(x); err != nil {
 18084  			return err
 18085  		}
 18086  		if x.NextPageToken == "" {
 18087  			return nil
 18088  		}
 18089  		c.PageToken(x.NextPageToken)
 18090  	}
 18091  }
 18092  
 18093  type OrganizationsBigQueryExportsPatchCall struct {
 18094  	s                                         *Service
 18095  	name                                      string
 18096  	googlecloudsecuritycenterv1bigqueryexport *GoogleCloudSecuritycenterV1BigQueryExport
 18097  	urlParams_                                gensupport.URLParams
 18098  	ctx_                                      context.Context
 18099  	header_                                   http.Header
 18100  }
 18101  
 18102  // Patch: Updates a BigQuery export.
 18103  //
 18104  //   - name: The relative resource name of this export. See:
 18105  //     https://cloud.google.com/apis/design/resource_names#relative_resource_name.
 18106  //     Example format:
 18107  //     "organizations/{organization_id}/bigQueryExports/{export_id}" Example
 18108  //     format: "folders/{folder_id}/bigQueryExports/{export_id}" Example format:
 18109  //     "projects/{project_id}/bigQueryExports/{export_id}" This field is provided
 18110  //     in responses, and is ignored when provided in create requests.
 18111  func (r *OrganizationsBigQueryExportsService) Patch(name string, googlecloudsecuritycenterv1bigqueryexport *GoogleCloudSecuritycenterV1BigQueryExport) *OrganizationsBigQueryExportsPatchCall {
 18112  	c := &OrganizationsBigQueryExportsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18113  	c.name = name
 18114  	c.googlecloudsecuritycenterv1bigqueryexport = googlecloudsecuritycenterv1bigqueryexport
 18115  	return c
 18116  }
 18117  
 18118  // UpdateMask sets the optional parameter "updateMask": The list of fields to
 18119  // be updated. If empty all mutable fields will be updated.
 18120  func (c *OrganizationsBigQueryExportsPatchCall) UpdateMask(updateMask string) *OrganizationsBigQueryExportsPatchCall {
 18121  	c.urlParams_.Set("updateMask", updateMask)
 18122  	return c
 18123  }
 18124  
 18125  // Fields allows partial responses to be retrieved. See
 18126  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18127  // details.
 18128  func (c *OrganizationsBigQueryExportsPatchCall) Fields(s ...googleapi.Field) *OrganizationsBigQueryExportsPatchCall {
 18129  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18130  	return c
 18131  }
 18132  
 18133  // Context sets the context to be used in this call's Do method.
 18134  func (c *OrganizationsBigQueryExportsPatchCall) Context(ctx context.Context) *OrganizationsBigQueryExportsPatchCall {
 18135  	c.ctx_ = ctx
 18136  	return c
 18137  }
 18138  
 18139  // Header returns a http.Header that can be modified by the caller to add
 18140  // headers to the request.
 18141  func (c *OrganizationsBigQueryExportsPatchCall) Header() http.Header {
 18142  	if c.header_ == nil {
 18143  		c.header_ = make(http.Header)
 18144  	}
 18145  	return c.header_
 18146  }
 18147  
 18148  func (c *OrganizationsBigQueryExportsPatchCall) doRequest(alt string) (*http.Response, error) {
 18149  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 18150  	var body io.Reader = nil
 18151  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1bigqueryexport)
 18152  	if err != nil {
 18153  		return nil, err
 18154  	}
 18155  	c.urlParams_.Set("alt", alt)
 18156  	c.urlParams_.Set("prettyPrint", "false")
 18157  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 18158  	urls += "?" + c.urlParams_.Encode()
 18159  	req, err := http.NewRequest("PATCH", urls, body)
 18160  	if err != nil {
 18161  		return nil, err
 18162  	}
 18163  	req.Header = reqHeaders
 18164  	googleapi.Expand(req.URL, map[string]string{
 18165  		"name": c.name,
 18166  	})
 18167  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18168  }
 18169  
 18170  // Do executes the "securitycenter.organizations.bigQueryExports.patch" call.
 18171  // Any non-2xx status code is an error. Response headers are in either
 18172  // *GoogleCloudSecuritycenterV1BigQueryExport.ServerResponse.Header or (if a
 18173  // response was returned at all) in error.(*googleapi.Error).Header. Use
 18174  // googleapi.IsNotModified to check whether the returned error was because
 18175  // http.StatusNotModified was returned.
 18176  func (c *OrganizationsBigQueryExportsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1BigQueryExport, error) {
 18177  	gensupport.SetOptions(c.urlParams_, opts...)
 18178  	res, err := c.doRequest("json")
 18179  	if res != nil && res.StatusCode == http.StatusNotModified {
 18180  		if res.Body != nil {
 18181  			res.Body.Close()
 18182  		}
 18183  		return nil, gensupport.WrapError(&googleapi.Error{
 18184  			Code:   res.StatusCode,
 18185  			Header: res.Header,
 18186  		})
 18187  	}
 18188  	if err != nil {
 18189  		return nil, err
 18190  	}
 18191  	defer googleapi.CloseBody(res)
 18192  	if err := googleapi.CheckResponse(res); err != nil {
 18193  		return nil, gensupport.WrapError(err)
 18194  	}
 18195  	ret := &GoogleCloudSecuritycenterV1BigQueryExport{
 18196  		ServerResponse: googleapi.ServerResponse{
 18197  			Header:         res.Header,
 18198  			HTTPStatusCode: res.StatusCode,
 18199  		},
 18200  	}
 18201  	target := &ret
 18202  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18203  		return nil, err
 18204  	}
 18205  	return ret, nil
 18206  }
 18207  
 18208  type OrganizationsEventThreatDetectionSettingsValidateCustomModuleCall struct {
 18209  	s                                               *Service
 18210  	parent                                          string
 18211  	validateeventthreatdetectioncustommodulerequest *ValidateEventThreatDetectionCustomModuleRequest
 18212  	urlParams_                                      gensupport.URLParams
 18213  	ctx_                                            context.Context
 18214  	header_                                         http.Header
 18215  }
 18216  
 18217  // ValidateCustomModule: Validates the given Event Threat Detection custom
 18218  // module.
 18219  //
 18220  //   - parent: Resource name of the parent to validate the Custom Module under.
 18221  //     Its format is: *
 18222  //     "organizations/{organization}/eventThreatDetectionSettings". *
 18223  //     "folders/{folder}/eventThreatDetectionSettings". *
 18224  //     "projects/{project}/eventThreatDetectionSettings".
 18225  func (r *OrganizationsEventThreatDetectionSettingsService) ValidateCustomModule(parent string, validateeventthreatdetectioncustommodulerequest *ValidateEventThreatDetectionCustomModuleRequest) *OrganizationsEventThreatDetectionSettingsValidateCustomModuleCall {
 18226  	c := &OrganizationsEventThreatDetectionSettingsValidateCustomModuleCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18227  	c.parent = parent
 18228  	c.validateeventthreatdetectioncustommodulerequest = validateeventthreatdetectioncustommodulerequest
 18229  	return c
 18230  }
 18231  
 18232  // Fields allows partial responses to be retrieved. See
 18233  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18234  // details.
 18235  func (c *OrganizationsEventThreatDetectionSettingsValidateCustomModuleCall) Fields(s ...googleapi.Field) *OrganizationsEventThreatDetectionSettingsValidateCustomModuleCall {
 18236  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18237  	return c
 18238  }
 18239  
 18240  // Context sets the context to be used in this call's Do method.
 18241  func (c *OrganizationsEventThreatDetectionSettingsValidateCustomModuleCall) Context(ctx context.Context) *OrganizationsEventThreatDetectionSettingsValidateCustomModuleCall {
 18242  	c.ctx_ = ctx
 18243  	return c
 18244  }
 18245  
 18246  // Header returns a http.Header that can be modified by the caller to add
 18247  // headers to the request.
 18248  func (c *OrganizationsEventThreatDetectionSettingsValidateCustomModuleCall) Header() http.Header {
 18249  	if c.header_ == nil {
 18250  		c.header_ = make(http.Header)
 18251  	}
 18252  	return c.header_
 18253  }
 18254  
 18255  func (c *OrganizationsEventThreatDetectionSettingsValidateCustomModuleCall) doRequest(alt string) (*http.Response, error) {
 18256  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 18257  	var body io.Reader = nil
 18258  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.validateeventthreatdetectioncustommodulerequest)
 18259  	if err != nil {
 18260  		return nil, err
 18261  	}
 18262  	c.urlParams_.Set("alt", alt)
 18263  	c.urlParams_.Set("prettyPrint", "false")
 18264  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}:validateCustomModule")
 18265  	urls += "?" + c.urlParams_.Encode()
 18266  	req, err := http.NewRequest("POST", urls, body)
 18267  	if err != nil {
 18268  		return nil, err
 18269  	}
 18270  	req.Header = reqHeaders
 18271  	googleapi.Expand(req.URL, map[string]string{
 18272  		"parent": c.parent,
 18273  	})
 18274  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18275  }
 18276  
 18277  // Do executes the "securitycenter.organizations.eventThreatDetectionSettings.validateCustomModule" call.
 18278  // Any non-2xx status code is an error. Response headers are in either
 18279  // *ValidateEventThreatDetectionCustomModuleResponse.ServerResponse.Header or
 18280  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
 18281  // googleapi.IsNotModified to check whether the returned error was because
 18282  // http.StatusNotModified was returned.
 18283  func (c *OrganizationsEventThreatDetectionSettingsValidateCustomModuleCall) Do(opts ...googleapi.CallOption) (*ValidateEventThreatDetectionCustomModuleResponse, error) {
 18284  	gensupport.SetOptions(c.urlParams_, opts...)
 18285  	res, err := c.doRequest("json")
 18286  	if res != nil && res.StatusCode == http.StatusNotModified {
 18287  		if res.Body != nil {
 18288  			res.Body.Close()
 18289  		}
 18290  		return nil, gensupport.WrapError(&googleapi.Error{
 18291  			Code:   res.StatusCode,
 18292  			Header: res.Header,
 18293  		})
 18294  	}
 18295  	if err != nil {
 18296  		return nil, err
 18297  	}
 18298  	defer googleapi.CloseBody(res)
 18299  	if err := googleapi.CheckResponse(res); err != nil {
 18300  		return nil, gensupport.WrapError(err)
 18301  	}
 18302  	ret := &ValidateEventThreatDetectionCustomModuleResponse{
 18303  		ServerResponse: googleapi.ServerResponse{
 18304  			Header:         res.Header,
 18305  			HTTPStatusCode: res.StatusCode,
 18306  		},
 18307  	}
 18308  	target := &ret
 18309  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18310  		return nil, err
 18311  	}
 18312  	return ret, nil
 18313  }
 18314  
 18315  type OrganizationsEventThreatDetectionSettingsCustomModulesCreateCall struct {
 18316  	s                                *Service
 18317  	parent                           string
 18318  	eventthreatdetectioncustommodule *EventThreatDetectionCustomModule
 18319  	urlParams_                       gensupport.URLParams
 18320  	ctx_                             context.Context
 18321  	header_                          http.Header
 18322  }
 18323  
 18324  // Create: Creates a resident Event Threat Detection custom module at the scope
 18325  // of the given Resource Manager parent, and also creates inherited custom
 18326  // modules for all descendants of the given parent. These modules are enabled
 18327  // by default.
 18328  //
 18329  //   - parent: The new custom module's parent. Its format is: *
 18330  //     "organizations/{organization}/eventThreatDetectionSettings". *
 18331  //     "folders/{folder}/eventThreatDetectionSettings". *
 18332  //     "projects/{project}/eventThreatDetectionSettings".
 18333  func (r *OrganizationsEventThreatDetectionSettingsCustomModulesService) Create(parent string, eventthreatdetectioncustommodule *EventThreatDetectionCustomModule) *OrganizationsEventThreatDetectionSettingsCustomModulesCreateCall {
 18334  	c := &OrganizationsEventThreatDetectionSettingsCustomModulesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18335  	c.parent = parent
 18336  	c.eventthreatdetectioncustommodule = eventthreatdetectioncustommodule
 18337  	return c
 18338  }
 18339  
 18340  // Fields allows partial responses to be retrieved. See
 18341  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18342  // details.
 18343  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesCreateCall) Fields(s ...googleapi.Field) *OrganizationsEventThreatDetectionSettingsCustomModulesCreateCall {
 18344  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18345  	return c
 18346  }
 18347  
 18348  // Context sets the context to be used in this call's Do method.
 18349  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesCreateCall) Context(ctx context.Context) *OrganizationsEventThreatDetectionSettingsCustomModulesCreateCall {
 18350  	c.ctx_ = ctx
 18351  	return c
 18352  }
 18353  
 18354  // Header returns a http.Header that can be modified by the caller to add
 18355  // headers to the request.
 18356  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesCreateCall) Header() http.Header {
 18357  	if c.header_ == nil {
 18358  		c.header_ = make(http.Header)
 18359  	}
 18360  	return c.header_
 18361  }
 18362  
 18363  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesCreateCall) doRequest(alt string) (*http.Response, error) {
 18364  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 18365  	var body io.Reader = nil
 18366  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.eventthreatdetectioncustommodule)
 18367  	if err != nil {
 18368  		return nil, err
 18369  	}
 18370  	c.urlParams_.Set("alt", alt)
 18371  	c.urlParams_.Set("prettyPrint", "false")
 18372  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules")
 18373  	urls += "?" + c.urlParams_.Encode()
 18374  	req, err := http.NewRequest("POST", urls, body)
 18375  	if err != nil {
 18376  		return nil, err
 18377  	}
 18378  	req.Header = reqHeaders
 18379  	googleapi.Expand(req.URL, map[string]string{
 18380  		"parent": c.parent,
 18381  	})
 18382  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18383  }
 18384  
 18385  // Do executes the "securitycenter.organizations.eventThreatDetectionSettings.customModules.create" call.
 18386  // Any non-2xx status code is an error. Response headers are in either
 18387  // *EventThreatDetectionCustomModule.ServerResponse.Header or (if a response
 18388  // was returned at all) in error.(*googleapi.Error).Header. Use
 18389  // googleapi.IsNotModified to check whether the returned error was because
 18390  // http.StatusNotModified was returned.
 18391  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesCreateCall) Do(opts ...googleapi.CallOption) (*EventThreatDetectionCustomModule, error) {
 18392  	gensupport.SetOptions(c.urlParams_, opts...)
 18393  	res, err := c.doRequest("json")
 18394  	if res != nil && res.StatusCode == http.StatusNotModified {
 18395  		if res.Body != nil {
 18396  			res.Body.Close()
 18397  		}
 18398  		return nil, gensupport.WrapError(&googleapi.Error{
 18399  			Code:   res.StatusCode,
 18400  			Header: res.Header,
 18401  		})
 18402  	}
 18403  	if err != nil {
 18404  		return nil, err
 18405  	}
 18406  	defer googleapi.CloseBody(res)
 18407  	if err := googleapi.CheckResponse(res); err != nil {
 18408  		return nil, gensupport.WrapError(err)
 18409  	}
 18410  	ret := &EventThreatDetectionCustomModule{
 18411  		ServerResponse: googleapi.ServerResponse{
 18412  			Header:         res.Header,
 18413  			HTTPStatusCode: res.StatusCode,
 18414  		},
 18415  	}
 18416  	target := &ret
 18417  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18418  		return nil, err
 18419  	}
 18420  	return ret, nil
 18421  }
 18422  
 18423  type OrganizationsEventThreatDetectionSettingsCustomModulesDeleteCall struct {
 18424  	s          *Service
 18425  	name       string
 18426  	urlParams_ gensupport.URLParams
 18427  	ctx_       context.Context
 18428  	header_    http.Header
 18429  }
 18430  
 18431  // Delete: Deletes the specified Event Threat Detection custom module and all
 18432  // of its descendants in the Resource Manager hierarchy. This method is only
 18433  // supported for resident custom modules.
 18434  //
 18435  //   - name: Name of the custom module to delete. Its format is: *
 18436  //     "organizations/{organization}/eventThreatDetectionSettings/customModules/{m
 18437  //     odule}". *
 18438  //     "folders/{folder}/eventThreatDetectionSettings/customModules/{module}". *
 18439  //     "projects/{project}/eventThreatDetectionSettings/customModules/{module}".
 18440  func (r *OrganizationsEventThreatDetectionSettingsCustomModulesService) Delete(name string) *OrganizationsEventThreatDetectionSettingsCustomModulesDeleteCall {
 18441  	c := &OrganizationsEventThreatDetectionSettingsCustomModulesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18442  	c.name = name
 18443  	return c
 18444  }
 18445  
 18446  // Fields allows partial responses to be retrieved. See
 18447  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18448  // details.
 18449  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesDeleteCall) Fields(s ...googleapi.Field) *OrganizationsEventThreatDetectionSettingsCustomModulesDeleteCall {
 18450  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18451  	return c
 18452  }
 18453  
 18454  // Context sets the context to be used in this call's Do method.
 18455  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesDeleteCall) Context(ctx context.Context) *OrganizationsEventThreatDetectionSettingsCustomModulesDeleteCall {
 18456  	c.ctx_ = ctx
 18457  	return c
 18458  }
 18459  
 18460  // Header returns a http.Header that can be modified by the caller to add
 18461  // headers to the request.
 18462  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesDeleteCall) Header() http.Header {
 18463  	if c.header_ == nil {
 18464  		c.header_ = make(http.Header)
 18465  	}
 18466  	return c.header_
 18467  }
 18468  
 18469  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesDeleteCall) doRequest(alt string) (*http.Response, error) {
 18470  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 18471  	var body io.Reader = nil
 18472  	c.urlParams_.Set("alt", alt)
 18473  	c.urlParams_.Set("prettyPrint", "false")
 18474  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 18475  	urls += "?" + c.urlParams_.Encode()
 18476  	req, err := http.NewRequest("DELETE", urls, body)
 18477  	if err != nil {
 18478  		return nil, err
 18479  	}
 18480  	req.Header = reqHeaders
 18481  	googleapi.Expand(req.URL, map[string]string{
 18482  		"name": c.name,
 18483  	})
 18484  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18485  }
 18486  
 18487  // Do executes the "securitycenter.organizations.eventThreatDetectionSettings.customModules.delete" call.
 18488  // Any non-2xx status code is an error. Response headers are in either
 18489  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 18490  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 18491  // whether the returned error was because http.StatusNotModified was returned.
 18492  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 18493  	gensupport.SetOptions(c.urlParams_, opts...)
 18494  	res, err := c.doRequest("json")
 18495  	if res != nil && res.StatusCode == http.StatusNotModified {
 18496  		if res.Body != nil {
 18497  			res.Body.Close()
 18498  		}
 18499  		return nil, gensupport.WrapError(&googleapi.Error{
 18500  			Code:   res.StatusCode,
 18501  			Header: res.Header,
 18502  		})
 18503  	}
 18504  	if err != nil {
 18505  		return nil, err
 18506  	}
 18507  	defer googleapi.CloseBody(res)
 18508  	if err := googleapi.CheckResponse(res); err != nil {
 18509  		return nil, gensupport.WrapError(err)
 18510  	}
 18511  	ret := &Empty{
 18512  		ServerResponse: googleapi.ServerResponse{
 18513  			Header:         res.Header,
 18514  			HTTPStatusCode: res.StatusCode,
 18515  		},
 18516  	}
 18517  	target := &ret
 18518  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18519  		return nil, err
 18520  	}
 18521  	return ret, nil
 18522  }
 18523  
 18524  type OrganizationsEventThreatDetectionSettingsCustomModulesGetCall struct {
 18525  	s            *Service
 18526  	name         string
 18527  	urlParams_   gensupport.URLParams
 18528  	ifNoneMatch_ string
 18529  	ctx_         context.Context
 18530  	header_      http.Header
 18531  }
 18532  
 18533  // Get: Gets an Event Threat Detection custom module.
 18534  //
 18535  //   - name: Name of the custom module to get. Its format is: *
 18536  //     "organizations/{organization}/eventThreatDetectionSettings/customModules/{m
 18537  //     odule}". *
 18538  //     "folders/{folder}/eventThreatDetectionSettings/customModules/{module}". *
 18539  //     "projects/{project}/eventThreatDetectionSettings/customModules/{module}".
 18540  func (r *OrganizationsEventThreatDetectionSettingsCustomModulesService) Get(name string) *OrganizationsEventThreatDetectionSettingsCustomModulesGetCall {
 18541  	c := &OrganizationsEventThreatDetectionSettingsCustomModulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18542  	c.name = name
 18543  	return c
 18544  }
 18545  
 18546  // Fields allows partial responses to be retrieved. See
 18547  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18548  // details.
 18549  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesGetCall) Fields(s ...googleapi.Field) *OrganizationsEventThreatDetectionSettingsCustomModulesGetCall {
 18550  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18551  	return c
 18552  }
 18553  
 18554  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 18555  // object's ETag matches the given value. This is useful for getting updates
 18556  // only after the object has changed since the last request.
 18557  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesGetCall) IfNoneMatch(entityTag string) *OrganizationsEventThreatDetectionSettingsCustomModulesGetCall {
 18558  	c.ifNoneMatch_ = entityTag
 18559  	return c
 18560  }
 18561  
 18562  // Context sets the context to be used in this call's Do method.
 18563  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesGetCall) Context(ctx context.Context) *OrganizationsEventThreatDetectionSettingsCustomModulesGetCall {
 18564  	c.ctx_ = ctx
 18565  	return c
 18566  }
 18567  
 18568  // Header returns a http.Header that can be modified by the caller to add
 18569  // headers to the request.
 18570  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesGetCall) Header() http.Header {
 18571  	if c.header_ == nil {
 18572  		c.header_ = make(http.Header)
 18573  	}
 18574  	return c.header_
 18575  }
 18576  
 18577  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesGetCall) doRequest(alt string) (*http.Response, error) {
 18578  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 18579  	if c.ifNoneMatch_ != "" {
 18580  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 18581  	}
 18582  	var body io.Reader = nil
 18583  	c.urlParams_.Set("alt", alt)
 18584  	c.urlParams_.Set("prettyPrint", "false")
 18585  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 18586  	urls += "?" + c.urlParams_.Encode()
 18587  	req, err := http.NewRequest("GET", urls, body)
 18588  	if err != nil {
 18589  		return nil, err
 18590  	}
 18591  	req.Header = reqHeaders
 18592  	googleapi.Expand(req.URL, map[string]string{
 18593  		"name": c.name,
 18594  	})
 18595  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18596  }
 18597  
 18598  // Do executes the "securitycenter.organizations.eventThreatDetectionSettings.customModules.get" call.
 18599  // Any non-2xx status code is an error. Response headers are in either
 18600  // *EventThreatDetectionCustomModule.ServerResponse.Header or (if a response
 18601  // was returned at all) in error.(*googleapi.Error).Header. Use
 18602  // googleapi.IsNotModified to check whether the returned error was because
 18603  // http.StatusNotModified was returned.
 18604  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesGetCall) Do(opts ...googleapi.CallOption) (*EventThreatDetectionCustomModule, error) {
 18605  	gensupport.SetOptions(c.urlParams_, opts...)
 18606  	res, err := c.doRequest("json")
 18607  	if res != nil && res.StatusCode == http.StatusNotModified {
 18608  		if res.Body != nil {
 18609  			res.Body.Close()
 18610  		}
 18611  		return nil, gensupport.WrapError(&googleapi.Error{
 18612  			Code:   res.StatusCode,
 18613  			Header: res.Header,
 18614  		})
 18615  	}
 18616  	if err != nil {
 18617  		return nil, err
 18618  	}
 18619  	defer googleapi.CloseBody(res)
 18620  	if err := googleapi.CheckResponse(res); err != nil {
 18621  		return nil, gensupport.WrapError(err)
 18622  	}
 18623  	ret := &EventThreatDetectionCustomModule{
 18624  		ServerResponse: googleapi.ServerResponse{
 18625  			Header:         res.Header,
 18626  			HTTPStatusCode: res.StatusCode,
 18627  		},
 18628  	}
 18629  	target := &ret
 18630  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18631  		return nil, err
 18632  	}
 18633  	return ret, nil
 18634  }
 18635  
 18636  type OrganizationsEventThreatDetectionSettingsCustomModulesListCall struct {
 18637  	s            *Service
 18638  	parent       string
 18639  	urlParams_   gensupport.URLParams
 18640  	ifNoneMatch_ string
 18641  	ctx_         context.Context
 18642  	header_      http.Header
 18643  }
 18644  
 18645  // List: Lists all Event Threat Detection custom modules for the given Resource
 18646  // Manager parent. This includes resident modules defined at the scope of the
 18647  // parent along with modules inherited from ancestors.
 18648  //
 18649  //   - parent: Name of the parent to list custom modules under. Its format is: *
 18650  //     "organizations/{organization}/eventThreatDetectionSettings". *
 18651  //     "folders/{folder}/eventThreatDetectionSettings". *
 18652  //     "projects/{project}/eventThreatDetectionSettings".
 18653  func (r *OrganizationsEventThreatDetectionSettingsCustomModulesService) List(parent string) *OrganizationsEventThreatDetectionSettingsCustomModulesListCall {
 18654  	c := &OrganizationsEventThreatDetectionSettingsCustomModulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18655  	c.parent = parent
 18656  	return c
 18657  }
 18658  
 18659  // PageSize sets the optional parameter "pageSize": The maximum number of
 18660  // modules to return. The service may return fewer than this value. If
 18661  // unspecified, at most 10 configs will be returned. The maximum value is 1000;
 18662  // values above 1000 will be coerced to 1000.
 18663  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesListCall) PageSize(pageSize int64) *OrganizationsEventThreatDetectionSettingsCustomModulesListCall {
 18664  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 18665  	return c
 18666  }
 18667  
 18668  // PageToken sets the optional parameter "pageToken": A page token, received
 18669  // from a previous `ListEventThreatDetectionCustomModules` call. Provide this
 18670  // to retrieve the subsequent page. When paginating, all other parameters
 18671  // provided to `ListEventThreatDetectionCustomModules` must match the call that
 18672  // provided the page token.
 18673  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesListCall) PageToken(pageToken string) *OrganizationsEventThreatDetectionSettingsCustomModulesListCall {
 18674  	c.urlParams_.Set("pageToken", pageToken)
 18675  	return c
 18676  }
 18677  
 18678  // Fields allows partial responses to be retrieved. See
 18679  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18680  // details.
 18681  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesListCall) Fields(s ...googleapi.Field) *OrganizationsEventThreatDetectionSettingsCustomModulesListCall {
 18682  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18683  	return c
 18684  }
 18685  
 18686  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 18687  // object's ETag matches the given value. This is useful for getting updates
 18688  // only after the object has changed since the last request.
 18689  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesListCall) IfNoneMatch(entityTag string) *OrganizationsEventThreatDetectionSettingsCustomModulesListCall {
 18690  	c.ifNoneMatch_ = entityTag
 18691  	return c
 18692  }
 18693  
 18694  // Context sets the context to be used in this call's Do method.
 18695  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesListCall) Context(ctx context.Context) *OrganizationsEventThreatDetectionSettingsCustomModulesListCall {
 18696  	c.ctx_ = ctx
 18697  	return c
 18698  }
 18699  
 18700  // Header returns a http.Header that can be modified by the caller to add
 18701  // headers to the request.
 18702  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesListCall) Header() http.Header {
 18703  	if c.header_ == nil {
 18704  		c.header_ = make(http.Header)
 18705  	}
 18706  	return c.header_
 18707  }
 18708  
 18709  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesListCall) doRequest(alt string) (*http.Response, error) {
 18710  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 18711  	if c.ifNoneMatch_ != "" {
 18712  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 18713  	}
 18714  	var body io.Reader = nil
 18715  	c.urlParams_.Set("alt", alt)
 18716  	c.urlParams_.Set("prettyPrint", "false")
 18717  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules")
 18718  	urls += "?" + c.urlParams_.Encode()
 18719  	req, err := http.NewRequest("GET", urls, body)
 18720  	if err != nil {
 18721  		return nil, err
 18722  	}
 18723  	req.Header = reqHeaders
 18724  	googleapi.Expand(req.URL, map[string]string{
 18725  		"parent": c.parent,
 18726  	})
 18727  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18728  }
 18729  
 18730  // Do executes the "securitycenter.organizations.eventThreatDetectionSettings.customModules.list" call.
 18731  // Any non-2xx status code is an error. Response headers are in either
 18732  // *ListEventThreatDetectionCustomModulesResponse.ServerResponse.Header or (if
 18733  // a response was returned at all) in error.(*googleapi.Error).Header. Use
 18734  // googleapi.IsNotModified to check whether the returned error was because
 18735  // http.StatusNotModified was returned.
 18736  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesListCall) Do(opts ...googleapi.CallOption) (*ListEventThreatDetectionCustomModulesResponse, error) {
 18737  	gensupport.SetOptions(c.urlParams_, opts...)
 18738  	res, err := c.doRequest("json")
 18739  	if res != nil && res.StatusCode == http.StatusNotModified {
 18740  		if res.Body != nil {
 18741  			res.Body.Close()
 18742  		}
 18743  		return nil, gensupport.WrapError(&googleapi.Error{
 18744  			Code:   res.StatusCode,
 18745  			Header: res.Header,
 18746  		})
 18747  	}
 18748  	if err != nil {
 18749  		return nil, err
 18750  	}
 18751  	defer googleapi.CloseBody(res)
 18752  	if err := googleapi.CheckResponse(res); err != nil {
 18753  		return nil, gensupport.WrapError(err)
 18754  	}
 18755  	ret := &ListEventThreatDetectionCustomModulesResponse{
 18756  		ServerResponse: googleapi.ServerResponse{
 18757  			Header:         res.Header,
 18758  			HTTPStatusCode: res.StatusCode,
 18759  		},
 18760  	}
 18761  	target := &ret
 18762  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18763  		return nil, err
 18764  	}
 18765  	return ret, nil
 18766  }
 18767  
 18768  // Pages invokes f for each page of results.
 18769  // A non-nil error returned from f will halt the iteration.
 18770  // The provided context supersedes any context provided to the Context method.
 18771  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesListCall) Pages(ctx context.Context, f func(*ListEventThreatDetectionCustomModulesResponse) error) error {
 18772  	c.ctx_ = ctx
 18773  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 18774  	for {
 18775  		x, err := c.Do()
 18776  		if err != nil {
 18777  			return err
 18778  		}
 18779  		if err := f(x); err != nil {
 18780  			return err
 18781  		}
 18782  		if x.NextPageToken == "" {
 18783  			return nil
 18784  		}
 18785  		c.PageToken(x.NextPageToken)
 18786  	}
 18787  }
 18788  
 18789  type OrganizationsEventThreatDetectionSettingsCustomModulesListDescendantCall struct {
 18790  	s            *Service
 18791  	parent       string
 18792  	urlParams_   gensupport.URLParams
 18793  	ifNoneMatch_ string
 18794  	ctx_         context.Context
 18795  	header_      http.Header
 18796  }
 18797  
 18798  // ListDescendant: Lists all resident Event Threat Detection custom modules
 18799  // under the given Resource Manager parent and its descendants.
 18800  //
 18801  //   - parent: Name of the parent to list custom modules under. Its format is: *
 18802  //     "organizations/{organization}/eventThreatDetectionSettings". *
 18803  //     "folders/{folder}/eventThreatDetectionSettings". *
 18804  //     "projects/{project}/eventThreatDetectionSettings".
 18805  func (r *OrganizationsEventThreatDetectionSettingsCustomModulesService) ListDescendant(parent string) *OrganizationsEventThreatDetectionSettingsCustomModulesListDescendantCall {
 18806  	c := &OrganizationsEventThreatDetectionSettingsCustomModulesListDescendantCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18807  	c.parent = parent
 18808  	return c
 18809  }
 18810  
 18811  // PageSize sets the optional parameter "pageSize": The maximum number of
 18812  // modules to return. The service may return fewer than this value. If
 18813  // unspecified, at most 10 configs will be returned. The maximum value is 1000;
 18814  // values above 1000 will be coerced to 1000.
 18815  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesListDescendantCall) PageSize(pageSize int64) *OrganizationsEventThreatDetectionSettingsCustomModulesListDescendantCall {
 18816  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 18817  	return c
 18818  }
 18819  
 18820  // PageToken sets the optional parameter "pageToken": A page token, received
 18821  // from a previous `ListDescendantEventThreatDetectionCustomModules` call.
 18822  // Provide this to retrieve the subsequent page. When paginating, all other
 18823  // parameters provided to `ListDescendantEventThreatDetectionCustomModules`
 18824  // must match the call that provided the page token.
 18825  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesListDescendantCall) PageToken(pageToken string) *OrganizationsEventThreatDetectionSettingsCustomModulesListDescendantCall {
 18826  	c.urlParams_.Set("pageToken", pageToken)
 18827  	return c
 18828  }
 18829  
 18830  // Fields allows partial responses to be retrieved. See
 18831  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18832  // details.
 18833  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesListDescendantCall) Fields(s ...googleapi.Field) *OrganizationsEventThreatDetectionSettingsCustomModulesListDescendantCall {
 18834  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18835  	return c
 18836  }
 18837  
 18838  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 18839  // object's ETag matches the given value. This is useful for getting updates
 18840  // only after the object has changed since the last request.
 18841  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesListDescendantCall) IfNoneMatch(entityTag string) *OrganizationsEventThreatDetectionSettingsCustomModulesListDescendantCall {
 18842  	c.ifNoneMatch_ = entityTag
 18843  	return c
 18844  }
 18845  
 18846  // Context sets the context to be used in this call's Do method.
 18847  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesListDescendantCall) Context(ctx context.Context) *OrganizationsEventThreatDetectionSettingsCustomModulesListDescendantCall {
 18848  	c.ctx_ = ctx
 18849  	return c
 18850  }
 18851  
 18852  // Header returns a http.Header that can be modified by the caller to add
 18853  // headers to the request.
 18854  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesListDescendantCall) Header() http.Header {
 18855  	if c.header_ == nil {
 18856  		c.header_ = make(http.Header)
 18857  	}
 18858  	return c.header_
 18859  }
 18860  
 18861  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesListDescendantCall) doRequest(alt string) (*http.Response, error) {
 18862  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 18863  	if c.ifNoneMatch_ != "" {
 18864  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 18865  	}
 18866  	var body io.Reader = nil
 18867  	c.urlParams_.Set("alt", alt)
 18868  	c.urlParams_.Set("prettyPrint", "false")
 18869  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules:listDescendant")
 18870  	urls += "?" + c.urlParams_.Encode()
 18871  	req, err := http.NewRequest("GET", urls, body)
 18872  	if err != nil {
 18873  		return nil, err
 18874  	}
 18875  	req.Header = reqHeaders
 18876  	googleapi.Expand(req.URL, map[string]string{
 18877  		"parent": c.parent,
 18878  	})
 18879  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18880  }
 18881  
 18882  // Do executes the "securitycenter.organizations.eventThreatDetectionSettings.customModules.listDescendant" call.
 18883  // Any non-2xx status code is an error. Response headers are in either
 18884  // *ListDescendantEventThreatDetectionCustomModulesResponse.ServerResponse.Heade
 18885  // r or (if a response was returned at all) in error.(*googleapi.Error).Header.
 18886  // Use googleapi.IsNotModified to check whether the returned error was because
 18887  // http.StatusNotModified was returned.
 18888  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesListDescendantCall) Do(opts ...googleapi.CallOption) (*ListDescendantEventThreatDetectionCustomModulesResponse, error) {
 18889  	gensupport.SetOptions(c.urlParams_, opts...)
 18890  	res, err := c.doRequest("json")
 18891  	if res != nil && res.StatusCode == http.StatusNotModified {
 18892  		if res.Body != nil {
 18893  			res.Body.Close()
 18894  		}
 18895  		return nil, gensupport.WrapError(&googleapi.Error{
 18896  			Code:   res.StatusCode,
 18897  			Header: res.Header,
 18898  		})
 18899  	}
 18900  	if err != nil {
 18901  		return nil, err
 18902  	}
 18903  	defer googleapi.CloseBody(res)
 18904  	if err := googleapi.CheckResponse(res); err != nil {
 18905  		return nil, gensupport.WrapError(err)
 18906  	}
 18907  	ret := &ListDescendantEventThreatDetectionCustomModulesResponse{
 18908  		ServerResponse: googleapi.ServerResponse{
 18909  			Header:         res.Header,
 18910  			HTTPStatusCode: res.StatusCode,
 18911  		},
 18912  	}
 18913  	target := &ret
 18914  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18915  		return nil, err
 18916  	}
 18917  	return ret, nil
 18918  }
 18919  
 18920  // Pages invokes f for each page of results.
 18921  // A non-nil error returned from f will halt the iteration.
 18922  // The provided context supersedes any context provided to the Context method.
 18923  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesListDescendantCall) Pages(ctx context.Context, f func(*ListDescendantEventThreatDetectionCustomModulesResponse) error) error {
 18924  	c.ctx_ = ctx
 18925  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 18926  	for {
 18927  		x, err := c.Do()
 18928  		if err != nil {
 18929  			return err
 18930  		}
 18931  		if err := f(x); err != nil {
 18932  			return err
 18933  		}
 18934  		if x.NextPageToken == "" {
 18935  			return nil
 18936  		}
 18937  		c.PageToken(x.NextPageToken)
 18938  	}
 18939  }
 18940  
 18941  type OrganizationsEventThreatDetectionSettingsCustomModulesPatchCall struct {
 18942  	s                                *Service
 18943  	name                             string
 18944  	eventthreatdetectioncustommodule *EventThreatDetectionCustomModule
 18945  	urlParams_                       gensupport.URLParams
 18946  	ctx_                             context.Context
 18947  	header_                          http.Header
 18948  }
 18949  
 18950  // Patch: Updates the Event Threat Detection custom module with the given name
 18951  // based on the given update mask. Updating the enablement state is supported
 18952  // for both resident and inherited modules (though resident modules cannot have
 18953  // an enablement state of "inherited"). Updating the display name or
 18954  // configuration of a module is supported for resident modules only. The type
 18955  // of a module cannot be changed.
 18956  //
 18957  //   - name: Immutable. The resource name of the Event Threat Detection custom
 18958  //     module. Its format is: *
 18959  //     "organizations/{organization}/eventThreatDetectionSettings/customModules/{m
 18960  //     odule}". *
 18961  //     "folders/{folder}/eventThreatDetectionSettings/customModules/{module}". *
 18962  //     "projects/{project}/eventThreatDetectionSettings/customModules/{module}".
 18963  func (r *OrganizationsEventThreatDetectionSettingsCustomModulesService) Patch(name string, eventthreatdetectioncustommodule *EventThreatDetectionCustomModule) *OrganizationsEventThreatDetectionSettingsCustomModulesPatchCall {
 18964  	c := &OrganizationsEventThreatDetectionSettingsCustomModulesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18965  	c.name = name
 18966  	c.eventthreatdetectioncustommodule = eventthreatdetectioncustommodule
 18967  	return c
 18968  }
 18969  
 18970  // UpdateMask sets the optional parameter "updateMask": The list of fields to
 18971  // be updated. If empty all mutable fields will be updated.
 18972  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesPatchCall) UpdateMask(updateMask string) *OrganizationsEventThreatDetectionSettingsCustomModulesPatchCall {
 18973  	c.urlParams_.Set("updateMask", updateMask)
 18974  	return c
 18975  }
 18976  
 18977  // Fields allows partial responses to be retrieved. See
 18978  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18979  // details.
 18980  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesPatchCall) Fields(s ...googleapi.Field) *OrganizationsEventThreatDetectionSettingsCustomModulesPatchCall {
 18981  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18982  	return c
 18983  }
 18984  
 18985  // Context sets the context to be used in this call's Do method.
 18986  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesPatchCall) Context(ctx context.Context) *OrganizationsEventThreatDetectionSettingsCustomModulesPatchCall {
 18987  	c.ctx_ = ctx
 18988  	return c
 18989  }
 18990  
 18991  // Header returns a http.Header that can be modified by the caller to add
 18992  // headers to the request.
 18993  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesPatchCall) Header() http.Header {
 18994  	if c.header_ == nil {
 18995  		c.header_ = make(http.Header)
 18996  	}
 18997  	return c.header_
 18998  }
 18999  
 19000  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesPatchCall) doRequest(alt string) (*http.Response, error) {
 19001  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 19002  	var body io.Reader = nil
 19003  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.eventthreatdetectioncustommodule)
 19004  	if err != nil {
 19005  		return nil, err
 19006  	}
 19007  	c.urlParams_.Set("alt", alt)
 19008  	c.urlParams_.Set("prettyPrint", "false")
 19009  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 19010  	urls += "?" + c.urlParams_.Encode()
 19011  	req, err := http.NewRequest("PATCH", urls, body)
 19012  	if err != nil {
 19013  		return nil, err
 19014  	}
 19015  	req.Header = reqHeaders
 19016  	googleapi.Expand(req.URL, map[string]string{
 19017  		"name": c.name,
 19018  	})
 19019  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19020  }
 19021  
 19022  // Do executes the "securitycenter.organizations.eventThreatDetectionSettings.customModules.patch" call.
 19023  // Any non-2xx status code is an error. Response headers are in either
 19024  // *EventThreatDetectionCustomModule.ServerResponse.Header or (if a response
 19025  // was returned at all) in error.(*googleapi.Error).Header. Use
 19026  // googleapi.IsNotModified to check whether the returned error was because
 19027  // http.StatusNotModified was returned.
 19028  func (c *OrganizationsEventThreatDetectionSettingsCustomModulesPatchCall) Do(opts ...googleapi.CallOption) (*EventThreatDetectionCustomModule, error) {
 19029  	gensupport.SetOptions(c.urlParams_, opts...)
 19030  	res, err := c.doRequest("json")
 19031  	if res != nil && res.StatusCode == http.StatusNotModified {
 19032  		if res.Body != nil {
 19033  			res.Body.Close()
 19034  		}
 19035  		return nil, gensupport.WrapError(&googleapi.Error{
 19036  			Code:   res.StatusCode,
 19037  			Header: res.Header,
 19038  		})
 19039  	}
 19040  	if err != nil {
 19041  		return nil, err
 19042  	}
 19043  	defer googleapi.CloseBody(res)
 19044  	if err := googleapi.CheckResponse(res); err != nil {
 19045  		return nil, gensupport.WrapError(err)
 19046  	}
 19047  	ret := &EventThreatDetectionCustomModule{
 19048  		ServerResponse: googleapi.ServerResponse{
 19049  			Header:         res.Header,
 19050  			HTTPStatusCode: res.StatusCode,
 19051  		},
 19052  	}
 19053  	target := &ret
 19054  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19055  		return nil, err
 19056  	}
 19057  	return ret, nil
 19058  }
 19059  
 19060  type OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesGetCall struct {
 19061  	s            *Service
 19062  	name         string
 19063  	urlParams_   gensupport.URLParams
 19064  	ifNoneMatch_ string
 19065  	ctx_         context.Context
 19066  	header_      http.Header
 19067  }
 19068  
 19069  // Get: Gets an effective Event Threat Detection custom module at the given
 19070  // level.
 19071  //
 19072  //   - name: The resource name of the effective Event Threat Detection custom
 19073  //     module. Its format is: *
 19074  //     "organizations/{organization}/eventThreatDetectionSettings/effectiveCustomM
 19075  //     odules/{module}". *
 19076  //     "folders/{folder}/eventThreatDetectionSettings/effectiveCustomModules/{modu
 19077  //     le}". *
 19078  //     "projects/{project}/eventThreatDetectionSettings/effectiveCustomModules/{mo
 19079  //     dule}".
 19080  func (r *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesService) Get(name string) *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesGetCall {
 19081  	c := &OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19082  	c.name = name
 19083  	return c
 19084  }
 19085  
 19086  // Fields allows partial responses to be retrieved. See
 19087  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19088  // details.
 19089  func (c *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesGetCall) Fields(s ...googleapi.Field) *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesGetCall {
 19090  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19091  	return c
 19092  }
 19093  
 19094  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 19095  // object's ETag matches the given value. This is useful for getting updates
 19096  // only after the object has changed since the last request.
 19097  func (c *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesGetCall) IfNoneMatch(entityTag string) *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesGetCall {
 19098  	c.ifNoneMatch_ = entityTag
 19099  	return c
 19100  }
 19101  
 19102  // Context sets the context to be used in this call's Do method.
 19103  func (c *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesGetCall) Context(ctx context.Context) *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesGetCall {
 19104  	c.ctx_ = ctx
 19105  	return c
 19106  }
 19107  
 19108  // Header returns a http.Header that can be modified by the caller to add
 19109  // headers to the request.
 19110  func (c *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesGetCall) Header() http.Header {
 19111  	if c.header_ == nil {
 19112  		c.header_ = make(http.Header)
 19113  	}
 19114  	return c.header_
 19115  }
 19116  
 19117  func (c *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesGetCall) doRequest(alt string) (*http.Response, error) {
 19118  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 19119  	if c.ifNoneMatch_ != "" {
 19120  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 19121  	}
 19122  	var body io.Reader = nil
 19123  	c.urlParams_.Set("alt", alt)
 19124  	c.urlParams_.Set("prettyPrint", "false")
 19125  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 19126  	urls += "?" + c.urlParams_.Encode()
 19127  	req, err := http.NewRequest("GET", urls, body)
 19128  	if err != nil {
 19129  		return nil, err
 19130  	}
 19131  	req.Header = reqHeaders
 19132  	googleapi.Expand(req.URL, map[string]string{
 19133  		"name": c.name,
 19134  	})
 19135  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19136  }
 19137  
 19138  // Do executes the "securitycenter.organizations.eventThreatDetectionSettings.effectiveCustomModules.get" call.
 19139  // Any non-2xx status code is an error. Response headers are in either
 19140  // *EffectiveEventThreatDetectionCustomModule.ServerResponse.Header or (if a
 19141  // response was returned at all) in error.(*googleapi.Error).Header. Use
 19142  // googleapi.IsNotModified to check whether the returned error was because
 19143  // http.StatusNotModified was returned.
 19144  func (c *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesGetCall) Do(opts ...googleapi.CallOption) (*EffectiveEventThreatDetectionCustomModule, error) {
 19145  	gensupport.SetOptions(c.urlParams_, opts...)
 19146  	res, err := c.doRequest("json")
 19147  	if res != nil && res.StatusCode == http.StatusNotModified {
 19148  		if res.Body != nil {
 19149  			res.Body.Close()
 19150  		}
 19151  		return nil, gensupport.WrapError(&googleapi.Error{
 19152  			Code:   res.StatusCode,
 19153  			Header: res.Header,
 19154  		})
 19155  	}
 19156  	if err != nil {
 19157  		return nil, err
 19158  	}
 19159  	defer googleapi.CloseBody(res)
 19160  	if err := googleapi.CheckResponse(res); err != nil {
 19161  		return nil, gensupport.WrapError(err)
 19162  	}
 19163  	ret := &EffectiveEventThreatDetectionCustomModule{
 19164  		ServerResponse: googleapi.ServerResponse{
 19165  			Header:         res.Header,
 19166  			HTTPStatusCode: res.StatusCode,
 19167  		},
 19168  	}
 19169  	target := &ret
 19170  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19171  		return nil, err
 19172  	}
 19173  	return ret, nil
 19174  }
 19175  
 19176  type OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesListCall struct {
 19177  	s            *Service
 19178  	parent       string
 19179  	urlParams_   gensupport.URLParams
 19180  	ifNoneMatch_ string
 19181  	ctx_         context.Context
 19182  	header_      http.Header
 19183  }
 19184  
 19185  // List: Lists all effective Event Threat Detection custom modules for the
 19186  // given parent. This includes resident modules defined at the scope of the
 19187  // parent along with modules inherited from its ancestors.
 19188  //
 19189  //   - parent: Name of the parent to list custom modules for. Its format is: *
 19190  //     "organizations/{organization}/eventThreatDetectionSettings". *
 19191  //     "folders/{folder}/eventThreatDetectionSettings". *
 19192  //     "projects/{project}/eventThreatDetectionSettings".
 19193  func (r *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesService) List(parent string) *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesListCall {
 19194  	c := &OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19195  	c.parent = parent
 19196  	return c
 19197  }
 19198  
 19199  // PageSize sets the optional parameter "pageSize": The maximum number of
 19200  // modules to return. The service may return fewer than this value. If
 19201  // unspecified, at most 10 configs will be returned. The maximum value is 1000;
 19202  // values above 1000 will be coerced to 1000.
 19203  func (c *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesListCall) PageSize(pageSize int64) *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesListCall {
 19204  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 19205  	return c
 19206  }
 19207  
 19208  // PageToken sets the optional parameter "pageToken": A page token, received
 19209  // from a previous `ListEffectiveEventThreatDetectionCustomModules` call.
 19210  // Provide this to retrieve the subsequent page. When paginating, all other
 19211  // parameters provided to `ListEffectiveEventThreatDetectionCustomModules` must
 19212  // match the call that provided the page token.
 19213  func (c *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesListCall) PageToken(pageToken string) *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesListCall {
 19214  	c.urlParams_.Set("pageToken", pageToken)
 19215  	return c
 19216  }
 19217  
 19218  // Fields allows partial responses to be retrieved. See
 19219  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19220  // details.
 19221  func (c *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesListCall) Fields(s ...googleapi.Field) *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesListCall {
 19222  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19223  	return c
 19224  }
 19225  
 19226  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 19227  // object's ETag matches the given value. This is useful for getting updates
 19228  // only after the object has changed since the last request.
 19229  func (c *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesListCall) IfNoneMatch(entityTag string) *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesListCall {
 19230  	c.ifNoneMatch_ = entityTag
 19231  	return c
 19232  }
 19233  
 19234  // Context sets the context to be used in this call's Do method.
 19235  func (c *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesListCall) Context(ctx context.Context) *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesListCall {
 19236  	c.ctx_ = ctx
 19237  	return c
 19238  }
 19239  
 19240  // Header returns a http.Header that can be modified by the caller to add
 19241  // headers to the request.
 19242  func (c *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesListCall) Header() http.Header {
 19243  	if c.header_ == nil {
 19244  		c.header_ = make(http.Header)
 19245  	}
 19246  	return c.header_
 19247  }
 19248  
 19249  func (c *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesListCall) doRequest(alt string) (*http.Response, error) {
 19250  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 19251  	if c.ifNoneMatch_ != "" {
 19252  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 19253  	}
 19254  	var body io.Reader = nil
 19255  	c.urlParams_.Set("alt", alt)
 19256  	c.urlParams_.Set("prettyPrint", "false")
 19257  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/effectiveCustomModules")
 19258  	urls += "?" + c.urlParams_.Encode()
 19259  	req, err := http.NewRequest("GET", urls, body)
 19260  	if err != nil {
 19261  		return nil, err
 19262  	}
 19263  	req.Header = reqHeaders
 19264  	googleapi.Expand(req.URL, map[string]string{
 19265  		"parent": c.parent,
 19266  	})
 19267  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19268  }
 19269  
 19270  // Do executes the "securitycenter.organizations.eventThreatDetectionSettings.effectiveCustomModules.list" call.
 19271  // Any non-2xx status code is an error. Response headers are in either
 19272  // *ListEffectiveEventThreatDetectionCustomModulesResponse.ServerResponse.Header
 19273  //
 19274  //	or (if a response was returned at all) in error.(*googleapi.Error).Header.
 19275  //
 19276  // Use googleapi.IsNotModified to check whether the returned error was because
 19277  // http.StatusNotModified was returned.
 19278  func (c *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesListCall) Do(opts ...googleapi.CallOption) (*ListEffectiveEventThreatDetectionCustomModulesResponse, error) {
 19279  	gensupport.SetOptions(c.urlParams_, opts...)
 19280  	res, err := c.doRequest("json")
 19281  	if res != nil && res.StatusCode == http.StatusNotModified {
 19282  		if res.Body != nil {
 19283  			res.Body.Close()
 19284  		}
 19285  		return nil, gensupport.WrapError(&googleapi.Error{
 19286  			Code:   res.StatusCode,
 19287  			Header: res.Header,
 19288  		})
 19289  	}
 19290  	if err != nil {
 19291  		return nil, err
 19292  	}
 19293  	defer googleapi.CloseBody(res)
 19294  	if err := googleapi.CheckResponse(res); err != nil {
 19295  		return nil, gensupport.WrapError(err)
 19296  	}
 19297  	ret := &ListEffectiveEventThreatDetectionCustomModulesResponse{
 19298  		ServerResponse: googleapi.ServerResponse{
 19299  			Header:         res.Header,
 19300  			HTTPStatusCode: res.StatusCode,
 19301  		},
 19302  	}
 19303  	target := &ret
 19304  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19305  		return nil, err
 19306  	}
 19307  	return ret, nil
 19308  }
 19309  
 19310  // Pages invokes f for each page of results.
 19311  // A non-nil error returned from f will halt the iteration.
 19312  // The provided context supersedes any context provided to the Context method.
 19313  func (c *OrganizationsEventThreatDetectionSettingsEffectiveCustomModulesListCall) Pages(ctx context.Context, f func(*ListEffectiveEventThreatDetectionCustomModulesResponse) error) error {
 19314  	c.ctx_ = ctx
 19315  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 19316  	for {
 19317  		x, err := c.Do()
 19318  		if err != nil {
 19319  			return err
 19320  		}
 19321  		if err := f(x); err != nil {
 19322  			return err
 19323  		}
 19324  		if x.NextPageToken == "" {
 19325  			return nil
 19326  		}
 19327  		c.PageToken(x.NextPageToken)
 19328  	}
 19329  }
 19330  
 19331  type OrganizationsFindingsBulkMuteCall struct {
 19332  	s                       *Service
 19333  	parent                  string
 19334  	bulkmutefindingsrequest *BulkMuteFindingsRequest
 19335  	urlParams_              gensupport.URLParams
 19336  	ctx_                    context.Context
 19337  	header_                 http.Header
 19338  }
 19339  
 19340  // BulkMute: Kicks off an LRO to bulk mute findings for a parent based on a
 19341  // filter. The parent can be either an organization, folder or project. The
 19342  // findings matched by the filter will be muted after the LRO is done.
 19343  //
 19344  //   - parent: The parent, at which bulk action needs to be applied. Its format
 19345  //     is "organizations/[organization_id]", "folders/[folder_id]",
 19346  //     "projects/[project_id]".
 19347  func (r *OrganizationsFindingsService) BulkMute(parent string, bulkmutefindingsrequest *BulkMuteFindingsRequest) *OrganizationsFindingsBulkMuteCall {
 19348  	c := &OrganizationsFindingsBulkMuteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19349  	c.parent = parent
 19350  	c.bulkmutefindingsrequest = bulkmutefindingsrequest
 19351  	return c
 19352  }
 19353  
 19354  // Fields allows partial responses to be retrieved. See
 19355  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19356  // details.
 19357  func (c *OrganizationsFindingsBulkMuteCall) Fields(s ...googleapi.Field) *OrganizationsFindingsBulkMuteCall {
 19358  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19359  	return c
 19360  }
 19361  
 19362  // Context sets the context to be used in this call's Do method.
 19363  func (c *OrganizationsFindingsBulkMuteCall) Context(ctx context.Context) *OrganizationsFindingsBulkMuteCall {
 19364  	c.ctx_ = ctx
 19365  	return c
 19366  }
 19367  
 19368  // Header returns a http.Header that can be modified by the caller to add
 19369  // headers to the request.
 19370  func (c *OrganizationsFindingsBulkMuteCall) Header() http.Header {
 19371  	if c.header_ == nil {
 19372  		c.header_ = make(http.Header)
 19373  	}
 19374  	return c.header_
 19375  }
 19376  
 19377  func (c *OrganizationsFindingsBulkMuteCall) doRequest(alt string) (*http.Response, error) {
 19378  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 19379  	var body io.Reader = nil
 19380  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.bulkmutefindingsrequest)
 19381  	if err != nil {
 19382  		return nil, err
 19383  	}
 19384  	c.urlParams_.Set("alt", alt)
 19385  	c.urlParams_.Set("prettyPrint", "false")
 19386  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/findings:bulkMute")
 19387  	urls += "?" + c.urlParams_.Encode()
 19388  	req, err := http.NewRequest("POST", urls, body)
 19389  	if err != nil {
 19390  		return nil, err
 19391  	}
 19392  	req.Header = reqHeaders
 19393  	googleapi.Expand(req.URL, map[string]string{
 19394  		"parent": c.parent,
 19395  	})
 19396  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19397  }
 19398  
 19399  // Do executes the "securitycenter.organizations.findings.bulkMute" call.
 19400  // Any non-2xx status code is an error. Response headers are in either
 19401  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 19402  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 19403  // whether the returned error was because http.StatusNotModified was returned.
 19404  func (c *OrganizationsFindingsBulkMuteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 19405  	gensupport.SetOptions(c.urlParams_, opts...)
 19406  	res, err := c.doRequest("json")
 19407  	if res != nil && res.StatusCode == http.StatusNotModified {
 19408  		if res.Body != nil {
 19409  			res.Body.Close()
 19410  		}
 19411  		return nil, gensupport.WrapError(&googleapi.Error{
 19412  			Code:   res.StatusCode,
 19413  			Header: res.Header,
 19414  		})
 19415  	}
 19416  	if err != nil {
 19417  		return nil, err
 19418  	}
 19419  	defer googleapi.CloseBody(res)
 19420  	if err := googleapi.CheckResponse(res); err != nil {
 19421  		return nil, gensupport.WrapError(err)
 19422  	}
 19423  	ret := &Operation{
 19424  		ServerResponse: googleapi.ServerResponse{
 19425  			Header:         res.Header,
 19426  			HTTPStatusCode: res.StatusCode,
 19427  		},
 19428  	}
 19429  	target := &ret
 19430  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19431  		return nil, err
 19432  	}
 19433  	return ret, nil
 19434  }
 19435  
 19436  type OrganizationsLocationsMuteConfigsCreateCall struct {
 19437  	s                                     *Service
 19438  	parent                                string
 19439  	googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig
 19440  	urlParams_                            gensupport.URLParams
 19441  	ctx_                                  context.Context
 19442  	header_                               http.Header
 19443  }
 19444  
 19445  // Create: Creates a mute config.
 19446  //
 19447  //   - parent: Resource name of the new mute configs's parent. Its format is
 19448  //     "organizations/[organization_id]", "folders/[folder_id]", or
 19449  //     "projects/[project_id]".
 19450  func (r *OrganizationsLocationsMuteConfigsService) Create(parent string, googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig) *OrganizationsLocationsMuteConfigsCreateCall {
 19451  	c := &OrganizationsLocationsMuteConfigsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19452  	c.parent = parent
 19453  	c.googlecloudsecuritycenterv1muteconfig = googlecloudsecuritycenterv1muteconfig
 19454  	return c
 19455  }
 19456  
 19457  // MuteConfigId sets the optional parameter "muteConfigId": Required. Unique
 19458  // identifier provided by the client within the parent scope. It must consist
 19459  // of only lowercase letters, numbers, and hyphens, must start with a letter,
 19460  // must end with either a letter or a number, and must be 63 characters or
 19461  // less.
 19462  func (c *OrganizationsLocationsMuteConfigsCreateCall) MuteConfigId(muteConfigId string) *OrganizationsLocationsMuteConfigsCreateCall {
 19463  	c.urlParams_.Set("muteConfigId", muteConfigId)
 19464  	return c
 19465  }
 19466  
 19467  // Fields allows partial responses to be retrieved. See
 19468  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19469  // details.
 19470  func (c *OrganizationsLocationsMuteConfigsCreateCall) Fields(s ...googleapi.Field) *OrganizationsLocationsMuteConfigsCreateCall {
 19471  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19472  	return c
 19473  }
 19474  
 19475  // Context sets the context to be used in this call's Do method.
 19476  func (c *OrganizationsLocationsMuteConfigsCreateCall) Context(ctx context.Context) *OrganizationsLocationsMuteConfigsCreateCall {
 19477  	c.ctx_ = ctx
 19478  	return c
 19479  }
 19480  
 19481  // Header returns a http.Header that can be modified by the caller to add
 19482  // headers to the request.
 19483  func (c *OrganizationsLocationsMuteConfigsCreateCall) Header() http.Header {
 19484  	if c.header_ == nil {
 19485  		c.header_ = make(http.Header)
 19486  	}
 19487  	return c.header_
 19488  }
 19489  
 19490  func (c *OrganizationsLocationsMuteConfigsCreateCall) doRequest(alt string) (*http.Response, error) {
 19491  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 19492  	var body io.Reader = nil
 19493  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1muteconfig)
 19494  	if err != nil {
 19495  		return nil, err
 19496  	}
 19497  	c.urlParams_.Set("alt", alt)
 19498  	c.urlParams_.Set("prettyPrint", "false")
 19499  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/muteConfigs")
 19500  	urls += "?" + c.urlParams_.Encode()
 19501  	req, err := http.NewRequest("POST", urls, body)
 19502  	if err != nil {
 19503  		return nil, err
 19504  	}
 19505  	req.Header = reqHeaders
 19506  	googleapi.Expand(req.URL, map[string]string{
 19507  		"parent": c.parent,
 19508  	})
 19509  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19510  }
 19511  
 19512  // Do executes the "securitycenter.organizations.locations.muteConfigs.create" call.
 19513  // Any non-2xx status code is an error. Response headers are in either
 19514  // *GoogleCloudSecuritycenterV1MuteConfig.ServerResponse.Header or (if a
 19515  // response was returned at all) in error.(*googleapi.Error).Header. Use
 19516  // googleapi.IsNotModified to check whether the returned error was because
 19517  // http.StatusNotModified was returned.
 19518  func (c *OrganizationsLocationsMuteConfigsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1MuteConfig, error) {
 19519  	gensupport.SetOptions(c.urlParams_, opts...)
 19520  	res, err := c.doRequest("json")
 19521  	if res != nil && res.StatusCode == http.StatusNotModified {
 19522  		if res.Body != nil {
 19523  			res.Body.Close()
 19524  		}
 19525  		return nil, gensupport.WrapError(&googleapi.Error{
 19526  			Code:   res.StatusCode,
 19527  			Header: res.Header,
 19528  		})
 19529  	}
 19530  	if err != nil {
 19531  		return nil, err
 19532  	}
 19533  	defer googleapi.CloseBody(res)
 19534  	if err := googleapi.CheckResponse(res); err != nil {
 19535  		return nil, gensupport.WrapError(err)
 19536  	}
 19537  	ret := &GoogleCloudSecuritycenterV1MuteConfig{
 19538  		ServerResponse: googleapi.ServerResponse{
 19539  			Header:         res.Header,
 19540  			HTTPStatusCode: res.StatusCode,
 19541  		},
 19542  	}
 19543  	target := &ret
 19544  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19545  		return nil, err
 19546  	}
 19547  	return ret, nil
 19548  }
 19549  
 19550  type OrganizationsLocationsMuteConfigsDeleteCall struct {
 19551  	s          *Service
 19552  	name       string
 19553  	urlParams_ gensupport.URLParams
 19554  	ctx_       context.Context
 19555  	header_    http.Header
 19556  }
 19557  
 19558  // Delete: Deletes an existing mute config.
 19559  //
 19560  //   - name: Name of the mute config to delete. Its format is
 19561  //     organizations/{organization}/muteConfigs/{config_id},
 19562  //     folders/{folder}/muteConfigs/{config_id},
 19563  //     projects/{project}/muteConfigs/{config_id},
 19564  //     organizations/{organization}/locations/global/muteConfigs/{config_id},
 19565  //     folders/{folder}/locations/global/muteConfigs/{config_id}, or
 19566  //     projects/{project}/locations/global/muteConfigs/{config_id}.
 19567  func (r *OrganizationsLocationsMuteConfigsService) Delete(name string) *OrganizationsLocationsMuteConfigsDeleteCall {
 19568  	c := &OrganizationsLocationsMuteConfigsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19569  	c.name = name
 19570  	return c
 19571  }
 19572  
 19573  // Fields allows partial responses to be retrieved. See
 19574  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19575  // details.
 19576  func (c *OrganizationsLocationsMuteConfigsDeleteCall) Fields(s ...googleapi.Field) *OrganizationsLocationsMuteConfigsDeleteCall {
 19577  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19578  	return c
 19579  }
 19580  
 19581  // Context sets the context to be used in this call's Do method.
 19582  func (c *OrganizationsLocationsMuteConfigsDeleteCall) Context(ctx context.Context) *OrganizationsLocationsMuteConfigsDeleteCall {
 19583  	c.ctx_ = ctx
 19584  	return c
 19585  }
 19586  
 19587  // Header returns a http.Header that can be modified by the caller to add
 19588  // headers to the request.
 19589  func (c *OrganizationsLocationsMuteConfigsDeleteCall) Header() http.Header {
 19590  	if c.header_ == nil {
 19591  		c.header_ = make(http.Header)
 19592  	}
 19593  	return c.header_
 19594  }
 19595  
 19596  func (c *OrganizationsLocationsMuteConfigsDeleteCall) doRequest(alt string) (*http.Response, error) {
 19597  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 19598  	var body io.Reader = nil
 19599  	c.urlParams_.Set("alt", alt)
 19600  	c.urlParams_.Set("prettyPrint", "false")
 19601  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 19602  	urls += "?" + c.urlParams_.Encode()
 19603  	req, err := http.NewRequest("DELETE", urls, body)
 19604  	if err != nil {
 19605  		return nil, err
 19606  	}
 19607  	req.Header = reqHeaders
 19608  	googleapi.Expand(req.URL, map[string]string{
 19609  		"name": c.name,
 19610  	})
 19611  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19612  }
 19613  
 19614  // Do executes the "securitycenter.organizations.locations.muteConfigs.delete" call.
 19615  // Any non-2xx status code is an error. Response headers are in either
 19616  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 19617  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 19618  // whether the returned error was because http.StatusNotModified was returned.
 19619  func (c *OrganizationsLocationsMuteConfigsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 19620  	gensupport.SetOptions(c.urlParams_, opts...)
 19621  	res, err := c.doRequest("json")
 19622  	if res != nil && res.StatusCode == http.StatusNotModified {
 19623  		if res.Body != nil {
 19624  			res.Body.Close()
 19625  		}
 19626  		return nil, gensupport.WrapError(&googleapi.Error{
 19627  			Code:   res.StatusCode,
 19628  			Header: res.Header,
 19629  		})
 19630  	}
 19631  	if err != nil {
 19632  		return nil, err
 19633  	}
 19634  	defer googleapi.CloseBody(res)
 19635  	if err := googleapi.CheckResponse(res); err != nil {
 19636  		return nil, gensupport.WrapError(err)
 19637  	}
 19638  	ret := &Empty{
 19639  		ServerResponse: googleapi.ServerResponse{
 19640  			Header:         res.Header,
 19641  			HTTPStatusCode: res.StatusCode,
 19642  		},
 19643  	}
 19644  	target := &ret
 19645  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19646  		return nil, err
 19647  	}
 19648  	return ret, nil
 19649  }
 19650  
 19651  type OrganizationsLocationsMuteConfigsGetCall struct {
 19652  	s            *Service
 19653  	name         string
 19654  	urlParams_   gensupport.URLParams
 19655  	ifNoneMatch_ string
 19656  	ctx_         context.Context
 19657  	header_      http.Header
 19658  }
 19659  
 19660  // Get: Gets a mute config.
 19661  //
 19662  //   - name: Name of the mute config to retrieve. Its format is
 19663  //     organizations/{organization}/muteConfigs/{config_id},
 19664  //     folders/{folder}/muteConfigs/{config_id},
 19665  //     projects/{project}/muteConfigs/{config_id},
 19666  //     organizations/{organization}/locations/global/muteConfigs/{config_id},
 19667  //     folders/{folder}/locations/global/muteConfigs/{config_id}, or
 19668  //     projects/{project}/locations/global/muteConfigs/{config_id}.
 19669  func (r *OrganizationsLocationsMuteConfigsService) Get(name string) *OrganizationsLocationsMuteConfigsGetCall {
 19670  	c := &OrganizationsLocationsMuteConfigsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19671  	c.name = name
 19672  	return c
 19673  }
 19674  
 19675  // Fields allows partial responses to be retrieved. See
 19676  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19677  // details.
 19678  func (c *OrganizationsLocationsMuteConfigsGetCall) Fields(s ...googleapi.Field) *OrganizationsLocationsMuteConfigsGetCall {
 19679  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19680  	return c
 19681  }
 19682  
 19683  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 19684  // object's ETag matches the given value. This is useful for getting updates
 19685  // only after the object has changed since the last request.
 19686  func (c *OrganizationsLocationsMuteConfigsGetCall) IfNoneMatch(entityTag string) *OrganizationsLocationsMuteConfigsGetCall {
 19687  	c.ifNoneMatch_ = entityTag
 19688  	return c
 19689  }
 19690  
 19691  // Context sets the context to be used in this call's Do method.
 19692  func (c *OrganizationsLocationsMuteConfigsGetCall) Context(ctx context.Context) *OrganizationsLocationsMuteConfigsGetCall {
 19693  	c.ctx_ = ctx
 19694  	return c
 19695  }
 19696  
 19697  // Header returns a http.Header that can be modified by the caller to add
 19698  // headers to the request.
 19699  func (c *OrganizationsLocationsMuteConfigsGetCall) Header() http.Header {
 19700  	if c.header_ == nil {
 19701  		c.header_ = make(http.Header)
 19702  	}
 19703  	return c.header_
 19704  }
 19705  
 19706  func (c *OrganizationsLocationsMuteConfigsGetCall) doRequest(alt string) (*http.Response, error) {
 19707  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 19708  	if c.ifNoneMatch_ != "" {
 19709  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 19710  	}
 19711  	var body io.Reader = nil
 19712  	c.urlParams_.Set("alt", alt)
 19713  	c.urlParams_.Set("prettyPrint", "false")
 19714  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 19715  	urls += "?" + c.urlParams_.Encode()
 19716  	req, err := http.NewRequest("GET", urls, body)
 19717  	if err != nil {
 19718  		return nil, err
 19719  	}
 19720  	req.Header = reqHeaders
 19721  	googleapi.Expand(req.URL, map[string]string{
 19722  		"name": c.name,
 19723  	})
 19724  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19725  }
 19726  
 19727  // Do executes the "securitycenter.organizations.locations.muteConfigs.get" call.
 19728  // Any non-2xx status code is an error. Response headers are in either
 19729  // *GoogleCloudSecuritycenterV1MuteConfig.ServerResponse.Header or (if a
 19730  // response was returned at all) in error.(*googleapi.Error).Header. Use
 19731  // googleapi.IsNotModified to check whether the returned error was because
 19732  // http.StatusNotModified was returned.
 19733  func (c *OrganizationsLocationsMuteConfigsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1MuteConfig, error) {
 19734  	gensupport.SetOptions(c.urlParams_, opts...)
 19735  	res, err := c.doRequest("json")
 19736  	if res != nil && res.StatusCode == http.StatusNotModified {
 19737  		if res.Body != nil {
 19738  			res.Body.Close()
 19739  		}
 19740  		return nil, gensupport.WrapError(&googleapi.Error{
 19741  			Code:   res.StatusCode,
 19742  			Header: res.Header,
 19743  		})
 19744  	}
 19745  	if err != nil {
 19746  		return nil, err
 19747  	}
 19748  	defer googleapi.CloseBody(res)
 19749  	if err := googleapi.CheckResponse(res); err != nil {
 19750  		return nil, gensupport.WrapError(err)
 19751  	}
 19752  	ret := &GoogleCloudSecuritycenterV1MuteConfig{
 19753  		ServerResponse: googleapi.ServerResponse{
 19754  			Header:         res.Header,
 19755  			HTTPStatusCode: res.StatusCode,
 19756  		},
 19757  	}
 19758  	target := &ret
 19759  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19760  		return nil, err
 19761  	}
 19762  	return ret, nil
 19763  }
 19764  
 19765  type OrganizationsLocationsMuteConfigsListCall struct {
 19766  	s            *Service
 19767  	parent       string
 19768  	urlParams_   gensupport.URLParams
 19769  	ifNoneMatch_ string
 19770  	ctx_         context.Context
 19771  	header_      http.Header
 19772  }
 19773  
 19774  // List: Lists mute configs.
 19775  //
 19776  //   - parent: The parent, which owns the collection of mute configs. Its format
 19777  //     is "organizations/[organization_id]", "folders/[folder_id]",
 19778  //     "projects/[project_id]".
 19779  func (r *OrganizationsLocationsMuteConfigsService) List(parent string) *OrganizationsLocationsMuteConfigsListCall {
 19780  	c := &OrganizationsLocationsMuteConfigsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19781  	c.parent = parent
 19782  	return c
 19783  }
 19784  
 19785  // PageSize sets the optional parameter "pageSize": The maximum number of
 19786  // configs to return. The service may return fewer than this value. If
 19787  // unspecified, at most 10 configs will be returned. The maximum value is 1000;
 19788  // values above 1000 will be coerced to 1000.
 19789  func (c *OrganizationsLocationsMuteConfigsListCall) PageSize(pageSize int64) *OrganizationsLocationsMuteConfigsListCall {
 19790  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 19791  	return c
 19792  }
 19793  
 19794  // PageToken sets the optional parameter "pageToken": A page token, received
 19795  // from a previous `ListMuteConfigs` call. Provide this to retrieve the
 19796  // subsequent page. When paginating, all other parameters provided to
 19797  // `ListMuteConfigs` must match the call that provided the page token.
 19798  func (c *OrganizationsLocationsMuteConfigsListCall) PageToken(pageToken string) *OrganizationsLocationsMuteConfigsListCall {
 19799  	c.urlParams_.Set("pageToken", pageToken)
 19800  	return c
 19801  }
 19802  
 19803  // Fields allows partial responses to be retrieved. See
 19804  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19805  // details.
 19806  func (c *OrganizationsLocationsMuteConfigsListCall) Fields(s ...googleapi.Field) *OrganizationsLocationsMuteConfigsListCall {
 19807  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19808  	return c
 19809  }
 19810  
 19811  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 19812  // object's ETag matches the given value. This is useful for getting updates
 19813  // only after the object has changed since the last request.
 19814  func (c *OrganizationsLocationsMuteConfigsListCall) IfNoneMatch(entityTag string) *OrganizationsLocationsMuteConfigsListCall {
 19815  	c.ifNoneMatch_ = entityTag
 19816  	return c
 19817  }
 19818  
 19819  // Context sets the context to be used in this call's Do method.
 19820  func (c *OrganizationsLocationsMuteConfigsListCall) Context(ctx context.Context) *OrganizationsLocationsMuteConfigsListCall {
 19821  	c.ctx_ = ctx
 19822  	return c
 19823  }
 19824  
 19825  // Header returns a http.Header that can be modified by the caller to add
 19826  // headers to the request.
 19827  func (c *OrganizationsLocationsMuteConfigsListCall) Header() http.Header {
 19828  	if c.header_ == nil {
 19829  		c.header_ = make(http.Header)
 19830  	}
 19831  	return c.header_
 19832  }
 19833  
 19834  func (c *OrganizationsLocationsMuteConfigsListCall) doRequest(alt string) (*http.Response, error) {
 19835  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 19836  	if c.ifNoneMatch_ != "" {
 19837  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 19838  	}
 19839  	var body io.Reader = nil
 19840  	c.urlParams_.Set("alt", alt)
 19841  	c.urlParams_.Set("prettyPrint", "false")
 19842  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}")
 19843  	urls += "?" + c.urlParams_.Encode()
 19844  	req, err := http.NewRequest("GET", urls, body)
 19845  	if err != nil {
 19846  		return nil, err
 19847  	}
 19848  	req.Header = reqHeaders
 19849  	googleapi.Expand(req.URL, map[string]string{
 19850  		"parent": c.parent,
 19851  	})
 19852  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19853  }
 19854  
 19855  // Do executes the "securitycenter.organizations.locations.muteConfigs.list" call.
 19856  // Any non-2xx status code is an error. Response headers are in either
 19857  // *ListMuteConfigsResponse.ServerResponse.Header or (if a response was
 19858  // returned at all) in error.(*googleapi.Error).Header. Use
 19859  // googleapi.IsNotModified to check whether the returned error was because
 19860  // http.StatusNotModified was returned.
 19861  func (c *OrganizationsLocationsMuteConfigsListCall) Do(opts ...googleapi.CallOption) (*ListMuteConfigsResponse, error) {
 19862  	gensupport.SetOptions(c.urlParams_, opts...)
 19863  	res, err := c.doRequest("json")
 19864  	if res != nil && res.StatusCode == http.StatusNotModified {
 19865  		if res.Body != nil {
 19866  			res.Body.Close()
 19867  		}
 19868  		return nil, gensupport.WrapError(&googleapi.Error{
 19869  			Code:   res.StatusCode,
 19870  			Header: res.Header,
 19871  		})
 19872  	}
 19873  	if err != nil {
 19874  		return nil, err
 19875  	}
 19876  	defer googleapi.CloseBody(res)
 19877  	if err := googleapi.CheckResponse(res); err != nil {
 19878  		return nil, gensupport.WrapError(err)
 19879  	}
 19880  	ret := &ListMuteConfigsResponse{
 19881  		ServerResponse: googleapi.ServerResponse{
 19882  			Header:         res.Header,
 19883  			HTTPStatusCode: res.StatusCode,
 19884  		},
 19885  	}
 19886  	target := &ret
 19887  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19888  		return nil, err
 19889  	}
 19890  	return ret, nil
 19891  }
 19892  
 19893  // Pages invokes f for each page of results.
 19894  // A non-nil error returned from f will halt the iteration.
 19895  // The provided context supersedes any context provided to the Context method.
 19896  func (c *OrganizationsLocationsMuteConfigsListCall) Pages(ctx context.Context, f func(*ListMuteConfigsResponse) error) error {
 19897  	c.ctx_ = ctx
 19898  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 19899  	for {
 19900  		x, err := c.Do()
 19901  		if err != nil {
 19902  			return err
 19903  		}
 19904  		if err := f(x); err != nil {
 19905  			return err
 19906  		}
 19907  		if x.NextPageToken == "" {
 19908  			return nil
 19909  		}
 19910  		c.PageToken(x.NextPageToken)
 19911  	}
 19912  }
 19913  
 19914  type OrganizationsLocationsMuteConfigsPatchCall struct {
 19915  	s                                     *Service
 19916  	name                                  string
 19917  	googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig
 19918  	urlParams_                            gensupport.URLParams
 19919  	ctx_                                  context.Context
 19920  	header_                               http.Header
 19921  }
 19922  
 19923  // Patch: Updates a mute config.
 19924  //
 19925  //   - name: This field will be ignored if provided on config creation. Format
 19926  //     "organizations/{organization}/muteConfigs/{mute_config}"
 19927  //     "folders/{folder}/muteConfigs/{mute_config}"
 19928  //     "projects/{project}/muteConfigs/{mute_config}"
 19929  //     "organizations/{organization}/locations/global/muteConfigs/{mute_config}"
 19930  //     "folders/{folder}/locations/global/muteConfigs/{mute_config}"
 19931  //     "projects/{project}/locations/global/muteConfigs/{mute_config}".
 19932  func (r *OrganizationsLocationsMuteConfigsService) Patch(name string, googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig) *OrganizationsLocationsMuteConfigsPatchCall {
 19933  	c := &OrganizationsLocationsMuteConfigsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19934  	c.name = name
 19935  	c.googlecloudsecuritycenterv1muteconfig = googlecloudsecuritycenterv1muteconfig
 19936  	return c
 19937  }
 19938  
 19939  // UpdateMask sets the optional parameter "updateMask": The list of fields to
 19940  // be updated. If empty all mutable fields will be updated.
 19941  func (c *OrganizationsLocationsMuteConfigsPatchCall) UpdateMask(updateMask string) *OrganizationsLocationsMuteConfigsPatchCall {
 19942  	c.urlParams_.Set("updateMask", updateMask)
 19943  	return c
 19944  }
 19945  
 19946  // Fields allows partial responses to be retrieved. See
 19947  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19948  // details.
 19949  func (c *OrganizationsLocationsMuteConfigsPatchCall) Fields(s ...googleapi.Field) *OrganizationsLocationsMuteConfigsPatchCall {
 19950  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19951  	return c
 19952  }
 19953  
 19954  // Context sets the context to be used in this call's Do method.
 19955  func (c *OrganizationsLocationsMuteConfigsPatchCall) Context(ctx context.Context) *OrganizationsLocationsMuteConfigsPatchCall {
 19956  	c.ctx_ = ctx
 19957  	return c
 19958  }
 19959  
 19960  // Header returns a http.Header that can be modified by the caller to add
 19961  // headers to the request.
 19962  func (c *OrganizationsLocationsMuteConfigsPatchCall) Header() http.Header {
 19963  	if c.header_ == nil {
 19964  		c.header_ = make(http.Header)
 19965  	}
 19966  	return c.header_
 19967  }
 19968  
 19969  func (c *OrganizationsLocationsMuteConfigsPatchCall) doRequest(alt string) (*http.Response, error) {
 19970  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 19971  	var body io.Reader = nil
 19972  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1muteconfig)
 19973  	if err != nil {
 19974  		return nil, err
 19975  	}
 19976  	c.urlParams_.Set("alt", alt)
 19977  	c.urlParams_.Set("prettyPrint", "false")
 19978  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 19979  	urls += "?" + c.urlParams_.Encode()
 19980  	req, err := http.NewRequest("PATCH", urls, body)
 19981  	if err != nil {
 19982  		return nil, err
 19983  	}
 19984  	req.Header = reqHeaders
 19985  	googleapi.Expand(req.URL, map[string]string{
 19986  		"name": c.name,
 19987  	})
 19988  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19989  }
 19990  
 19991  // Do executes the "securitycenter.organizations.locations.muteConfigs.patch" call.
 19992  // Any non-2xx status code is an error. Response headers are in either
 19993  // *GoogleCloudSecuritycenterV1MuteConfig.ServerResponse.Header or (if a
 19994  // response was returned at all) in error.(*googleapi.Error).Header. Use
 19995  // googleapi.IsNotModified to check whether the returned error was because
 19996  // http.StatusNotModified was returned.
 19997  func (c *OrganizationsLocationsMuteConfigsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1MuteConfig, error) {
 19998  	gensupport.SetOptions(c.urlParams_, opts...)
 19999  	res, err := c.doRequest("json")
 20000  	if res != nil && res.StatusCode == http.StatusNotModified {
 20001  		if res.Body != nil {
 20002  			res.Body.Close()
 20003  		}
 20004  		return nil, gensupport.WrapError(&googleapi.Error{
 20005  			Code:   res.StatusCode,
 20006  			Header: res.Header,
 20007  		})
 20008  	}
 20009  	if err != nil {
 20010  		return nil, err
 20011  	}
 20012  	defer googleapi.CloseBody(res)
 20013  	if err := googleapi.CheckResponse(res); err != nil {
 20014  		return nil, gensupport.WrapError(err)
 20015  	}
 20016  	ret := &GoogleCloudSecuritycenterV1MuteConfig{
 20017  		ServerResponse: googleapi.ServerResponse{
 20018  			Header:         res.Header,
 20019  			HTTPStatusCode: res.StatusCode,
 20020  		},
 20021  	}
 20022  	target := &ret
 20023  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20024  		return nil, err
 20025  	}
 20026  	return ret, nil
 20027  }
 20028  
 20029  type OrganizationsMuteConfigsCreateCall struct {
 20030  	s                                     *Service
 20031  	parent                                string
 20032  	googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig
 20033  	urlParams_                            gensupport.URLParams
 20034  	ctx_                                  context.Context
 20035  	header_                               http.Header
 20036  }
 20037  
 20038  // Create: Creates a mute config.
 20039  //
 20040  //   - parent: Resource name of the new mute configs's parent. Its format is
 20041  //     "organizations/[organization_id]", "folders/[folder_id]", or
 20042  //     "projects/[project_id]".
 20043  func (r *OrganizationsMuteConfigsService) Create(parent string, googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig) *OrganizationsMuteConfigsCreateCall {
 20044  	c := &OrganizationsMuteConfigsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20045  	c.parent = parent
 20046  	c.googlecloudsecuritycenterv1muteconfig = googlecloudsecuritycenterv1muteconfig
 20047  	return c
 20048  }
 20049  
 20050  // MuteConfigId sets the optional parameter "muteConfigId": Required. Unique
 20051  // identifier provided by the client within the parent scope. It must consist
 20052  // of only lowercase letters, numbers, and hyphens, must start with a letter,
 20053  // must end with either a letter or a number, and must be 63 characters or
 20054  // less.
 20055  func (c *OrganizationsMuteConfigsCreateCall) MuteConfigId(muteConfigId string) *OrganizationsMuteConfigsCreateCall {
 20056  	c.urlParams_.Set("muteConfigId", muteConfigId)
 20057  	return c
 20058  }
 20059  
 20060  // Fields allows partial responses to be retrieved. See
 20061  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20062  // details.
 20063  func (c *OrganizationsMuteConfigsCreateCall) Fields(s ...googleapi.Field) *OrganizationsMuteConfigsCreateCall {
 20064  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20065  	return c
 20066  }
 20067  
 20068  // Context sets the context to be used in this call's Do method.
 20069  func (c *OrganizationsMuteConfigsCreateCall) Context(ctx context.Context) *OrganizationsMuteConfigsCreateCall {
 20070  	c.ctx_ = ctx
 20071  	return c
 20072  }
 20073  
 20074  // Header returns a http.Header that can be modified by the caller to add
 20075  // headers to the request.
 20076  func (c *OrganizationsMuteConfigsCreateCall) Header() http.Header {
 20077  	if c.header_ == nil {
 20078  		c.header_ = make(http.Header)
 20079  	}
 20080  	return c.header_
 20081  }
 20082  
 20083  func (c *OrganizationsMuteConfigsCreateCall) doRequest(alt string) (*http.Response, error) {
 20084  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 20085  	var body io.Reader = nil
 20086  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1muteconfig)
 20087  	if err != nil {
 20088  		return nil, err
 20089  	}
 20090  	c.urlParams_.Set("alt", alt)
 20091  	c.urlParams_.Set("prettyPrint", "false")
 20092  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/muteConfigs")
 20093  	urls += "?" + c.urlParams_.Encode()
 20094  	req, err := http.NewRequest("POST", urls, body)
 20095  	if err != nil {
 20096  		return nil, err
 20097  	}
 20098  	req.Header = reqHeaders
 20099  	googleapi.Expand(req.URL, map[string]string{
 20100  		"parent": c.parent,
 20101  	})
 20102  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20103  }
 20104  
 20105  // Do executes the "securitycenter.organizations.muteConfigs.create" call.
 20106  // Any non-2xx status code is an error. Response headers are in either
 20107  // *GoogleCloudSecuritycenterV1MuteConfig.ServerResponse.Header or (if a
 20108  // response was returned at all) in error.(*googleapi.Error).Header. Use
 20109  // googleapi.IsNotModified to check whether the returned error was because
 20110  // http.StatusNotModified was returned.
 20111  func (c *OrganizationsMuteConfigsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1MuteConfig, error) {
 20112  	gensupport.SetOptions(c.urlParams_, opts...)
 20113  	res, err := c.doRequest("json")
 20114  	if res != nil && res.StatusCode == http.StatusNotModified {
 20115  		if res.Body != nil {
 20116  			res.Body.Close()
 20117  		}
 20118  		return nil, gensupport.WrapError(&googleapi.Error{
 20119  			Code:   res.StatusCode,
 20120  			Header: res.Header,
 20121  		})
 20122  	}
 20123  	if err != nil {
 20124  		return nil, err
 20125  	}
 20126  	defer googleapi.CloseBody(res)
 20127  	if err := googleapi.CheckResponse(res); err != nil {
 20128  		return nil, gensupport.WrapError(err)
 20129  	}
 20130  	ret := &GoogleCloudSecuritycenterV1MuteConfig{
 20131  		ServerResponse: googleapi.ServerResponse{
 20132  			Header:         res.Header,
 20133  			HTTPStatusCode: res.StatusCode,
 20134  		},
 20135  	}
 20136  	target := &ret
 20137  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20138  		return nil, err
 20139  	}
 20140  	return ret, nil
 20141  }
 20142  
 20143  type OrganizationsMuteConfigsDeleteCall struct {
 20144  	s          *Service
 20145  	name       string
 20146  	urlParams_ gensupport.URLParams
 20147  	ctx_       context.Context
 20148  	header_    http.Header
 20149  }
 20150  
 20151  // Delete: Deletes an existing mute config.
 20152  //
 20153  //   - name: Name of the mute config to delete. Its format is
 20154  //     organizations/{organization}/muteConfigs/{config_id},
 20155  //     folders/{folder}/muteConfigs/{config_id},
 20156  //     projects/{project}/muteConfigs/{config_id},
 20157  //     organizations/{organization}/locations/global/muteConfigs/{config_id},
 20158  //     folders/{folder}/locations/global/muteConfigs/{config_id}, or
 20159  //     projects/{project}/locations/global/muteConfigs/{config_id}.
 20160  func (r *OrganizationsMuteConfigsService) Delete(name string) *OrganizationsMuteConfigsDeleteCall {
 20161  	c := &OrganizationsMuteConfigsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20162  	c.name = name
 20163  	return c
 20164  }
 20165  
 20166  // Fields allows partial responses to be retrieved. See
 20167  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20168  // details.
 20169  func (c *OrganizationsMuteConfigsDeleteCall) Fields(s ...googleapi.Field) *OrganizationsMuteConfigsDeleteCall {
 20170  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20171  	return c
 20172  }
 20173  
 20174  // Context sets the context to be used in this call's Do method.
 20175  func (c *OrganizationsMuteConfigsDeleteCall) Context(ctx context.Context) *OrganizationsMuteConfigsDeleteCall {
 20176  	c.ctx_ = ctx
 20177  	return c
 20178  }
 20179  
 20180  // Header returns a http.Header that can be modified by the caller to add
 20181  // headers to the request.
 20182  func (c *OrganizationsMuteConfigsDeleteCall) Header() http.Header {
 20183  	if c.header_ == nil {
 20184  		c.header_ = make(http.Header)
 20185  	}
 20186  	return c.header_
 20187  }
 20188  
 20189  func (c *OrganizationsMuteConfigsDeleteCall) doRequest(alt string) (*http.Response, error) {
 20190  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 20191  	var body io.Reader = nil
 20192  	c.urlParams_.Set("alt", alt)
 20193  	c.urlParams_.Set("prettyPrint", "false")
 20194  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 20195  	urls += "?" + c.urlParams_.Encode()
 20196  	req, err := http.NewRequest("DELETE", urls, body)
 20197  	if err != nil {
 20198  		return nil, err
 20199  	}
 20200  	req.Header = reqHeaders
 20201  	googleapi.Expand(req.URL, map[string]string{
 20202  		"name": c.name,
 20203  	})
 20204  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20205  }
 20206  
 20207  // Do executes the "securitycenter.organizations.muteConfigs.delete" call.
 20208  // Any non-2xx status code is an error. Response headers are in either
 20209  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 20210  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 20211  // whether the returned error was because http.StatusNotModified was returned.
 20212  func (c *OrganizationsMuteConfigsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 20213  	gensupport.SetOptions(c.urlParams_, opts...)
 20214  	res, err := c.doRequest("json")
 20215  	if res != nil && res.StatusCode == http.StatusNotModified {
 20216  		if res.Body != nil {
 20217  			res.Body.Close()
 20218  		}
 20219  		return nil, gensupport.WrapError(&googleapi.Error{
 20220  			Code:   res.StatusCode,
 20221  			Header: res.Header,
 20222  		})
 20223  	}
 20224  	if err != nil {
 20225  		return nil, err
 20226  	}
 20227  	defer googleapi.CloseBody(res)
 20228  	if err := googleapi.CheckResponse(res); err != nil {
 20229  		return nil, gensupport.WrapError(err)
 20230  	}
 20231  	ret := &Empty{
 20232  		ServerResponse: googleapi.ServerResponse{
 20233  			Header:         res.Header,
 20234  			HTTPStatusCode: res.StatusCode,
 20235  		},
 20236  	}
 20237  	target := &ret
 20238  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20239  		return nil, err
 20240  	}
 20241  	return ret, nil
 20242  }
 20243  
 20244  type OrganizationsMuteConfigsGetCall struct {
 20245  	s            *Service
 20246  	name         string
 20247  	urlParams_   gensupport.URLParams
 20248  	ifNoneMatch_ string
 20249  	ctx_         context.Context
 20250  	header_      http.Header
 20251  }
 20252  
 20253  // Get: Gets a mute config.
 20254  //
 20255  //   - name: Name of the mute config to retrieve. Its format is
 20256  //     organizations/{organization}/muteConfigs/{config_id},
 20257  //     folders/{folder}/muteConfigs/{config_id},
 20258  //     projects/{project}/muteConfigs/{config_id},
 20259  //     organizations/{organization}/locations/global/muteConfigs/{config_id},
 20260  //     folders/{folder}/locations/global/muteConfigs/{config_id}, or
 20261  //     projects/{project}/locations/global/muteConfigs/{config_id}.
 20262  func (r *OrganizationsMuteConfigsService) Get(name string) *OrganizationsMuteConfigsGetCall {
 20263  	c := &OrganizationsMuteConfigsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20264  	c.name = name
 20265  	return c
 20266  }
 20267  
 20268  // Fields allows partial responses to be retrieved. See
 20269  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20270  // details.
 20271  func (c *OrganizationsMuteConfigsGetCall) Fields(s ...googleapi.Field) *OrganizationsMuteConfigsGetCall {
 20272  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20273  	return c
 20274  }
 20275  
 20276  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 20277  // object's ETag matches the given value. This is useful for getting updates
 20278  // only after the object has changed since the last request.
 20279  func (c *OrganizationsMuteConfigsGetCall) IfNoneMatch(entityTag string) *OrganizationsMuteConfigsGetCall {
 20280  	c.ifNoneMatch_ = entityTag
 20281  	return c
 20282  }
 20283  
 20284  // Context sets the context to be used in this call's Do method.
 20285  func (c *OrganizationsMuteConfigsGetCall) Context(ctx context.Context) *OrganizationsMuteConfigsGetCall {
 20286  	c.ctx_ = ctx
 20287  	return c
 20288  }
 20289  
 20290  // Header returns a http.Header that can be modified by the caller to add
 20291  // headers to the request.
 20292  func (c *OrganizationsMuteConfigsGetCall) Header() http.Header {
 20293  	if c.header_ == nil {
 20294  		c.header_ = make(http.Header)
 20295  	}
 20296  	return c.header_
 20297  }
 20298  
 20299  func (c *OrganizationsMuteConfigsGetCall) doRequest(alt string) (*http.Response, error) {
 20300  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 20301  	if c.ifNoneMatch_ != "" {
 20302  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 20303  	}
 20304  	var body io.Reader = nil
 20305  	c.urlParams_.Set("alt", alt)
 20306  	c.urlParams_.Set("prettyPrint", "false")
 20307  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 20308  	urls += "?" + c.urlParams_.Encode()
 20309  	req, err := http.NewRequest("GET", urls, body)
 20310  	if err != nil {
 20311  		return nil, err
 20312  	}
 20313  	req.Header = reqHeaders
 20314  	googleapi.Expand(req.URL, map[string]string{
 20315  		"name": c.name,
 20316  	})
 20317  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20318  }
 20319  
 20320  // Do executes the "securitycenter.organizations.muteConfigs.get" call.
 20321  // Any non-2xx status code is an error. Response headers are in either
 20322  // *GoogleCloudSecuritycenterV1MuteConfig.ServerResponse.Header or (if a
 20323  // response was returned at all) in error.(*googleapi.Error).Header. Use
 20324  // googleapi.IsNotModified to check whether the returned error was because
 20325  // http.StatusNotModified was returned.
 20326  func (c *OrganizationsMuteConfigsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1MuteConfig, error) {
 20327  	gensupport.SetOptions(c.urlParams_, opts...)
 20328  	res, err := c.doRequest("json")
 20329  	if res != nil && res.StatusCode == http.StatusNotModified {
 20330  		if res.Body != nil {
 20331  			res.Body.Close()
 20332  		}
 20333  		return nil, gensupport.WrapError(&googleapi.Error{
 20334  			Code:   res.StatusCode,
 20335  			Header: res.Header,
 20336  		})
 20337  	}
 20338  	if err != nil {
 20339  		return nil, err
 20340  	}
 20341  	defer googleapi.CloseBody(res)
 20342  	if err := googleapi.CheckResponse(res); err != nil {
 20343  		return nil, gensupport.WrapError(err)
 20344  	}
 20345  	ret := &GoogleCloudSecuritycenterV1MuteConfig{
 20346  		ServerResponse: googleapi.ServerResponse{
 20347  			Header:         res.Header,
 20348  			HTTPStatusCode: res.StatusCode,
 20349  		},
 20350  	}
 20351  	target := &ret
 20352  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20353  		return nil, err
 20354  	}
 20355  	return ret, nil
 20356  }
 20357  
 20358  type OrganizationsMuteConfigsListCall struct {
 20359  	s            *Service
 20360  	parent       string
 20361  	urlParams_   gensupport.URLParams
 20362  	ifNoneMatch_ string
 20363  	ctx_         context.Context
 20364  	header_      http.Header
 20365  }
 20366  
 20367  // List: Lists mute configs.
 20368  //
 20369  //   - parent: The parent, which owns the collection of mute configs. Its format
 20370  //     is "organizations/[organization_id]", "folders/[folder_id]",
 20371  //     "projects/[project_id]".
 20372  func (r *OrganizationsMuteConfigsService) List(parent string) *OrganizationsMuteConfigsListCall {
 20373  	c := &OrganizationsMuteConfigsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20374  	c.parent = parent
 20375  	return c
 20376  }
 20377  
 20378  // PageSize sets the optional parameter "pageSize": The maximum number of
 20379  // configs to return. The service may return fewer than this value. If
 20380  // unspecified, at most 10 configs will be returned. The maximum value is 1000;
 20381  // values above 1000 will be coerced to 1000.
 20382  func (c *OrganizationsMuteConfigsListCall) PageSize(pageSize int64) *OrganizationsMuteConfigsListCall {
 20383  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 20384  	return c
 20385  }
 20386  
 20387  // PageToken sets the optional parameter "pageToken": A page token, received
 20388  // from a previous `ListMuteConfigs` call. Provide this to retrieve the
 20389  // subsequent page. When paginating, all other parameters provided to
 20390  // `ListMuteConfigs` must match the call that provided the page token.
 20391  func (c *OrganizationsMuteConfigsListCall) PageToken(pageToken string) *OrganizationsMuteConfigsListCall {
 20392  	c.urlParams_.Set("pageToken", pageToken)
 20393  	return c
 20394  }
 20395  
 20396  // Fields allows partial responses to be retrieved. See
 20397  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20398  // details.
 20399  func (c *OrganizationsMuteConfigsListCall) Fields(s ...googleapi.Field) *OrganizationsMuteConfigsListCall {
 20400  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20401  	return c
 20402  }
 20403  
 20404  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 20405  // object's ETag matches the given value. This is useful for getting updates
 20406  // only after the object has changed since the last request.
 20407  func (c *OrganizationsMuteConfigsListCall) IfNoneMatch(entityTag string) *OrganizationsMuteConfigsListCall {
 20408  	c.ifNoneMatch_ = entityTag
 20409  	return c
 20410  }
 20411  
 20412  // Context sets the context to be used in this call's Do method.
 20413  func (c *OrganizationsMuteConfigsListCall) Context(ctx context.Context) *OrganizationsMuteConfigsListCall {
 20414  	c.ctx_ = ctx
 20415  	return c
 20416  }
 20417  
 20418  // Header returns a http.Header that can be modified by the caller to add
 20419  // headers to the request.
 20420  func (c *OrganizationsMuteConfigsListCall) Header() http.Header {
 20421  	if c.header_ == nil {
 20422  		c.header_ = make(http.Header)
 20423  	}
 20424  	return c.header_
 20425  }
 20426  
 20427  func (c *OrganizationsMuteConfigsListCall) doRequest(alt string) (*http.Response, error) {
 20428  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 20429  	if c.ifNoneMatch_ != "" {
 20430  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 20431  	}
 20432  	var body io.Reader = nil
 20433  	c.urlParams_.Set("alt", alt)
 20434  	c.urlParams_.Set("prettyPrint", "false")
 20435  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/muteConfigs")
 20436  	urls += "?" + c.urlParams_.Encode()
 20437  	req, err := http.NewRequest("GET", urls, body)
 20438  	if err != nil {
 20439  		return nil, err
 20440  	}
 20441  	req.Header = reqHeaders
 20442  	googleapi.Expand(req.URL, map[string]string{
 20443  		"parent": c.parent,
 20444  	})
 20445  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20446  }
 20447  
 20448  // Do executes the "securitycenter.organizations.muteConfigs.list" call.
 20449  // Any non-2xx status code is an error. Response headers are in either
 20450  // *ListMuteConfigsResponse.ServerResponse.Header or (if a response was
 20451  // returned at all) in error.(*googleapi.Error).Header. Use
 20452  // googleapi.IsNotModified to check whether the returned error was because
 20453  // http.StatusNotModified was returned.
 20454  func (c *OrganizationsMuteConfigsListCall) Do(opts ...googleapi.CallOption) (*ListMuteConfigsResponse, error) {
 20455  	gensupport.SetOptions(c.urlParams_, opts...)
 20456  	res, err := c.doRequest("json")
 20457  	if res != nil && res.StatusCode == http.StatusNotModified {
 20458  		if res.Body != nil {
 20459  			res.Body.Close()
 20460  		}
 20461  		return nil, gensupport.WrapError(&googleapi.Error{
 20462  			Code:   res.StatusCode,
 20463  			Header: res.Header,
 20464  		})
 20465  	}
 20466  	if err != nil {
 20467  		return nil, err
 20468  	}
 20469  	defer googleapi.CloseBody(res)
 20470  	if err := googleapi.CheckResponse(res); err != nil {
 20471  		return nil, gensupport.WrapError(err)
 20472  	}
 20473  	ret := &ListMuteConfigsResponse{
 20474  		ServerResponse: googleapi.ServerResponse{
 20475  			Header:         res.Header,
 20476  			HTTPStatusCode: res.StatusCode,
 20477  		},
 20478  	}
 20479  	target := &ret
 20480  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20481  		return nil, err
 20482  	}
 20483  	return ret, nil
 20484  }
 20485  
 20486  // Pages invokes f for each page of results.
 20487  // A non-nil error returned from f will halt the iteration.
 20488  // The provided context supersedes any context provided to the Context method.
 20489  func (c *OrganizationsMuteConfigsListCall) Pages(ctx context.Context, f func(*ListMuteConfigsResponse) error) error {
 20490  	c.ctx_ = ctx
 20491  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 20492  	for {
 20493  		x, err := c.Do()
 20494  		if err != nil {
 20495  			return err
 20496  		}
 20497  		if err := f(x); err != nil {
 20498  			return err
 20499  		}
 20500  		if x.NextPageToken == "" {
 20501  			return nil
 20502  		}
 20503  		c.PageToken(x.NextPageToken)
 20504  	}
 20505  }
 20506  
 20507  type OrganizationsMuteConfigsPatchCall struct {
 20508  	s                                     *Service
 20509  	name                                  string
 20510  	googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig
 20511  	urlParams_                            gensupport.URLParams
 20512  	ctx_                                  context.Context
 20513  	header_                               http.Header
 20514  }
 20515  
 20516  // Patch: Updates a mute config.
 20517  //
 20518  //   - name: This field will be ignored if provided on config creation. Format
 20519  //     "organizations/{organization}/muteConfigs/{mute_config}"
 20520  //     "folders/{folder}/muteConfigs/{mute_config}"
 20521  //     "projects/{project}/muteConfigs/{mute_config}"
 20522  //     "organizations/{organization}/locations/global/muteConfigs/{mute_config}"
 20523  //     "folders/{folder}/locations/global/muteConfigs/{mute_config}"
 20524  //     "projects/{project}/locations/global/muteConfigs/{mute_config}".
 20525  func (r *OrganizationsMuteConfigsService) Patch(name string, googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig) *OrganizationsMuteConfigsPatchCall {
 20526  	c := &OrganizationsMuteConfigsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20527  	c.name = name
 20528  	c.googlecloudsecuritycenterv1muteconfig = googlecloudsecuritycenterv1muteconfig
 20529  	return c
 20530  }
 20531  
 20532  // UpdateMask sets the optional parameter "updateMask": The list of fields to
 20533  // be updated. If empty all mutable fields will be updated.
 20534  func (c *OrganizationsMuteConfigsPatchCall) UpdateMask(updateMask string) *OrganizationsMuteConfigsPatchCall {
 20535  	c.urlParams_.Set("updateMask", updateMask)
 20536  	return c
 20537  }
 20538  
 20539  // Fields allows partial responses to be retrieved. See
 20540  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20541  // details.
 20542  func (c *OrganizationsMuteConfigsPatchCall) Fields(s ...googleapi.Field) *OrganizationsMuteConfigsPatchCall {
 20543  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20544  	return c
 20545  }
 20546  
 20547  // Context sets the context to be used in this call's Do method.
 20548  func (c *OrganizationsMuteConfigsPatchCall) Context(ctx context.Context) *OrganizationsMuteConfigsPatchCall {
 20549  	c.ctx_ = ctx
 20550  	return c
 20551  }
 20552  
 20553  // Header returns a http.Header that can be modified by the caller to add
 20554  // headers to the request.
 20555  func (c *OrganizationsMuteConfigsPatchCall) Header() http.Header {
 20556  	if c.header_ == nil {
 20557  		c.header_ = make(http.Header)
 20558  	}
 20559  	return c.header_
 20560  }
 20561  
 20562  func (c *OrganizationsMuteConfigsPatchCall) doRequest(alt string) (*http.Response, error) {
 20563  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 20564  	var body io.Reader = nil
 20565  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1muteconfig)
 20566  	if err != nil {
 20567  		return nil, err
 20568  	}
 20569  	c.urlParams_.Set("alt", alt)
 20570  	c.urlParams_.Set("prettyPrint", "false")
 20571  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 20572  	urls += "?" + c.urlParams_.Encode()
 20573  	req, err := http.NewRequest("PATCH", urls, body)
 20574  	if err != nil {
 20575  		return nil, err
 20576  	}
 20577  	req.Header = reqHeaders
 20578  	googleapi.Expand(req.URL, map[string]string{
 20579  		"name": c.name,
 20580  	})
 20581  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20582  }
 20583  
 20584  // Do executes the "securitycenter.organizations.muteConfigs.patch" call.
 20585  // Any non-2xx status code is an error. Response headers are in either
 20586  // *GoogleCloudSecuritycenterV1MuteConfig.ServerResponse.Header or (if a
 20587  // response was returned at all) in error.(*googleapi.Error).Header. Use
 20588  // googleapi.IsNotModified to check whether the returned error was because
 20589  // http.StatusNotModified was returned.
 20590  func (c *OrganizationsMuteConfigsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1MuteConfig, error) {
 20591  	gensupport.SetOptions(c.urlParams_, opts...)
 20592  	res, err := c.doRequest("json")
 20593  	if res != nil && res.StatusCode == http.StatusNotModified {
 20594  		if res.Body != nil {
 20595  			res.Body.Close()
 20596  		}
 20597  		return nil, gensupport.WrapError(&googleapi.Error{
 20598  			Code:   res.StatusCode,
 20599  			Header: res.Header,
 20600  		})
 20601  	}
 20602  	if err != nil {
 20603  		return nil, err
 20604  	}
 20605  	defer googleapi.CloseBody(res)
 20606  	if err := googleapi.CheckResponse(res); err != nil {
 20607  		return nil, gensupport.WrapError(err)
 20608  	}
 20609  	ret := &GoogleCloudSecuritycenterV1MuteConfig{
 20610  		ServerResponse: googleapi.ServerResponse{
 20611  			Header:         res.Header,
 20612  			HTTPStatusCode: res.StatusCode,
 20613  		},
 20614  	}
 20615  	target := &ret
 20616  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20617  		return nil, err
 20618  	}
 20619  	return ret, nil
 20620  }
 20621  
 20622  type OrganizationsNotificationConfigsCreateCall struct {
 20623  	s                  *Service
 20624  	parent             string
 20625  	notificationconfig *NotificationConfig
 20626  	urlParams_         gensupport.URLParams
 20627  	ctx_               context.Context
 20628  	header_            http.Header
 20629  }
 20630  
 20631  // Create: Creates a notification config.
 20632  //
 20633  //   - parent: Resource name of the new notification config's parent. Its format
 20634  //     is "organizations/[organization_id]", "folders/[folder_id]", or
 20635  //     "projects/[project_id]".
 20636  func (r *OrganizationsNotificationConfigsService) Create(parent string, notificationconfig *NotificationConfig) *OrganizationsNotificationConfigsCreateCall {
 20637  	c := &OrganizationsNotificationConfigsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20638  	c.parent = parent
 20639  	c.notificationconfig = notificationconfig
 20640  	return c
 20641  }
 20642  
 20643  // ConfigId sets the optional parameter "configId": Required. Unique identifier
 20644  // provided by the client within the parent scope. It must be between 1 and 128
 20645  // characters and contain alphanumeric characters, underscores, or hyphens
 20646  // only.
 20647  func (c *OrganizationsNotificationConfigsCreateCall) ConfigId(configId string) *OrganizationsNotificationConfigsCreateCall {
 20648  	c.urlParams_.Set("configId", configId)
 20649  	return c
 20650  }
 20651  
 20652  // Fields allows partial responses to be retrieved. See
 20653  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20654  // details.
 20655  func (c *OrganizationsNotificationConfigsCreateCall) Fields(s ...googleapi.Field) *OrganizationsNotificationConfigsCreateCall {
 20656  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20657  	return c
 20658  }
 20659  
 20660  // Context sets the context to be used in this call's Do method.
 20661  func (c *OrganizationsNotificationConfigsCreateCall) Context(ctx context.Context) *OrganizationsNotificationConfigsCreateCall {
 20662  	c.ctx_ = ctx
 20663  	return c
 20664  }
 20665  
 20666  // Header returns a http.Header that can be modified by the caller to add
 20667  // headers to the request.
 20668  func (c *OrganizationsNotificationConfigsCreateCall) Header() http.Header {
 20669  	if c.header_ == nil {
 20670  		c.header_ = make(http.Header)
 20671  	}
 20672  	return c.header_
 20673  }
 20674  
 20675  func (c *OrganizationsNotificationConfigsCreateCall) doRequest(alt string) (*http.Response, error) {
 20676  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 20677  	var body io.Reader = nil
 20678  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.notificationconfig)
 20679  	if err != nil {
 20680  		return nil, err
 20681  	}
 20682  	c.urlParams_.Set("alt", alt)
 20683  	c.urlParams_.Set("prettyPrint", "false")
 20684  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/notificationConfigs")
 20685  	urls += "?" + c.urlParams_.Encode()
 20686  	req, err := http.NewRequest("POST", urls, body)
 20687  	if err != nil {
 20688  		return nil, err
 20689  	}
 20690  	req.Header = reqHeaders
 20691  	googleapi.Expand(req.URL, map[string]string{
 20692  		"parent": c.parent,
 20693  	})
 20694  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20695  }
 20696  
 20697  // Do executes the "securitycenter.organizations.notificationConfigs.create" call.
 20698  // Any non-2xx status code is an error. Response headers are in either
 20699  // *NotificationConfig.ServerResponse.Header or (if a response was returned at
 20700  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 20701  // check whether the returned error was because http.StatusNotModified was
 20702  // returned.
 20703  func (c *OrganizationsNotificationConfigsCreateCall) Do(opts ...googleapi.CallOption) (*NotificationConfig, error) {
 20704  	gensupport.SetOptions(c.urlParams_, opts...)
 20705  	res, err := c.doRequest("json")
 20706  	if res != nil && res.StatusCode == http.StatusNotModified {
 20707  		if res.Body != nil {
 20708  			res.Body.Close()
 20709  		}
 20710  		return nil, gensupport.WrapError(&googleapi.Error{
 20711  			Code:   res.StatusCode,
 20712  			Header: res.Header,
 20713  		})
 20714  	}
 20715  	if err != nil {
 20716  		return nil, err
 20717  	}
 20718  	defer googleapi.CloseBody(res)
 20719  	if err := googleapi.CheckResponse(res); err != nil {
 20720  		return nil, gensupport.WrapError(err)
 20721  	}
 20722  	ret := &NotificationConfig{
 20723  		ServerResponse: googleapi.ServerResponse{
 20724  			Header:         res.Header,
 20725  			HTTPStatusCode: res.StatusCode,
 20726  		},
 20727  	}
 20728  	target := &ret
 20729  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20730  		return nil, err
 20731  	}
 20732  	return ret, nil
 20733  }
 20734  
 20735  type OrganizationsNotificationConfigsDeleteCall struct {
 20736  	s          *Service
 20737  	name       string
 20738  	urlParams_ gensupport.URLParams
 20739  	ctx_       context.Context
 20740  	header_    http.Header
 20741  }
 20742  
 20743  // Delete: Deletes a notification config.
 20744  //
 20745  //   - name: Name of the notification config to delete. Its format is
 20746  //     "organizations/[organization_id]/notificationConfigs/[config_id]",
 20747  //     "folders/[folder_id]/notificationConfigs/[config_id]", or
 20748  //     "projects/[project_id]/notificationConfigs/[config_id]".
 20749  func (r *OrganizationsNotificationConfigsService) Delete(name string) *OrganizationsNotificationConfigsDeleteCall {
 20750  	c := &OrganizationsNotificationConfigsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20751  	c.name = name
 20752  	return c
 20753  }
 20754  
 20755  // Fields allows partial responses to be retrieved. See
 20756  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20757  // details.
 20758  func (c *OrganizationsNotificationConfigsDeleteCall) Fields(s ...googleapi.Field) *OrganizationsNotificationConfigsDeleteCall {
 20759  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20760  	return c
 20761  }
 20762  
 20763  // Context sets the context to be used in this call's Do method.
 20764  func (c *OrganizationsNotificationConfigsDeleteCall) Context(ctx context.Context) *OrganizationsNotificationConfigsDeleteCall {
 20765  	c.ctx_ = ctx
 20766  	return c
 20767  }
 20768  
 20769  // Header returns a http.Header that can be modified by the caller to add
 20770  // headers to the request.
 20771  func (c *OrganizationsNotificationConfigsDeleteCall) Header() http.Header {
 20772  	if c.header_ == nil {
 20773  		c.header_ = make(http.Header)
 20774  	}
 20775  	return c.header_
 20776  }
 20777  
 20778  func (c *OrganizationsNotificationConfigsDeleteCall) doRequest(alt string) (*http.Response, error) {
 20779  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 20780  	var body io.Reader = nil
 20781  	c.urlParams_.Set("alt", alt)
 20782  	c.urlParams_.Set("prettyPrint", "false")
 20783  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 20784  	urls += "?" + c.urlParams_.Encode()
 20785  	req, err := http.NewRequest("DELETE", urls, body)
 20786  	if err != nil {
 20787  		return nil, err
 20788  	}
 20789  	req.Header = reqHeaders
 20790  	googleapi.Expand(req.URL, map[string]string{
 20791  		"name": c.name,
 20792  	})
 20793  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20794  }
 20795  
 20796  // Do executes the "securitycenter.organizations.notificationConfigs.delete" call.
 20797  // Any non-2xx status code is an error. Response headers are in either
 20798  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 20799  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 20800  // whether the returned error was because http.StatusNotModified was returned.
 20801  func (c *OrganizationsNotificationConfigsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 20802  	gensupport.SetOptions(c.urlParams_, opts...)
 20803  	res, err := c.doRequest("json")
 20804  	if res != nil && res.StatusCode == http.StatusNotModified {
 20805  		if res.Body != nil {
 20806  			res.Body.Close()
 20807  		}
 20808  		return nil, gensupport.WrapError(&googleapi.Error{
 20809  			Code:   res.StatusCode,
 20810  			Header: res.Header,
 20811  		})
 20812  	}
 20813  	if err != nil {
 20814  		return nil, err
 20815  	}
 20816  	defer googleapi.CloseBody(res)
 20817  	if err := googleapi.CheckResponse(res); err != nil {
 20818  		return nil, gensupport.WrapError(err)
 20819  	}
 20820  	ret := &Empty{
 20821  		ServerResponse: googleapi.ServerResponse{
 20822  			Header:         res.Header,
 20823  			HTTPStatusCode: res.StatusCode,
 20824  		},
 20825  	}
 20826  	target := &ret
 20827  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20828  		return nil, err
 20829  	}
 20830  	return ret, nil
 20831  }
 20832  
 20833  type OrganizationsNotificationConfigsGetCall struct {
 20834  	s            *Service
 20835  	name         string
 20836  	urlParams_   gensupport.URLParams
 20837  	ifNoneMatch_ string
 20838  	ctx_         context.Context
 20839  	header_      http.Header
 20840  }
 20841  
 20842  // Get: Gets a notification config.
 20843  //
 20844  //   - name: Name of the notification config to get. Its format is
 20845  //     "organizations/[organization_id]/notificationConfigs/[config_id]",
 20846  //     "folders/[folder_id]/notificationConfigs/[config_id]", or
 20847  //     "projects/[project_id]/notificationConfigs/[config_id]".
 20848  func (r *OrganizationsNotificationConfigsService) Get(name string) *OrganizationsNotificationConfigsGetCall {
 20849  	c := &OrganizationsNotificationConfigsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20850  	c.name = name
 20851  	return c
 20852  }
 20853  
 20854  // Fields allows partial responses to be retrieved. See
 20855  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20856  // details.
 20857  func (c *OrganizationsNotificationConfigsGetCall) Fields(s ...googleapi.Field) *OrganizationsNotificationConfigsGetCall {
 20858  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20859  	return c
 20860  }
 20861  
 20862  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 20863  // object's ETag matches the given value. This is useful for getting updates
 20864  // only after the object has changed since the last request.
 20865  func (c *OrganizationsNotificationConfigsGetCall) IfNoneMatch(entityTag string) *OrganizationsNotificationConfigsGetCall {
 20866  	c.ifNoneMatch_ = entityTag
 20867  	return c
 20868  }
 20869  
 20870  // Context sets the context to be used in this call's Do method.
 20871  func (c *OrganizationsNotificationConfigsGetCall) Context(ctx context.Context) *OrganizationsNotificationConfigsGetCall {
 20872  	c.ctx_ = ctx
 20873  	return c
 20874  }
 20875  
 20876  // Header returns a http.Header that can be modified by the caller to add
 20877  // headers to the request.
 20878  func (c *OrganizationsNotificationConfigsGetCall) Header() http.Header {
 20879  	if c.header_ == nil {
 20880  		c.header_ = make(http.Header)
 20881  	}
 20882  	return c.header_
 20883  }
 20884  
 20885  func (c *OrganizationsNotificationConfigsGetCall) doRequest(alt string) (*http.Response, error) {
 20886  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 20887  	if c.ifNoneMatch_ != "" {
 20888  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 20889  	}
 20890  	var body io.Reader = nil
 20891  	c.urlParams_.Set("alt", alt)
 20892  	c.urlParams_.Set("prettyPrint", "false")
 20893  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 20894  	urls += "?" + c.urlParams_.Encode()
 20895  	req, err := http.NewRequest("GET", urls, body)
 20896  	if err != nil {
 20897  		return nil, err
 20898  	}
 20899  	req.Header = reqHeaders
 20900  	googleapi.Expand(req.URL, map[string]string{
 20901  		"name": c.name,
 20902  	})
 20903  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20904  }
 20905  
 20906  // Do executes the "securitycenter.organizations.notificationConfigs.get" call.
 20907  // Any non-2xx status code is an error. Response headers are in either
 20908  // *NotificationConfig.ServerResponse.Header or (if a response was returned at
 20909  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 20910  // check whether the returned error was because http.StatusNotModified was
 20911  // returned.
 20912  func (c *OrganizationsNotificationConfigsGetCall) Do(opts ...googleapi.CallOption) (*NotificationConfig, error) {
 20913  	gensupport.SetOptions(c.urlParams_, opts...)
 20914  	res, err := c.doRequest("json")
 20915  	if res != nil && res.StatusCode == http.StatusNotModified {
 20916  		if res.Body != nil {
 20917  			res.Body.Close()
 20918  		}
 20919  		return nil, gensupport.WrapError(&googleapi.Error{
 20920  			Code:   res.StatusCode,
 20921  			Header: res.Header,
 20922  		})
 20923  	}
 20924  	if err != nil {
 20925  		return nil, err
 20926  	}
 20927  	defer googleapi.CloseBody(res)
 20928  	if err := googleapi.CheckResponse(res); err != nil {
 20929  		return nil, gensupport.WrapError(err)
 20930  	}
 20931  	ret := &NotificationConfig{
 20932  		ServerResponse: googleapi.ServerResponse{
 20933  			Header:         res.Header,
 20934  			HTTPStatusCode: res.StatusCode,
 20935  		},
 20936  	}
 20937  	target := &ret
 20938  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20939  		return nil, err
 20940  	}
 20941  	return ret, nil
 20942  }
 20943  
 20944  type OrganizationsNotificationConfigsListCall struct {
 20945  	s            *Service
 20946  	parent       string
 20947  	urlParams_   gensupport.URLParams
 20948  	ifNoneMatch_ string
 20949  	ctx_         context.Context
 20950  	header_      http.Header
 20951  }
 20952  
 20953  // List: Lists notification configs.
 20954  //
 20955  //   - parent: The name of the parent in which to list the notification
 20956  //     configurations. Its format is "organizations/[organization_id]",
 20957  //     "folders/[folder_id]", or "projects/[project_id]".
 20958  func (r *OrganizationsNotificationConfigsService) List(parent string) *OrganizationsNotificationConfigsListCall {
 20959  	c := &OrganizationsNotificationConfigsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20960  	c.parent = parent
 20961  	return c
 20962  }
 20963  
 20964  // PageSize sets the optional parameter "pageSize": The maximum number of
 20965  // results to return in a single response. Default is 10, minimum is 1, maximum
 20966  // is 1000.
 20967  func (c *OrganizationsNotificationConfigsListCall) PageSize(pageSize int64) *OrganizationsNotificationConfigsListCall {
 20968  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 20969  	return c
 20970  }
 20971  
 20972  // PageToken sets the optional parameter "pageToken": The value returned by the
 20973  // last `ListNotificationConfigsResponse`; indicates that this is a
 20974  // continuation of a prior `ListNotificationConfigs` call, and that the system
 20975  // should return the next page of data.
 20976  func (c *OrganizationsNotificationConfigsListCall) PageToken(pageToken string) *OrganizationsNotificationConfigsListCall {
 20977  	c.urlParams_.Set("pageToken", pageToken)
 20978  	return c
 20979  }
 20980  
 20981  // Fields allows partial responses to be retrieved. See
 20982  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20983  // details.
 20984  func (c *OrganizationsNotificationConfigsListCall) Fields(s ...googleapi.Field) *OrganizationsNotificationConfigsListCall {
 20985  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20986  	return c
 20987  }
 20988  
 20989  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 20990  // object's ETag matches the given value. This is useful for getting updates
 20991  // only after the object has changed since the last request.
 20992  func (c *OrganizationsNotificationConfigsListCall) IfNoneMatch(entityTag string) *OrganizationsNotificationConfigsListCall {
 20993  	c.ifNoneMatch_ = entityTag
 20994  	return c
 20995  }
 20996  
 20997  // Context sets the context to be used in this call's Do method.
 20998  func (c *OrganizationsNotificationConfigsListCall) Context(ctx context.Context) *OrganizationsNotificationConfigsListCall {
 20999  	c.ctx_ = ctx
 21000  	return c
 21001  }
 21002  
 21003  // Header returns a http.Header that can be modified by the caller to add
 21004  // headers to the request.
 21005  func (c *OrganizationsNotificationConfigsListCall) Header() http.Header {
 21006  	if c.header_ == nil {
 21007  		c.header_ = make(http.Header)
 21008  	}
 21009  	return c.header_
 21010  }
 21011  
 21012  func (c *OrganizationsNotificationConfigsListCall) doRequest(alt string) (*http.Response, error) {
 21013  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 21014  	if c.ifNoneMatch_ != "" {
 21015  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 21016  	}
 21017  	var body io.Reader = nil
 21018  	c.urlParams_.Set("alt", alt)
 21019  	c.urlParams_.Set("prettyPrint", "false")
 21020  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/notificationConfigs")
 21021  	urls += "?" + c.urlParams_.Encode()
 21022  	req, err := http.NewRequest("GET", urls, body)
 21023  	if err != nil {
 21024  		return nil, err
 21025  	}
 21026  	req.Header = reqHeaders
 21027  	googleapi.Expand(req.URL, map[string]string{
 21028  		"parent": c.parent,
 21029  	})
 21030  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21031  }
 21032  
 21033  // Do executes the "securitycenter.organizations.notificationConfigs.list" call.
 21034  // Any non-2xx status code is an error. Response headers are in either
 21035  // *ListNotificationConfigsResponse.ServerResponse.Header or (if a response was
 21036  // returned at all) in error.(*googleapi.Error).Header. Use
 21037  // googleapi.IsNotModified to check whether the returned error was because
 21038  // http.StatusNotModified was returned.
 21039  func (c *OrganizationsNotificationConfigsListCall) Do(opts ...googleapi.CallOption) (*ListNotificationConfigsResponse, error) {
 21040  	gensupport.SetOptions(c.urlParams_, opts...)
 21041  	res, err := c.doRequest("json")
 21042  	if res != nil && res.StatusCode == http.StatusNotModified {
 21043  		if res.Body != nil {
 21044  			res.Body.Close()
 21045  		}
 21046  		return nil, gensupport.WrapError(&googleapi.Error{
 21047  			Code:   res.StatusCode,
 21048  			Header: res.Header,
 21049  		})
 21050  	}
 21051  	if err != nil {
 21052  		return nil, err
 21053  	}
 21054  	defer googleapi.CloseBody(res)
 21055  	if err := googleapi.CheckResponse(res); err != nil {
 21056  		return nil, gensupport.WrapError(err)
 21057  	}
 21058  	ret := &ListNotificationConfigsResponse{
 21059  		ServerResponse: googleapi.ServerResponse{
 21060  			Header:         res.Header,
 21061  			HTTPStatusCode: res.StatusCode,
 21062  		},
 21063  	}
 21064  	target := &ret
 21065  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21066  		return nil, err
 21067  	}
 21068  	return ret, nil
 21069  }
 21070  
 21071  // Pages invokes f for each page of results.
 21072  // A non-nil error returned from f will halt the iteration.
 21073  // The provided context supersedes any context provided to the Context method.
 21074  func (c *OrganizationsNotificationConfigsListCall) Pages(ctx context.Context, f func(*ListNotificationConfigsResponse) error) error {
 21075  	c.ctx_ = ctx
 21076  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 21077  	for {
 21078  		x, err := c.Do()
 21079  		if err != nil {
 21080  			return err
 21081  		}
 21082  		if err := f(x); err != nil {
 21083  			return err
 21084  		}
 21085  		if x.NextPageToken == "" {
 21086  			return nil
 21087  		}
 21088  		c.PageToken(x.NextPageToken)
 21089  	}
 21090  }
 21091  
 21092  type OrganizationsNotificationConfigsPatchCall struct {
 21093  	s                  *Service
 21094  	name               string
 21095  	notificationconfig *NotificationConfig
 21096  	urlParams_         gensupport.URLParams
 21097  	ctx_               context.Context
 21098  	header_            http.Header
 21099  }
 21100  
 21101  // Patch:  Updates a notification config. The following update fields are
 21102  // allowed: description, pubsub_topic, streaming_config.filter
 21103  //
 21104  //   - name: The relative resource name of this notification config. See:
 21105  //     https://cloud.google.com/apis/design/resource_names#relative_resource_name
 21106  //     Example:
 21107  //     "organizations/{organization_id}/notificationConfigs/notify_public_bucket",
 21108  //     "folders/{folder_id}/notificationConfigs/notify_public_bucket", or
 21109  //     "projects/{project_id}/notificationConfigs/notify_public_bucket".
 21110  func (r *OrganizationsNotificationConfigsService) Patch(name string, notificationconfig *NotificationConfig) *OrganizationsNotificationConfigsPatchCall {
 21111  	c := &OrganizationsNotificationConfigsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21112  	c.name = name
 21113  	c.notificationconfig = notificationconfig
 21114  	return c
 21115  }
 21116  
 21117  // UpdateMask sets the optional parameter "updateMask": The FieldMask to use
 21118  // when updating the notification config. If empty all mutable fields will be
 21119  // updated.
 21120  func (c *OrganizationsNotificationConfigsPatchCall) UpdateMask(updateMask string) *OrganizationsNotificationConfigsPatchCall {
 21121  	c.urlParams_.Set("updateMask", updateMask)
 21122  	return c
 21123  }
 21124  
 21125  // Fields allows partial responses to be retrieved. See
 21126  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 21127  // details.
 21128  func (c *OrganizationsNotificationConfigsPatchCall) Fields(s ...googleapi.Field) *OrganizationsNotificationConfigsPatchCall {
 21129  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21130  	return c
 21131  }
 21132  
 21133  // Context sets the context to be used in this call's Do method.
 21134  func (c *OrganizationsNotificationConfigsPatchCall) Context(ctx context.Context) *OrganizationsNotificationConfigsPatchCall {
 21135  	c.ctx_ = ctx
 21136  	return c
 21137  }
 21138  
 21139  // Header returns a http.Header that can be modified by the caller to add
 21140  // headers to the request.
 21141  func (c *OrganizationsNotificationConfigsPatchCall) Header() http.Header {
 21142  	if c.header_ == nil {
 21143  		c.header_ = make(http.Header)
 21144  	}
 21145  	return c.header_
 21146  }
 21147  
 21148  func (c *OrganizationsNotificationConfigsPatchCall) doRequest(alt string) (*http.Response, error) {
 21149  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 21150  	var body io.Reader = nil
 21151  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.notificationconfig)
 21152  	if err != nil {
 21153  		return nil, err
 21154  	}
 21155  	c.urlParams_.Set("alt", alt)
 21156  	c.urlParams_.Set("prettyPrint", "false")
 21157  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 21158  	urls += "?" + c.urlParams_.Encode()
 21159  	req, err := http.NewRequest("PATCH", urls, body)
 21160  	if err != nil {
 21161  		return nil, err
 21162  	}
 21163  	req.Header = reqHeaders
 21164  	googleapi.Expand(req.URL, map[string]string{
 21165  		"name": c.name,
 21166  	})
 21167  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21168  }
 21169  
 21170  // Do executes the "securitycenter.organizations.notificationConfigs.patch" call.
 21171  // Any non-2xx status code is an error. Response headers are in either
 21172  // *NotificationConfig.ServerResponse.Header or (if a response was returned at
 21173  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 21174  // check whether the returned error was because http.StatusNotModified was
 21175  // returned.
 21176  func (c *OrganizationsNotificationConfigsPatchCall) Do(opts ...googleapi.CallOption) (*NotificationConfig, error) {
 21177  	gensupport.SetOptions(c.urlParams_, opts...)
 21178  	res, err := c.doRequest("json")
 21179  	if res != nil && res.StatusCode == http.StatusNotModified {
 21180  		if res.Body != nil {
 21181  			res.Body.Close()
 21182  		}
 21183  		return nil, gensupport.WrapError(&googleapi.Error{
 21184  			Code:   res.StatusCode,
 21185  			Header: res.Header,
 21186  		})
 21187  	}
 21188  	if err != nil {
 21189  		return nil, err
 21190  	}
 21191  	defer googleapi.CloseBody(res)
 21192  	if err := googleapi.CheckResponse(res); err != nil {
 21193  		return nil, gensupport.WrapError(err)
 21194  	}
 21195  	ret := &NotificationConfig{
 21196  		ServerResponse: googleapi.ServerResponse{
 21197  			Header:         res.Header,
 21198  			HTTPStatusCode: res.StatusCode,
 21199  		},
 21200  	}
 21201  	target := &ret
 21202  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21203  		return nil, err
 21204  	}
 21205  	return ret, nil
 21206  }
 21207  
 21208  type OrganizationsOperationsCancelCall struct {
 21209  	s          *Service
 21210  	name       string
 21211  	urlParams_ gensupport.URLParams
 21212  	ctx_       context.Context
 21213  	header_    http.Header
 21214  }
 21215  
 21216  // Cancel: Starts asynchronous cancellation on a long-running operation. The
 21217  // server makes a best effort to cancel the operation, but success is not
 21218  // guaranteed. If the server doesn't support this method, it returns
 21219  // `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or
 21220  // other methods to check whether the cancellation succeeded or whether the
 21221  // operation completed despite cancellation. On successful cancellation, the
 21222  // operation is not deleted; instead, it becomes an operation with an
 21223  // Operation.error value with a google.rpc.Status.code of 1, corresponding to
 21224  // `Code.CANCELLED`.
 21225  //
 21226  // - name: The name of the operation resource to be cancelled.
 21227  func (r *OrganizationsOperationsService) Cancel(name string) *OrganizationsOperationsCancelCall {
 21228  	c := &OrganizationsOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21229  	c.name = name
 21230  	return c
 21231  }
 21232  
 21233  // Fields allows partial responses to be retrieved. See
 21234  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 21235  // details.
 21236  func (c *OrganizationsOperationsCancelCall) Fields(s ...googleapi.Field) *OrganizationsOperationsCancelCall {
 21237  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21238  	return c
 21239  }
 21240  
 21241  // Context sets the context to be used in this call's Do method.
 21242  func (c *OrganizationsOperationsCancelCall) Context(ctx context.Context) *OrganizationsOperationsCancelCall {
 21243  	c.ctx_ = ctx
 21244  	return c
 21245  }
 21246  
 21247  // Header returns a http.Header that can be modified by the caller to add
 21248  // headers to the request.
 21249  func (c *OrganizationsOperationsCancelCall) Header() http.Header {
 21250  	if c.header_ == nil {
 21251  		c.header_ = make(http.Header)
 21252  	}
 21253  	return c.header_
 21254  }
 21255  
 21256  func (c *OrganizationsOperationsCancelCall) doRequest(alt string) (*http.Response, error) {
 21257  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 21258  	var body io.Reader = nil
 21259  	c.urlParams_.Set("alt", alt)
 21260  	c.urlParams_.Set("prettyPrint", "false")
 21261  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:cancel")
 21262  	urls += "?" + c.urlParams_.Encode()
 21263  	req, err := http.NewRequest("POST", urls, body)
 21264  	if err != nil {
 21265  		return nil, err
 21266  	}
 21267  	req.Header = reqHeaders
 21268  	googleapi.Expand(req.URL, map[string]string{
 21269  		"name": c.name,
 21270  	})
 21271  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21272  }
 21273  
 21274  // Do executes the "securitycenter.organizations.operations.cancel" call.
 21275  // Any non-2xx status code is an error. Response headers are in either
 21276  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 21277  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 21278  // whether the returned error was because http.StatusNotModified was returned.
 21279  func (c *OrganizationsOperationsCancelCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 21280  	gensupport.SetOptions(c.urlParams_, opts...)
 21281  	res, err := c.doRequest("json")
 21282  	if res != nil && res.StatusCode == http.StatusNotModified {
 21283  		if res.Body != nil {
 21284  			res.Body.Close()
 21285  		}
 21286  		return nil, gensupport.WrapError(&googleapi.Error{
 21287  			Code:   res.StatusCode,
 21288  			Header: res.Header,
 21289  		})
 21290  	}
 21291  	if err != nil {
 21292  		return nil, err
 21293  	}
 21294  	defer googleapi.CloseBody(res)
 21295  	if err := googleapi.CheckResponse(res); err != nil {
 21296  		return nil, gensupport.WrapError(err)
 21297  	}
 21298  	ret := &Empty{
 21299  		ServerResponse: googleapi.ServerResponse{
 21300  			Header:         res.Header,
 21301  			HTTPStatusCode: res.StatusCode,
 21302  		},
 21303  	}
 21304  	target := &ret
 21305  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21306  		return nil, err
 21307  	}
 21308  	return ret, nil
 21309  }
 21310  
 21311  type OrganizationsOperationsDeleteCall struct {
 21312  	s          *Service
 21313  	name       string
 21314  	urlParams_ gensupport.URLParams
 21315  	ctx_       context.Context
 21316  	header_    http.Header
 21317  }
 21318  
 21319  // Delete: Deletes a long-running operation. This method indicates that the
 21320  // client is no longer interested in the operation result. It does not cancel
 21321  // the operation. If the server doesn't support this method, it returns
 21322  // `google.rpc.Code.UNIMPLEMENTED`.
 21323  //
 21324  // - name: The name of the operation resource to be deleted.
 21325  func (r *OrganizationsOperationsService) Delete(name string) *OrganizationsOperationsDeleteCall {
 21326  	c := &OrganizationsOperationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21327  	c.name = name
 21328  	return c
 21329  }
 21330  
 21331  // Fields allows partial responses to be retrieved. See
 21332  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 21333  // details.
 21334  func (c *OrganizationsOperationsDeleteCall) Fields(s ...googleapi.Field) *OrganizationsOperationsDeleteCall {
 21335  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21336  	return c
 21337  }
 21338  
 21339  // Context sets the context to be used in this call's Do method.
 21340  func (c *OrganizationsOperationsDeleteCall) Context(ctx context.Context) *OrganizationsOperationsDeleteCall {
 21341  	c.ctx_ = ctx
 21342  	return c
 21343  }
 21344  
 21345  // Header returns a http.Header that can be modified by the caller to add
 21346  // headers to the request.
 21347  func (c *OrganizationsOperationsDeleteCall) Header() http.Header {
 21348  	if c.header_ == nil {
 21349  		c.header_ = make(http.Header)
 21350  	}
 21351  	return c.header_
 21352  }
 21353  
 21354  func (c *OrganizationsOperationsDeleteCall) doRequest(alt string) (*http.Response, error) {
 21355  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 21356  	var body io.Reader = nil
 21357  	c.urlParams_.Set("alt", alt)
 21358  	c.urlParams_.Set("prettyPrint", "false")
 21359  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 21360  	urls += "?" + c.urlParams_.Encode()
 21361  	req, err := http.NewRequest("DELETE", urls, body)
 21362  	if err != nil {
 21363  		return nil, err
 21364  	}
 21365  	req.Header = reqHeaders
 21366  	googleapi.Expand(req.URL, map[string]string{
 21367  		"name": c.name,
 21368  	})
 21369  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21370  }
 21371  
 21372  // Do executes the "securitycenter.organizations.operations.delete" call.
 21373  // Any non-2xx status code is an error. Response headers are in either
 21374  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 21375  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 21376  // whether the returned error was because http.StatusNotModified was returned.
 21377  func (c *OrganizationsOperationsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 21378  	gensupport.SetOptions(c.urlParams_, opts...)
 21379  	res, err := c.doRequest("json")
 21380  	if res != nil && res.StatusCode == http.StatusNotModified {
 21381  		if res.Body != nil {
 21382  			res.Body.Close()
 21383  		}
 21384  		return nil, gensupport.WrapError(&googleapi.Error{
 21385  			Code:   res.StatusCode,
 21386  			Header: res.Header,
 21387  		})
 21388  	}
 21389  	if err != nil {
 21390  		return nil, err
 21391  	}
 21392  	defer googleapi.CloseBody(res)
 21393  	if err := googleapi.CheckResponse(res); err != nil {
 21394  		return nil, gensupport.WrapError(err)
 21395  	}
 21396  	ret := &Empty{
 21397  		ServerResponse: googleapi.ServerResponse{
 21398  			Header:         res.Header,
 21399  			HTTPStatusCode: res.StatusCode,
 21400  		},
 21401  	}
 21402  	target := &ret
 21403  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21404  		return nil, err
 21405  	}
 21406  	return ret, nil
 21407  }
 21408  
 21409  type OrganizationsOperationsGetCall struct {
 21410  	s            *Service
 21411  	name         string
 21412  	urlParams_   gensupport.URLParams
 21413  	ifNoneMatch_ string
 21414  	ctx_         context.Context
 21415  	header_      http.Header
 21416  }
 21417  
 21418  // Get: Gets the latest state of a long-running operation. Clients can use this
 21419  // method to poll the operation result at intervals as recommended by the API
 21420  // service.
 21421  //
 21422  // - name: The name of the operation resource.
 21423  func (r *OrganizationsOperationsService) Get(name string) *OrganizationsOperationsGetCall {
 21424  	c := &OrganizationsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21425  	c.name = name
 21426  	return c
 21427  }
 21428  
 21429  // Fields allows partial responses to be retrieved. See
 21430  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 21431  // details.
 21432  func (c *OrganizationsOperationsGetCall) Fields(s ...googleapi.Field) *OrganizationsOperationsGetCall {
 21433  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21434  	return c
 21435  }
 21436  
 21437  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 21438  // object's ETag matches the given value. This is useful for getting updates
 21439  // only after the object has changed since the last request.
 21440  func (c *OrganizationsOperationsGetCall) IfNoneMatch(entityTag string) *OrganizationsOperationsGetCall {
 21441  	c.ifNoneMatch_ = entityTag
 21442  	return c
 21443  }
 21444  
 21445  // Context sets the context to be used in this call's Do method.
 21446  func (c *OrganizationsOperationsGetCall) Context(ctx context.Context) *OrganizationsOperationsGetCall {
 21447  	c.ctx_ = ctx
 21448  	return c
 21449  }
 21450  
 21451  // Header returns a http.Header that can be modified by the caller to add
 21452  // headers to the request.
 21453  func (c *OrganizationsOperationsGetCall) Header() http.Header {
 21454  	if c.header_ == nil {
 21455  		c.header_ = make(http.Header)
 21456  	}
 21457  	return c.header_
 21458  }
 21459  
 21460  func (c *OrganizationsOperationsGetCall) doRequest(alt string) (*http.Response, error) {
 21461  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 21462  	if c.ifNoneMatch_ != "" {
 21463  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 21464  	}
 21465  	var body io.Reader = nil
 21466  	c.urlParams_.Set("alt", alt)
 21467  	c.urlParams_.Set("prettyPrint", "false")
 21468  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 21469  	urls += "?" + c.urlParams_.Encode()
 21470  	req, err := http.NewRequest("GET", urls, body)
 21471  	if err != nil {
 21472  		return nil, err
 21473  	}
 21474  	req.Header = reqHeaders
 21475  	googleapi.Expand(req.URL, map[string]string{
 21476  		"name": c.name,
 21477  	})
 21478  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21479  }
 21480  
 21481  // Do executes the "securitycenter.organizations.operations.get" call.
 21482  // Any non-2xx status code is an error. Response headers are in either
 21483  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 21484  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 21485  // whether the returned error was because http.StatusNotModified was returned.
 21486  func (c *OrganizationsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 21487  	gensupport.SetOptions(c.urlParams_, opts...)
 21488  	res, err := c.doRequest("json")
 21489  	if res != nil && res.StatusCode == http.StatusNotModified {
 21490  		if res.Body != nil {
 21491  			res.Body.Close()
 21492  		}
 21493  		return nil, gensupport.WrapError(&googleapi.Error{
 21494  			Code:   res.StatusCode,
 21495  			Header: res.Header,
 21496  		})
 21497  	}
 21498  	if err != nil {
 21499  		return nil, err
 21500  	}
 21501  	defer googleapi.CloseBody(res)
 21502  	if err := googleapi.CheckResponse(res); err != nil {
 21503  		return nil, gensupport.WrapError(err)
 21504  	}
 21505  	ret := &Operation{
 21506  		ServerResponse: googleapi.ServerResponse{
 21507  			Header:         res.Header,
 21508  			HTTPStatusCode: res.StatusCode,
 21509  		},
 21510  	}
 21511  	target := &ret
 21512  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21513  		return nil, err
 21514  	}
 21515  	return ret, nil
 21516  }
 21517  
 21518  type OrganizationsOperationsListCall struct {
 21519  	s            *Service
 21520  	name         string
 21521  	urlParams_   gensupport.URLParams
 21522  	ifNoneMatch_ string
 21523  	ctx_         context.Context
 21524  	header_      http.Header
 21525  }
 21526  
 21527  // List: Lists operations that match the specified filter in the request. If
 21528  // the server doesn't support this method, it returns `UNIMPLEMENTED`.
 21529  //
 21530  // - name: The name of the operation's parent resource.
 21531  func (r *OrganizationsOperationsService) List(name string) *OrganizationsOperationsListCall {
 21532  	c := &OrganizationsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21533  	c.name = name
 21534  	return c
 21535  }
 21536  
 21537  // Filter sets the optional parameter "filter": The standard list filter.
 21538  func (c *OrganizationsOperationsListCall) Filter(filter string) *OrganizationsOperationsListCall {
 21539  	c.urlParams_.Set("filter", filter)
 21540  	return c
 21541  }
 21542  
 21543  // PageSize sets the optional parameter "pageSize": The standard list page
 21544  // size.
 21545  func (c *OrganizationsOperationsListCall) PageSize(pageSize int64) *OrganizationsOperationsListCall {
 21546  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 21547  	return c
 21548  }
 21549  
 21550  // PageToken sets the optional parameter "pageToken": The standard list page
 21551  // token.
 21552  func (c *OrganizationsOperationsListCall) PageToken(pageToken string) *OrganizationsOperationsListCall {
 21553  	c.urlParams_.Set("pageToken", pageToken)
 21554  	return c
 21555  }
 21556  
 21557  // Fields allows partial responses to be retrieved. See
 21558  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 21559  // details.
 21560  func (c *OrganizationsOperationsListCall) Fields(s ...googleapi.Field) *OrganizationsOperationsListCall {
 21561  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21562  	return c
 21563  }
 21564  
 21565  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 21566  // object's ETag matches the given value. This is useful for getting updates
 21567  // only after the object has changed since the last request.
 21568  func (c *OrganizationsOperationsListCall) IfNoneMatch(entityTag string) *OrganizationsOperationsListCall {
 21569  	c.ifNoneMatch_ = entityTag
 21570  	return c
 21571  }
 21572  
 21573  // Context sets the context to be used in this call's Do method.
 21574  func (c *OrganizationsOperationsListCall) Context(ctx context.Context) *OrganizationsOperationsListCall {
 21575  	c.ctx_ = ctx
 21576  	return c
 21577  }
 21578  
 21579  // Header returns a http.Header that can be modified by the caller to add
 21580  // headers to the request.
 21581  func (c *OrganizationsOperationsListCall) Header() http.Header {
 21582  	if c.header_ == nil {
 21583  		c.header_ = make(http.Header)
 21584  	}
 21585  	return c.header_
 21586  }
 21587  
 21588  func (c *OrganizationsOperationsListCall) doRequest(alt string) (*http.Response, error) {
 21589  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 21590  	if c.ifNoneMatch_ != "" {
 21591  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 21592  	}
 21593  	var body io.Reader = nil
 21594  	c.urlParams_.Set("alt", alt)
 21595  	c.urlParams_.Set("prettyPrint", "false")
 21596  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 21597  	urls += "?" + c.urlParams_.Encode()
 21598  	req, err := http.NewRequest("GET", urls, body)
 21599  	if err != nil {
 21600  		return nil, err
 21601  	}
 21602  	req.Header = reqHeaders
 21603  	googleapi.Expand(req.URL, map[string]string{
 21604  		"name": c.name,
 21605  	})
 21606  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21607  }
 21608  
 21609  // Do executes the "securitycenter.organizations.operations.list" call.
 21610  // Any non-2xx status code is an error. Response headers are in either
 21611  // *ListOperationsResponse.ServerResponse.Header or (if a response was returned
 21612  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 21613  // check whether the returned error was because http.StatusNotModified was
 21614  // returned.
 21615  func (c *OrganizationsOperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) {
 21616  	gensupport.SetOptions(c.urlParams_, opts...)
 21617  	res, err := c.doRequest("json")
 21618  	if res != nil && res.StatusCode == http.StatusNotModified {
 21619  		if res.Body != nil {
 21620  			res.Body.Close()
 21621  		}
 21622  		return nil, gensupport.WrapError(&googleapi.Error{
 21623  			Code:   res.StatusCode,
 21624  			Header: res.Header,
 21625  		})
 21626  	}
 21627  	if err != nil {
 21628  		return nil, err
 21629  	}
 21630  	defer googleapi.CloseBody(res)
 21631  	if err := googleapi.CheckResponse(res); err != nil {
 21632  		return nil, gensupport.WrapError(err)
 21633  	}
 21634  	ret := &ListOperationsResponse{
 21635  		ServerResponse: googleapi.ServerResponse{
 21636  			Header:         res.Header,
 21637  			HTTPStatusCode: res.StatusCode,
 21638  		},
 21639  	}
 21640  	target := &ret
 21641  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21642  		return nil, err
 21643  	}
 21644  	return ret, nil
 21645  }
 21646  
 21647  // Pages invokes f for each page of results.
 21648  // A non-nil error returned from f will halt the iteration.
 21649  // The provided context supersedes any context provided to the Context method.
 21650  func (c *OrganizationsOperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) error) error {
 21651  	c.ctx_ = ctx
 21652  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 21653  	for {
 21654  		x, err := c.Do()
 21655  		if err != nil {
 21656  			return err
 21657  		}
 21658  		if err := f(x); err != nil {
 21659  			return err
 21660  		}
 21661  		if x.NextPageToken == "" {
 21662  			return nil
 21663  		}
 21664  		c.PageToken(x.NextPageToken)
 21665  	}
 21666  }
 21667  
 21668  type OrganizationsResourceValueConfigsBatchCreateCall struct {
 21669  	s                                      *Service
 21670  	parent                                 string
 21671  	batchcreateresourcevalueconfigsrequest *BatchCreateResourceValueConfigsRequest
 21672  	urlParams_                             gensupport.URLParams
 21673  	ctx_                                   context.Context
 21674  	header_                                http.Header
 21675  }
 21676  
 21677  // BatchCreate: Creates a ResourceValueConfig for an organization. Maps user's
 21678  // tags to difference resource values for use by the attack path simulation.
 21679  //
 21680  //   - parent: Resource name of the new ResourceValueConfig's parent. The parent
 21681  //     field in the CreateResourceValueConfigRequest messages must either be
 21682  //     empty or match this field.
 21683  func (r *OrganizationsResourceValueConfigsService) BatchCreate(parent string, batchcreateresourcevalueconfigsrequest *BatchCreateResourceValueConfigsRequest) *OrganizationsResourceValueConfigsBatchCreateCall {
 21684  	c := &OrganizationsResourceValueConfigsBatchCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21685  	c.parent = parent
 21686  	c.batchcreateresourcevalueconfigsrequest = batchcreateresourcevalueconfigsrequest
 21687  	return c
 21688  }
 21689  
 21690  // Fields allows partial responses to be retrieved. See
 21691  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 21692  // details.
 21693  func (c *OrganizationsResourceValueConfigsBatchCreateCall) Fields(s ...googleapi.Field) *OrganizationsResourceValueConfigsBatchCreateCall {
 21694  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21695  	return c
 21696  }
 21697  
 21698  // Context sets the context to be used in this call's Do method.
 21699  func (c *OrganizationsResourceValueConfigsBatchCreateCall) Context(ctx context.Context) *OrganizationsResourceValueConfigsBatchCreateCall {
 21700  	c.ctx_ = ctx
 21701  	return c
 21702  }
 21703  
 21704  // Header returns a http.Header that can be modified by the caller to add
 21705  // headers to the request.
 21706  func (c *OrganizationsResourceValueConfigsBatchCreateCall) Header() http.Header {
 21707  	if c.header_ == nil {
 21708  		c.header_ = make(http.Header)
 21709  	}
 21710  	return c.header_
 21711  }
 21712  
 21713  func (c *OrganizationsResourceValueConfigsBatchCreateCall) doRequest(alt string) (*http.Response, error) {
 21714  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 21715  	var body io.Reader = nil
 21716  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.batchcreateresourcevalueconfigsrequest)
 21717  	if err != nil {
 21718  		return nil, err
 21719  	}
 21720  	c.urlParams_.Set("alt", alt)
 21721  	c.urlParams_.Set("prettyPrint", "false")
 21722  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/resourceValueConfigs:batchCreate")
 21723  	urls += "?" + c.urlParams_.Encode()
 21724  	req, err := http.NewRequest("POST", urls, body)
 21725  	if err != nil {
 21726  		return nil, err
 21727  	}
 21728  	req.Header = reqHeaders
 21729  	googleapi.Expand(req.URL, map[string]string{
 21730  		"parent": c.parent,
 21731  	})
 21732  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21733  }
 21734  
 21735  // Do executes the "securitycenter.organizations.resourceValueConfigs.batchCreate" call.
 21736  // Any non-2xx status code is an error. Response headers are in either
 21737  // *BatchCreateResourceValueConfigsResponse.ServerResponse.Header or (if a
 21738  // response was returned at all) in error.(*googleapi.Error).Header. Use
 21739  // googleapi.IsNotModified to check whether the returned error was because
 21740  // http.StatusNotModified was returned.
 21741  func (c *OrganizationsResourceValueConfigsBatchCreateCall) Do(opts ...googleapi.CallOption) (*BatchCreateResourceValueConfigsResponse, error) {
 21742  	gensupport.SetOptions(c.urlParams_, opts...)
 21743  	res, err := c.doRequest("json")
 21744  	if res != nil && res.StatusCode == http.StatusNotModified {
 21745  		if res.Body != nil {
 21746  			res.Body.Close()
 21747  		}
 21748  		return nil, gensupport.WrapError(&googleapi.Error{
 21749  			Code:   res.StatusCode,
 21750  			Header: res.Header,
 21751  		})
 21752  	}
 21753  	if err != nil {
 21754  		return nil, err
 21755  	}
 21756  	defer googleapi.CloseBody(res)
 21757  	if err := googleapi.CheckResponse(res); err != nil {
 21758  		return nil, gensupport.WrapError(err)
 21759  	}
 21760  	ret := &BatchCreateResourceValueConfigsResponse{
 21761  		ServerResponse: googleapi.ServerResponse{
 21762  			Header:         res.Header,
 21763  			HTTPStatusCode: res.StatusCode,
 21764  		},
 21765  	}
 21766  	target := &ret
 21767  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21768  		return nil, err
 21769  	}
 21770  	return ret, nil
 21771  }
 21772  
 21773  type OrganizationsResourceValueConfigsDeleteCall struct {
 21774  	s          *Service
 21775  	name       string
 21776  	urlParams_ gensupport.URLParams
 21777  	ctx_       context.Context
 21778  	header_    http.Header
 21779  }
 21780  
 21781  // Delete: Deletes a ResourceValueConfig.
 21782  //
 21783  // - name: Name of the ResourceValueConfig to delete.
 21784  func (r *OrganizationsResourceValueConfigsService) Delete(name string) *OrganizationsResourceValueConfigsDeleteCall {
 21785  	c := &OrganizationsResourceValueConfigsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21786  	c.name = name
 21787  	return c
 21788  }
 21789  
 21790  // Fields allows partial responses to be retrieved. See
 21791  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 21792  // details.
 21793  func (c *OrganizationsResourceValueConfigsDeleteCall) Fields(s ...googleapi.Field) *OrganizationsResourceValueConfigsDeleteCall {
 21794  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21795  	return c
 21796  }
 21797  
 21798  // Context sets the context to be used in this call's Do method.
 21799  func (c *OrganizationsResourceValueConfigsDeleteCall) Context(ctx context.Context) *OrganizationsResourceValueConfigsDeleteCall {
 21800  	c.ctx_ = ctx
 21801  	return c
 21802  }
 21803  
 21804  // Header returns a http.Header that can be modified by the caller to add
 21805  // headers to the request.
 21806  func (c *OrganizationsResourceValueConfigsDeleteCall) Header() http.Header {
 21807  	if c.header_ == nil {
 21808  		c.header_ = make(http.Header)
 21809  	}
 21810  	return c.header_
 21811  }
 21812  
 21813  func (c *OrganizationsResourceValueConfigsDeleteCall) doRequest(alt string) (*http.Response, error) {
 21814  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 21815  	var body io.Reader = nil
 21816  	c.urlParams_.Set("alt", alt)
 21817  	c.urlParams_.Set("prettyPrint", "false")
 21818  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 21819  	urls += "?" + c.urlParams_.Encode()
 21820  	req, err := http.NewRequest("DELETE", urls, body)
 21821  	if err != nil {
 21822  		return nil, err
 21823  	}
 21824  	req.Header = reqHeaders
 21825  	googleapi.Expand(req.URL, map[string]string{
 21826  		"name": c.name,
 21827  	})
 21828  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21829  }
 21830  
 21831  // Do executes the "securitycenter.organizations.resourceValueConfigs.delete" call.
 21832  // Any non-2xx status code is an error. Response headers are in either
 21833  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 21834  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 21835  // whether the returned error was because http.StatusNotModified was returned.
 21836  func (c *OrganizationsResourceValueConfigsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 21837  	gensupport.SetOptions(c.urlParams_, opts...)
 21838  	res, err := c.doRequest("json")
 21839  	if res != nil && res.StatusCode == http.StatusNotModified {
 21840  		if res.Body != nil {
 21841  			res.Body.Close()
 21842  		}
 21843  		return nil, gensupport.WrapError(&googleapi.Error{
 21844  			Code:   res.StatusCode,
 21845  			Header: res.Header,
 21846  		})
 21847  	}
 21848  	if err != nil {
 21849  		return nil, err
 21850  	}
 21851  	defer googleapi.CloseBody(res)
 21852  	if err := googleapi.CheckResponse(res); err != nil {
 21853  		return nil, gensupport.WrapError(err)
 21854  	}
 21855  	ret := &Empty{
 21856  		ServerResponse: googleapi.ServerResponse{
 21857  			Header:         res.Header,
 21858  			HTTPStatusCode: res.StatusCode,
 21859  		},
 21860  	}
 21861  	target := &ret
 21862  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21863  		return nil, err
 21864  	}
 21865  	return ret, nil
 21866  }
 21867  
 21868  type OrganizationsResourceValueConfigsGetCall struct {
 21869  	s            *Service
 21870  	name         string
 21871  	urlParams_   gensupport.URLParams
 21872  	ifNoneMatch_ string
 21873  	ctx_         context.Context
 21874  	header_      http.Header
 21875  }
 21876  
 21877  // Get: Gets a ResourceValueConfig.
 21878  //
 21879  //   - name: Name of the resource value config to retrieve. Its format is
 21880  //     organizations/{organization}/resourceValueConfigs/{config_id}.
 21881  func (r *OrganizationsResourceValueConfigsService) Get(name string) *OrganizationsResourceValueConfigsGetCall {
 21882  	c := &OrganizationsResourceValueConfigsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21883  	c.name = name
 21884  	return c
 21885  }
 21886  
 21887  // Fields allows partial responses to be retrieved. See
 21888  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 21889  // details.
 21890  func (c *OrganizationsResourceValueConfigsGetCall) Fields(s ...googleapi.Field) *OrganizationsResourceValueConfigsGetCall {
 21891  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21892  	return c
 21893  }
 21894  
 21895  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 21896  // object's ETag matches the given value. This is useful for getting updates
 21897  // only after the object has changed since the last request.
 21898  func (c *OrganizationsResourceValueConfigsGetCall) IfNoneMatch(entityTag string) *OrganizationsResourceValueConfigsGetCall {
 21899  	c.ifNoneMatch_ = entityTag
 21900  	return c
 21901  }
 21902  
 21903  // Context sets the context to be used in this call's Do method.
 21904  func (c *OrganizationsResourceValueConfigsGetCall) Context(ctx context.Context) *OrganizationsResourceValueConfigsGetCall {
 21905  	c.ctx_ = ctx
 21906  	return c
 21907  }
 21908  
 21909  // Header returns a http.Header that can be modified by the caller to add
 21910  // headers to the request.
 21911  func (c *OrganizationsResourceValueConfigsGetCall) Header() http.Header {
 21912  	if c.header_ == nil {
 21913  		c.header_ = make(http.Header)
 21914  	}
 21915  	return c.header_
 21916  }
 21917  
 21918  func (c *OrganizationsResourceValueConfigsGetCall) doRequest(alt string) (*http.Response, error) {
 21919  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 21920  	if c.ifNoneMatch_ != "" {
 21921  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 21922  	}
 21923  	var body io.Reader = nil
 21924  	c.urlParams_.Set("alt", alt)
 21925  	c.urlParams_.Set("prettyPrint", "false")
 21926  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 21927  	urls += "?" + c.urlParams_.Encode()
 21928  	req, err := http.NewRequest("GET", urls, body)
 21929  	if err != nil {
 21930  		return nil, err
 21931  	}
 21932  	req.Header = reqHeaders
 21933  	googleapi.Expand(req.URL, map[string]string{
 21934  		"name": c.name,
 21935  	})
 21936  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21937  }
 21938  
 21939  // Do executes the "securitycenter.organizations.resourceValueConfigs.get" call.
 21940  // Any non-2xx status code is an error. Response headers are in either
 21941  // *GoogleCloudSecuritycenterV1ResourceValueConfig.ServerResponse.Header or (if
 21942  // a response was returned at all) in error.(*googleapi.Error).Header. Use
 21943  // googleapi.IsNotModified to check whether the returned error was because
 21944  // http.StatusNotModified was returned.
 21945  func (c *OrganizationsResourceValueConfigsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1ResourceValueConfig, error) {
 21946  	gensupport.SetOptions(c.urlParams_, opts...)
 21947  	res, err := c.doRequest("json")
 21948  	if res != nil && res.StatusCode == http.StatusNotModified {
 21949  		if res.Body != nil {
 21950  			res.Body.Close()
 21951  		}
 21952  		return nil, gensupport.WrapError(&googleapi.Error{
 21953  			Code:   res.StatusCode,
 21954  			Header: res.Header,
 21955  		})
 21956  	}
 21957  	if err != nil {
 21958  		return nil, err
 21959  	}
 21960  	defer googleapi.CloseBody(res)
 21961  	if err := googleapi.CheckResponse(res); err != nil {
 21962  		return nil, gensupport.WrapError(err)
 21963  	}
 21964  	ret := &GoogleCloudSecuritycenterV1ResourceValueConfig{
 21965  		ServerResponse: googleapi.ServerResponse{
 21966  			Header:         res.Header,
 21967  			HTTPStatusCode: res.StatusCode,
 21968  		},
 21969  	}
 21970  	target := &ret
 21971  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21972  		return nil, err
 21973  	}
 21974  	return ret, nil
 21975  }
 21976  
 21977  type OrganizationsResourceValueConfigsListCall struct {
 21978  	s            *Service
 21979  	parent       string
 21980  	urlParams_   gensupport.URLParams
 21981  	ifNoneMatch_ string
 21982  	ctx_         context.Context
 21983  	header_      http.Header
 21984  }
 21985  
 21986  // List: Lists all ResourceValueConfigs.
 21987  //
 21988  //   - parent: The parent, which owns the collection of resource value configs.
 21989  //     Its format is "organizations/[organization_id]".
 21990  func (r *OrganizationsResourceValueConfigsService) List(parent string) *OrganizationsResourceValueConfigsListCall {
 21991  	c := &OrganizationsResourceValueConfigsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21992  	c.parent = parent
 21993  	return c
 21994  }
 21995  
 21996  // PageSize sets the optional parameter "pageSize": The number of results to
 21997  // return. The service may return fewer than this value. If unspecified, at
 21998  // most 10 configs will be returned. The maximum value is 1000; values above
 21999  // 1000 will be coerced to 1000.
 22000  func (c *OrganizationsResourceValueConfigsListCall) PageSize(pageSize int64) *OrganizationsResourceValueConfigsListCall {
 22001  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 22002  	return c
 22003  }
 22004  
 22005  // PageToken sets the optional parameter "pageToken": A page token, received
 22006  // from a previous `ListResourceValueConfigs` call. Provide this to retrieve
 22007  // the subsequent page. When paginating, all other parameters provided to
 22008  // `ListResourceValueConfigs` must match the call that provided the page token.
 22009  // page_size can be specified, and the new page_size will be used.
 22010  func (c *OrganizationsResourceValueConfigsListCall) PageToken(pageToken string) *OrganizationsResourceValueConfigsListCall {
 22011  	c.urlParams_.Set("pageToken", pageToken)
 22012  	return c
 22013  }
 22014  
 22015  // Fields allows partial responses to be retrieved. See
 22016  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 22017  // details.
 22018  func (c *OrganizationsResourceValueConfigsListCall) Fields(s ...googleapi.Field) *OrganizationsResourceValueConfigsListCall {
 22019  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22020  	return c
 22021  }
 22022  
 22023  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 22024  // object's ETag matches the given value. This is useful for getting updates
 22025  // only after the object has changed since the last request.
 22026  func (c *OrganizationsResourceValueConfigsListCall) IfNoneMatch(entityTag string) *OrganizationsResourceValueConfigsListCall {
 22027  	c.ifNoneMatch_ = entityTag
 22028  	return c
 22029  }
 22030  
 22031  // Context sets the context to be used in this call's Do method.
 22032  func (c *OrganizationsResourceValueConfigsListCall) Context(ctx context.Context) *OrganizationsResourceValueConfigsListCall {
 22033  	c.ctx_ = ctx
 22034  	return c
 22035  }
 22036  
 22037  // Header returns a http.Header that can be modified by the caller to add
 22038  // headers to the request.
 22039  func (c *OrganizationsResourceValueConfigsListCall) Header() http.Header {
 22040  	if c.header_ == nil {
 22041  		c.header_ = make(http.Header)
 22042  	}
 22043  	return c.header_
 22044  }
 22045  
 22046  func (c *OrganizationsResourceValueConfigsListCall) doRequest(alt string) (*http.Response, error) {
 22047  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 22048  	if c.ifNoneMatch_ != "" {
 22049  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 22050  	}
 22051  	var body io.Reader = nil
 22052  	c.urlParams_.Set("alt", alt)
 22053  	c.urlParams_.Set("prettyPrint", "false")
 22054  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/resourceValueConfigs")
 22055  	urls += "?" + c.urlParams_.Encode()
 22056  	req, err := http.NewRequest("GET", urls, body)
 22057  	if err != nil {
 22058  		return nil, err
 22059  	}
 22060  	req.Header = reqHeaders
 22061  	googleapi.Expand(req.URL, map[string]string{
 22062  		"parent": c.parent,
 22063  	})
 22064  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22065  }
 22066  
 22067  // Do executes the "securitycenter.organizations.resourceValueConfigs.list" call.
 22068  // Any non-2xx status code is an error. Response headers are in either
 22069  // *ListResourceValueConfigsResponse.ServerResponse.Header or (if a response
 22070  // was returned at all) in error.(*googleapi.Error).Header. Use
 22071  // googleapi.IsNotModified to check whether the returned error was because
 22072  // http.StatusNotModified was returned.
 22073  func (c *OrganizationsResourceValueConfigsListCall) Do(opts ...googleapi.CallOption) (*ListResourceValueConfigsResponse, error) {
 22074  	gensupport.SetOptions(c.urlParams_, opts...)
 22075  	res, err := c.doRequest("json")
 22076  	if res != nil && res.StatusCode == http.StatusNotModified {
 22077  		if res.Body != nil {
 22078  			res.Body.Close()
 22079  		}
 22080  		return nil, gensupport.WrapError(&googleapi.Error{
 22081  			Code:   res.StatusCode,
 22082  			Header: res.Header,
 22083  		})
 22084  	}
 22085  	if err != nil {
 22086  		return nil, err
 22087  	}
 22088  	defer googleapi.CloseBody(res)
 22089  	if err := googleapi.CheckResponse(res); err != nil {
 22090  		return nil, gensupport.WrapError(err)
 22091  	}
 22092  	ret := &ListResourceValueConfigsResponse{
 22093  		ServerResponse: googleapi.ServerResponse{
 22094  			Header:         res.Header,
 22095  			HTTPStatusCode: res.StatusCode,
 22096  		},
 22097  	}
 22098  	target := &ret
 22099  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22100  		return nil, err
 22101  	}
 22102  	return ret, nil
 22103  }
 22104  
 22105  // Pages invokes f for each page of results.
 22106  // A non-nil error returned from f will halt the iteration.
 22107  // The provided context supersedes any context provided to the Context method.
 22108  func (c *OrganizationsResourceValueConfigsListCall) Pages(ctx context.Context, f func(*ListResourceValueConfigsResponse) error) error {
 22109  	c.ctx_ = ctx
 22110  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 22111  	for {
 22112  		x, err := c.Do()
 22113  		if err != nil {
 22114  			return err
 22115  		}
 22116  		if err := f(x); err != nil {
 22117  			return err
 22118  		}
 22119  		if x.NextPageToken == "" {
 22120  			return nil
 22121  		}
 22122  		c.PageToken(x.NextPageToken)
 22123  	}
 22124  }
 22125  
 22126  type OrganizationsResourceValueConfigsPatchCall struct {
 22127  	s                                              *Service
 22128  	name                                           string
 22129  	googlecloudsecuritycenterv1resourcevalueconfig *GoogleCloudSecuritycenterV1ResourceValueConfig
 22130  	urlParams_                                     gensupport.URLParams
 22131  	ctx_                                           context.Context
 22132  	header_                                        http.Header
 22133  }
 22134  
 22135  // Patch: Updates an existing ResourceValueConfigs with new rules.
 22136  //
 22137  // - name: Name for the resource value config.
 22138  func (r *OrganizationsResourceValueConfigsService) Patch(name string, googlecloudsecuritycenterv1resourcevalueconfig *GoogleCloudSecuritycenterV1ResourceValueConfig) *OrganizationsResourceValueConfigsPatchCall {
 22139  	c := &OrganizationsResourceValueConfigsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22140  	c.name = name
 22141  	c.googlecloudsecuritycenterv1resourcevalueconfig = googlecloudsecuritycenterv1resourcevalueconfig
 22142  	return c
 22143  }
 22144  
 22145  // UpdateMask sets the optional parameter "updateMask": The list of fields to
 22146  // be updated. If empty all mutable fields will be updated.
 22147  func (c *OrganizationsResourceValueConfigsPatchCall) UpdateMask(updateMask string) *OrganizationsResourceValueConfigsPatchCall {
 22148  	c.urlParams_.Set("updateMask", updateMask)
 22149  	return c
 22150  }
 22151  
 22152  // Fields allows partial responses to be retrieved. See
 22153  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 22154  // details.
 22155  func (c *OrganizationsResourceValueConfigsPatchCall) Fields(s ...googleapi.Field) *OrganizationsResourceValueConfigsPatchCall {
 22156  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22157  	return c
 22158  }
 22159  
 22160  // Context sets the context to be used in this call's Do method.
 22161  func (c *OrganizationsResourceValueConfigsPatchCall) Context(ctx context.Context) *OrganizationsResourceValueConfigsPatchCall {
 22162  	c.ctx_ = ctx
 22163  	return c
 22164  }
 22165  
 22166  // Header returns a http.Header that can be modified by the caller to add
 22167  // headers to the request.
 22168  func (c *OrganizationsResourceValueConfigsPatchCall) Header() http.Header {
 22169  	if c.header_ == nil {
 22170  		c.header_ = make(http.Header)
 22171  	}
 22172  	return c.header_
 22173  }
 22174  
 22175  func (c *OrganizationsResourceValueConfigsPatchCall) doRequest(alt string) (*http.Response, error) {
 22176  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 22177  	var body io.Reader = nil
 22178  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1resourcevalueconfig)
 22179  	if err != nil {
 22180  		return nil, err
 22181  	}
 22182  	c.urlParams_.Set("alt", alt)
 22183  	c.urlParams_.Set("prettyPrint", "false")
 22184  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 22185  	urls += "?" + c.urlParams_.Encode()
 22186  	req, err := http.NewRequest("PATCH", urls, body)
 22187  	if err != nil {
 22188  		return nil, err
 22189  	}
 22190  	req.Header = reqHeaders
 22191  	googleapi.Expand(req.URL, map[string]string{
 22192  		"name": c.name,
 22193  	})
 22194  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22195  }
 22196  
 22197  // Do executes the "securitycenter.organizations.resourceValueConfigs.patch" call.
 22198  // Any non-2xx status code is an error. Response headers are in either
 22199  // *GoogleCloudSecuritycenterV1ResourceValueConfig.ServerResponse.Header or (if
 22200  // a response was returned at all) in error.(*googleapi.Error).Header. Use
 22201  // googleapi.IsNotModified to check whether the returned error was because
 22202  // http.StatusNotModified was returned.
 22203  func (c *OrganizationsResourceValueConfigsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1ResourceValueConfig, error) {
 22204  	gensupport.SetOptions(c.urlParams_, opts...)
 22205  	res, err := c.doRequest("json")
 22206  	if res != nil && res.StatusCode == http.StatusNotModified {
 22207  		if res.Body != nil {
 22208  			res.Body.Close()
 22209  		}
 22210  		return nil, gensupport.WrapError(&googleapi.Error{
 22211  			Code:   res.StatusCode,
 22212  			Header: res.Header,
 22213  		})
 22214  	}
 22215  	if err != nil {
 22216  		return nil, err
 22217  	}
 22218  	defer googleapi.CloseBody(res)
 22219  	if err := googleapi.CheckResponse(res); err != nil {
 22220  		return nil, gensupport.WrapError(err)
 22221  	}
 22222  	ret := &GoogleCloudSecuritycenterV1ResourceValueConfig{
 22223  		ServerResponse: googleapi.ServerResponse{
 22224  			Header:         res.Header,
 22225  			HTTPStatusCode: res.StatusCode,
 22226  		},
 22227  	}
 22228  	target := &ret
 22229  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22230  		return nil, err
 22231  	}
 22232  	return ret, nil
 22233  }
 22234  
 22235  type OrganizationsSecurityHealthAnalyticsSettingsCustomModulesCreateCall struct {
 22236  	s                                                              *Service
 22237  	parent                                                         string
 22238  	googlecloudsecuritycenterv1securityhealthanalyticscustommodule *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule
 22239  	urlParams_                                                     gensupport.URLParams
 22240  	ctx_                                                           context.Context
 22241  	header_                                                        http.Header
 22242  }
 22243  
 22244  // Create: Creates a resident SecurityHealthAnalyticsCustomModule at the scope
 22245  // of the given CRM parent, and also creates inherited
 22246  // SecurityHealthAnalyticsCustomModules for all CRM descendants of the given
 22247  // parent. These modules are enabled by default.
 22248  //
 22249  //   - parent: Resource name of the new custom module's parent. Its format is
 22250  //     "organizations/{organization}/securityHealthAnalyticsSettings",
 22251  //     "folders/{folder}/securityHealthAnalyticsSettings", or
 22252  //     "projects/{project}/securityHealthAnalyticsSettings".
 22253  func (r *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesService) Create(parent string, googlecloudsecuritycenterv1securityhealthanalyticscustommodule *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesCreateCall {
 22254  	c := &OrganizationsSecurityHealthAnalyticsSettingsCustomModulesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22255  	c.parent = parent
 22256  	c.googlecloudsecuritycenterv1securityhealthanalyticscustommodule = googlecloudsecuritycenterv1securityhealthanalyticscustommodule
 22257  	return c
 22258  }
 22259  
 22260  // Fields allows partial responses to be retrieved. See
 22261  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 22262  // details.
 22263  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesCreateCall) Fields(s ...googleapi.Field) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesCreateCall {
 22264  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22265  	return c
 22266  }
 22267  
 22268  // Context sets the context to be used in this call's Do method.
 22269  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesCreateCall) Context(ctx context.Context) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesCreateCall {
 22270  	c.ctx_ = ctx
 22271  	return c
 22272  }
 22273  
 22274  // Header returns a http.Header that can be modified by the caller to add
 22275  // headers to the request.
 22276  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesCreateCall) Header() http.Header {
 22277  	if c.header_ == nil {
 22278  		c.header_ = make(http.Header)
 22279  	}
 22280  	return c.header_
 22281  }
 22282  
 22283  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesCreateCall) doRequest(alt string) (*http.Response, error) {
 22284  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 22285  	var body io.Reader = nil
 22286  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1securityhealthanalyticscustommodule)
 22287  	if err != nil {
 22288  		return nil, err
 22289  	}
 22290  	c.urlParams_.Set("alt", alt)
 22291  	c.urlParams_.Set("prettyPrint", "false")
 22292  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules")
 22293  	urls += "?" + c.urlParams_.Encode()
 22294  	req, err := http.NewRequest("POST", urls, body)
 22295  	if err != nil {
 22296  		return nil, err
 22297  	}
 22298  	req.Header = reqHeaders
 22299  	googleapi.Expand(req.URL, map[string]string{
 22300  		"parent": c.parent,
 22301  	})
 22302  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22303  }
 22304  
 22305  // Do executes the "securitycenter.organizations.securityHealthAnalyticsSettings.customModules.create" call.
 22306  // Any non-2xx status code is an error. Response headers are in either
 22307  // *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.ServerRespons
 22308  // e.Header or (if a response was returned at all) in
 22309  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 22310  // whether the returned error was because http.StatusNotModified was returned.
 22311  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule, error) {
 22312  	gensupport.SetOptions(c.urlParams_, opts...)
 22313  	res, err := c.doRequest("json")
 22314  	if res != nil && res.StatusCode == http.StatusNotModified {
 22315  		if res.Body != nil {
 22316  			res.Body.Close()
 22317  		}
 22318  		return nil, gensupport.WrapError(&googleapi.Error{
 22319  			Code:   res.StatusCode,
 22320  			Header: res.Header,
 22321  		})
 22322  	}
 22323  	if err != nil {
 22324  		return nil, err
 22325  	}
 22326  	defer googleapi.CloseBody(res)
 22327  	if err := googleapi.CheckResponse(res); err != nil {
 22328  		return nil, gensupport.WrapError(err)
 22329  	}
 22330  	ret := &GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule{
 22331  		ServerResponse: googleapi.ServerResponse{
 22332  			Header:         res.Header,
 22333  			HTTPStatusCode: res.StatusCode,
 22334  		},
 22335  	}
 22336  	target := &ret
 22337  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22338  		return nil, err
 22339  	}
 22340  	return ret, nil
 22341  }
 22342  
 22343  type OrganizationsSecurityHealthAnalyticsSettingsCustomModulesDeleteCall struct {
 22344  	s          *Service
 22345  	name       string
 22346  	urlParams_ gensupport.URLParams
 22347  	ctx_       context.Context
 22348  	header_    http.Header
 22349  }
 22350  
 22351  // Delete: Deletes the specified SecurityHealthAnalyticsCustomModule and all of
 22352  // its descendants in the CRM hierarchy. This method is only supported for
 22353  // resident custom modules.
 22354  //
 22355  //   - name: Name of the custom module to delete. Its format is
 22356  //     "organizations/{organization}/securityHealthAnalyticsSettings/customModules
 22357  //     /{customModule}",
 22358  //     "folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModu
 22359  //     le}", or
 22360  //     "projects/{project}/securityHealthAnalyticsSettings/customModules/{customMo
 22361  //     dule}".
 22362  func (r *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesService) Delete(name string) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesDeleteCall {
 22363  	c := &OrganizationsSecurityHealthAnalyticsSettingsCustomModulesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22364  	c.name = name
 22365  	return c
 22366  }
 22367  
 22368  // Fields allows partial responses to be retrieved. See
 22369  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 22370  // details.
 22371  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesDeleteCall) Fields(s ...googleapi.Field) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesDeleteCall {
 22372  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22373  	return c
 22374  }
 22375  
 22376  // Context sets the context to be used in this call's Do method.
 22377  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesDeleteCall) Context(ctx context.Context) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesDeleteCall {
 22378  	c.ctx_ = ctx
 22379  	return c
 22380  }
 22381  
 22382  // Header returns a http.Header that can be modified by the caller to add
 22383  // headers to the request.
 22384  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesDeleteCall) Header() http.Header {
 22385  	if c.header_ == nil {
 22386  		c.header_ = make(http.Header)
 22387  	}
 22388  	return c.header_
 22389  }
 22390  
 22391  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesDeleteCall) doRequest(alt string) (*http.Response, error) {
 22392  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 22393  	var body io.Reader = nil
 22394  	c.urlParams_.Set("alt", alt)
 22395  	c.urlParams_.Set("prettyPrint", "false")
 22396  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 22397  	urls += "?" + c.urlParams_.Encode()
 22398  	req, err := http.NewRequest("DELETE", urls, body)
 22399  	if err != nil {
 22400  		return nil, err
 22401  	}
 22402  	req.Header = reqHeaders
 22403  	googleapi.Expand(req.URL, map[string]string{
 22404  		"name": c.name,
 22405  	})
 22406  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22407  }
 22408  
 22409  // Do executes the "securitycenter.organizations.securityHealthAnalyticsSettings.customModules.delete" call.
 22410  // Any non-2xx status code is an error. Response headers are in either
 22411  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 22412  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 22413  // whether the returned error was because http.StatusNotModified was returned.
 22414  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 22415  	gensupport.SetOptions(c.urlParams_, opts...)
 22416  	res, err := c.doRequest("json")
 22417  	if res != nil && res.StatusCode == http.StatusNotModified {
 22418  		if res.Body != nil {
 22419  			res.Body.Close()
 22420  		}
 22421  		return nil, gensupport.WrapError(&googleapi.Error{
 22422  			Code:   res.StatusCode,
 22423  			Header: res.Header,
 22424  		})
 22425  	}
 22426  	if err != nil {
 22427  		return nil, err
 22428  	}
 22429  	defer googleapi.CloseBody(res)
 22430  	if err := googleapi.CheckResponse(res); err != nil {
 22431  		return nil, gensupport.WrapError(err)
 22432  	}
 22433  	ret := &Empty{
 22434  		ServerResponse: googleapi.ServerResponse{
 22435  			Header:         res.Header,
 22436  			HTTPStatusCode: res.StatusCode,
 22437  		},
 22438  	}
 22439  	target := &ret
 22440  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22441  		return nil, err
 22442  	}
 22443  	return ret, nil
 22444  }
 22445  
 22446  type OrganizationsSecurityHealthAnalyticsSettingsCustomModulesGetCall struct {
 22447  	s            *Service
 22448  	name         string
 22449  	urlParams_   gensupport.URLParams
 22450  	ifNoneMatch_ string
 22451  	ctx_         context.Context
 22452  	header_      http.Header
 22453  }
 22454  
 22455  // Get: Retrieves a SecurityHealthAnalyticsCustomModule.
 22456  //
 22457  //   - name: Name of the custom module to get. Its format is
 22458  //     "organizations/{organization}/securityHealthAnalyticsSettings/customModules
 22459  //     /{customModule}",
 22460  //     "folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModu
 22461  //     le}", or
 22462  //     "projects/{project}/securityHealthAnalyticsSettings/customModules/{customMo
 22463  //     dule}".
 22464  func (r *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesService) Get(name string) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesGetCall {
 22465  	c := &OrganizationsSecurityHealthAnalyticsSettingsCustomModulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22466  	c.name = name
 22467  	return c
 22468  }
 22469  
 22470  // Fields allows partial responses to be retrieved. See
 22471  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 22472  // details.
 22473  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesGetCall) Fields(s ...googleapi.Field) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesGetCall {
 22474  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22475  	return c
 22476  }
 22477  
 22478  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 22479  // object's ETag matches the given value. This is useful for getting updates
 22480  // only after the object has changed since the last request.
 22481  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesGetCall) IfNoneMatch(entityTag string) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesGetCall {
 22482  	c.ifNoneMatch_ = entityTag
 22483  	return c
 22484  }
 22485  
 22486  // Context sets the context to be used in this call's Do method.
 22487  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesGetCall) Context(ctx context.Context) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesGetCall {
 22488  	c.ctx_ = ctx
 22489  	return c
 22490  }
 22491  
 22492  // Header returns a http.Header that can be modified by the caller to add
 22493  // headers to the request.
 22494  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesGetCall) Header() http.Header {
 22495  	if c.header_ == nil {
 22496  		c.header_ = make(http.Header)
 22497  	}
 22498  	return c.header_
 22499  }
 22500  
 22501  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesGetCall) doRequest(alt string) (*http.Response, error) {
 22502  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 22503  	if c.ifNoneMatch_ != "" {
 22504  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 22505  	}
 22506  	var body io.Reader = nil
 22507  	c.urlParams_.Set("alt", alt)
 22508  	c.urlParams_.Set("prettyPrint", "false")
 22509  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 22510  	urls += "?" + c.urlParams_.Encode()
 22511  	req, err := http.NewRequest("GET", urls, body)
 22512  	if err != nil {
 22513  		return nil, err
 22514  	}
 22515  	req.Header = reqHeaders
 22516  	googleapi.Expand(req.URL, map[string]string{
 22517  		"name": c.name,
 22518  	})
 22519  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22520  }
 22521  
 22522  // Do executes the "securitycenter.organizations.securityHealthAnalyticsSettings.customModules.get" call.
 22523  // Any non-2xx status code is an error. Response headers are in either
 22524  // *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.ServerRespons
 22525  // e.Header or (if a response was returned at all) in
 22526  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 22527  // whether the returned error was because http.StatusNotModified was returned.
 22528  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule, error) {
 22529  	gensupport.SetOptions(c.urlParams_, opts...)
 22530  	res, err := c.doRequest("json")
 22531  	if res != nil && res.StatusCode == http.StatusNotModified {
 22532  		if res.Body != nil {
 22533  			res.Body.Close()
 22534  		}
 22535  		return nil, gensupport.WrapError(&googleapi.Error{
 22536  			Code:   res.StatusCode,
 22537  			Header: res.Header,
 22538  		})
 22539  	}
 22540  	if err != nil {
 22541  		return nil, err
 22542  	}
 22543  	defer googleapi.CloseBody(res)
 22544  	if err := googleapi.CheckResponse(res); err != nil {
 22545  		return nil, gensupport.WrapError(err)
 22546  	}
 22547  	ret := &GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule{
 22548  		ServerResponse: googleapi.ServerResponse{
 22549  			Header:         res.Header,
 22550  			HTTPStatusCode: res.StatusCode,
 22551  		},
 22552  	}
 22553  	target := &ret
 22554  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22555  		return nil, err
 22556  	}
 22557  	return ret, nil
 22558  }
 22559  
 22560  type OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListCall struct {
 22561  	s            *Service
 22562  	parent       string
 22563  	urlParams_   gensupport.URLParams
 22564  	ifNoneMatch_ string
 22565  	ctx_         context.Context
 22566  	header_      http.Header
 22567  }
 22568  
 22569  // List: Returns a list of all SecurityHealthAnalyticsCustomModules for the
 22570  // given parent. This includes resident modules defined at the scope of the
 22571  // parent, and inherited modules, inherited from CRM ancestors.
 22572  //
 22573  //   - parent: Name of parent to list custom modules. Its format is
 22574  //     "organizations/{organization}/securityHealthAnalyticsSettings",
 22575  //     "folders/{folder}/securityHealthAnalyticsSettings", or
 22576  //     "projects/{project}/securityHealthAnalyticsSettings".
 22577  func (r *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesService) List(parent string) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListCall {
 22578  	c := &OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22579  	c.parent = parent
 22580  	return c
 22581  }
 22582  
 22583  // PageSize sets the optional parameter "pageSize": The maximum number of
 22584  // results to return in a single response. Default is 10, minimum is 1, maximum
 22585  // is 1000.
 22586  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListCall) PageSize(pageSize int64) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListCall {
 22587  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 22588  	return c
 22589  }
 22590  
 22591  // PageToken sets the optional parameter "pageToken": The value returned by the
 22592  // last call indicating a continuation
 22593  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListCall) PageToken(pageToken string) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListCall {
 22594  	c.urlParams_.Set("pageToken", pageToken)
 22595  	return c
 22596  }
 22597  
 22598  // Fields allows partial responses to be retrieved. See
 22599  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 22600  // details.
 22601  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListCall) Fields(s ...googleapi.Field) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListCall {
 22602  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22603  	return c
 22604  }
 22605  
 22606  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 22607  // object's ETag matches the given value. This is useful for getting updates
 22608  // only after the object has changed since the last request.
 22609  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListCall) IfNoneMatch(entityTag string) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListCall {
 22610  	c.ifNoneMatch_ = entityTag
 22611  	return c
 22612  }
 22613  
 22614  // Context sets the context to be used in this call's Do method.
 22615  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListCall) Context(ctx context.Context) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListCall {
 22616  	c.ctx_ = ctx
 22617  	return c
 22618  }
 22619  
 22620  // Header returns a http.Header that can be modified by the caller to add
 22621  // headers to the request.
 22622  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListCall) Header() http.Header {
 22623  	if c.header_ == nil {
 22624  		c.header_ = make(http.Header)
 22625  	}
 22626  	return c.header_
 22627  }
 22628  
 22629  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListCall) doRequest(alt string) (*http.Response, error) {
 22630  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 22631  	if c.ifNoneMatch_ != "" {
 22632  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 22633  	}
 22634  	var body io.Reader = nil
 22635  	c.urlParams_.Set("alt", alt)
 22636  	c.urlParams_.Set("prettyPrint", "false")
 22637  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules")
 22638  	urls += "?" + c.urlParams_.Encode()
 22639  	req, err := http.NewRequest("GET", urls, body)
 22640  	if err != nil {
 22641  		return nil, err
 22642  	}
 22643  	req.Header = reqHeaders
 22644  	googleapi.Expand(req.URL, map[string]string{
 22645  		"parent": c.parent,
 22646  	})
 22647  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22648  }
 22649  
 22650  // Do executes the "securitycenter.organizations.securityHealthAnalyticsSettings.customModules.list" call.
 22651  // Any non-2xx status code is an error. Response headers are in either
 22652  // *ListSecurityHealthAnalyticsCustomModulesResponse.ServerResponse.Header or
 22653  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
 22654  // googleapi.IsNotModified to check whether the returned error was because
 22655  // http.StatusNotModified was returned.
 22656  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListCall) Do(opts ...googleapi.CallOption) (*ListSecurityHealthAnalyticsCustomModulesResponse, error) {
 22657  	gensupport.SetOptions(c.urlParams_, opts...)
 22658  	res, err := c.doRequest("json")
 22659  	if res != nil && res.StatusCode == http.StatusNotModified {
 22660  		if res.Body != nil {
 22661  			res.Body.Close()
 22662  		}
 22663  		return nil, gensupport.WrapError(&googleapi.Error{
 22664  			Code:   res.StatusCode,
 22665  			Header: res.Header,
 22666  		})
 22667  	}
 22668  	if err != nil {
 22669  		return nil, err
 22670  	}
 22671  	defer googleapi.CloseBody(res)
 22672  	if err := googleapi.CheckResponse(res); err != nil {
 22673  		return nil, gensupport.WrapError(err)
 22674  	}
 22675  	ret := &ListSecurityHealthAnalyticsCustomModulesResponse{
 22676  		ServerResponse: googleapi.ServerResponse{
 22677  			Header:         res.Header,
 22678  			HTTPStatusCode: res.StatusCode,
 22679  		},
 22680  	}
 22681  	target := &ret
 22682  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22683  		return nil, err
 22684  	}
 22685  	return ret, nil
 22686  }
 22687  
 22688  // Pages invokes f for each page of results.
 22689  // A non-nil error returned from f will halt the iteration.
 22690  // The provided context supersedes any context provided to the Context method.
 22691  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListCall) Pages(ctx context.Context, f func(*ListSecurityHealthAnalyticsCustomModulesResponse) error) error {
 22692  	c.ctx_ = ctx
 22693  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 22694  	for {
 22695  		x, err := c.Do()
 22696  		if err != nil {
 22697  			return err
 22698  		}
 22699  		if err := f(x); err != nil {
 22700  			return err
 22701  		}
 22702  		if x.NextPageToken == "" {
 22703  			return nil
 22704  		}
 22705  		c.PageToken(x.NextPageToken)
 22706  	}
 22707  }
 22708  
 22709  type OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall struct {
 22710  	s            *Service
 22711  	parent       string
 22712  	urlParams_   gensupport.URLParams
 22713  	ifNoneMatch_ string
 22714  	ctx_         context.Context
 22715  	header_      http.Header
 22716  }
 22717  
 22718  // ListDescendant: Returns a list of all resident
 22719  // SecurityHealthAnalyticsCustomModules under the given CRM parent and all of
 22720  // the parent’s CRM descendants.
 22721  //
 22722  //   - parent: Name of parent to list descendant custom modules. Its format is
 22723  //     "organizations/{organization}/securityHealthAnalyticsSettings",
 22724  //     "folders/{folder}/securityHealthAnalyticsSettings", or
 22725  //     "projects/{project}/securityHealthAnalyticsSettings".
 22726  func (r *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesService) ListDescendant(parent string) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall {
 22727  	c := &OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22728  	c.parent = parent
 22729  	return c
 22730  }
 22731  
 22732  // PageSize sets the optional parameter "pageSize": The maximum number of
 22733  // results to return in a single response. Default is 10, minimum is 1, maximum
 22734  // is 1000.
 22735  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) PageSize(pageSize int64) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall {
 22736  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 22737  	return c
 22738  }
 22739  
 22740  // PageToken sets the optional parameter "pageToken": The value returned by the
 22741  // last call indicating a continuation
 22742  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) PageToken(pageToken string) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall {
 22743  	c.urlParams_.Set("pageToken", pageToken)
 22744  	return c
 22745  }
 22746  
 22747  // Fields allows partial responses to be retrieved. See
 22748  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 22749  // details.
 22750  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) Fields(s ...googleapi.Field) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall {
 22751  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22752  	return c
 22753  }
 22754  
 22755  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 22756  // object's ETag matches the given value. This is useful for getting updates
 22757  // only after the object has changed since the last request.
 22758  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) IfNoneMatch(entityTag string) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall {
 22759  	c.ifNoneMatch_ = entityTag
 22760  	return c
 22761  }
 22762  
 22763  // Context sets the context to be used in this call's Do method.
 22764  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) Context(ctx context.Context) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall {
 22765  	c.ctx_ = ctx
 22766  	return c
 22767  }
 22768  
 22769  // Header returns a http.Header that can be modified by the caller to add
 22770  // headers to the request.
 22771  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) Header() http.Header {
 22772  	if c.header_ == nil {
 22773  		c.header_ = make(http.Header)
 22774  	}
 22775  	return c.header_
 22776  }
 22777  
 22778  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) doRequest(alt string) (*http.Response, error) {
 22779  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 22780  	if c.ifNoneMatch_ != "" {
 22781  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 22782  	}
 22783  	var body io.Reader = nil
 22784  	c.urlParams_.Set("alt", alt)
 22785  	c.urlParams_.Set("prettyPrint", "false")
 22786  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules:listDescendant")
 22787  	urls += "?" + c.urlParams_.Encode()
 22788  	req, err := http.NewRequest("GET", urls, body)
 22789  	if err != nil {
 22790  		return nil, err
 22791  	}
 22792  	req.Header = reqHeaders
 22793  	googleapi.Expand(req.URL, map[string]string{
 22794  		"parent": c.parent,
 22795  	})
 22796  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22797  }
 22798  
 22799  // Do executes the "securitycenter.organizations.securityHealthAnalyticsSettings.customModules.listDescendant" call.
 22800  // Any non-2xx status code is an error. Response headers are in either
 22801  // *ListDescendantSecurityHealthAnalyticsCustomModulesResponse.ServerResponse.He
 22802  // ader or (if a response was returned at all) in
 22803  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 22804  // whether the returned error was because http.StatusNotModified was returned.
 22805  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) Do(opts ...googleapi.CallOption) (*ListDescendantSecurityHealthAnalyticsCustomModulesResponse, error) {
 22806  	gensupport.SetOptions(c.urlParams_, opts...)
 22807  	res, err := c.doRequest("json")
 22808  	if res != nil && res.StatusCode == http.StatusNotModified {
 22809  		if res.Body != nil {
 22810  			res.Body.Close()
 22811  		}
 22812  		return nil, gensupport.WrapError(&googleapi.Error{
 22813  			Code:   res.StatusCode,
 22814  			Header: res.Header,
 22815  		})
 22816  	}
 22817  	if err != nil {
 22818  		return nil, err
 22819  	}
 22820  	defer googleapi.CloseBody(res)
 22821  	if err := googleapi.CheckResponse(res); err != nil {
 22822  		return nil, gensupport.WrapError(err)
 22823  	}
 22824  	ret := &ListDescendantSecurityHealthAnalyticsCustomModulesResponse{
 22825  		ServerResponse: googleapi.ServerResponse{
 22826  			Header:         res.Header,
 22827  			HTTPStatusCode: res.StatusCode,
 22828  		},
 22829  	}
 22830  	target := &ret
 22831  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22832  		return nil, err
 22833  	}
 22834  	return ret, nil
 22835  }
 22836  
 22837  // Pages invokes f for each page of results.
 22838  // A non-nil error returned from f will halt the iteration.
 22839  // The provided context supersedes any context provided to the Context method.
 22840  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) Pages(ctx context.Context, f func(*ListDescendantSecurityHealthAnalyticsCustomModulesResponse) error) error {
 22841  	c.ctx_ = ctx
 22842  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 22843  	for {
 22844  		x, err := c.Do()
 22845  		if err != nil {
 22846  			return err
 22847  		}
 22848  		if err := f(x); err != nil {
 22849  			return err
 22850  		}
 22851  		if x.NextPageToken == "" {
 22852  			return nil
 22853  		}
 22854  		c.PageToken(x.NextPageToken)
 22855  	}
 22856  }
 22857  
 22858  type OrganizationsSecurityHealthAnalyticsSettingsCustomModulesPatchCall struct {
 22859  	s                                                              *Service
 22860  	name                                                           string
 22861  	googlecloudsecuritycenterv1securityhealthanalyticscustommodule *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule
 22862  	urlParams_                                                     gensupport.URLParams
 22863  	ctx_                                                           context.Context
 22864  	header_                                                        http.Header
 22865  }
 22866  
 22867  // Patch: Updates the SecurityHealthAnalyticsCustomModule under the given name
 22868  // based on the given update mask. Updating the enablement state is supported
 22869  // on both resident and inherited modules (though resident modules cannot have
 22870  // an enablement state of "inherited"). Updating the display name and custom
 22871  // config of a module is supported on resident modules only.
 22872  //
 22873  //   - name: Immutable. The resource name of the custom module. Its format is
 22874  //     "organizations/{organization}/securityHealthAnalyticsSettings/customModules
 22875  //     /{customModule}", or
 22876  //     "folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModu
 22877  //     le}", or
 22878  //     "projects/{project}/securityHealthAnalyticsSettings/customModules/{customMo
 22879  //     dule}" The id {customModule} is server-generated and is not user settable.
 22880  //     It will be a numeric id containing 1-20 digits.
 22881  func (r *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesService) Patch(name string, googlecloudsecuritycenterv1securityhealthanalyticscustommodule *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesPatchCall {
 22882  	c := &OrganizationsSecurityHealthAnalyticsSettingsCustomModulesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22883  	c.name = name
 22884  	c.googlecloudsecuritycenterv1securityhealthanalyticscustommodule = googlecloudsecuritycenterv1securityhealthanalyticscustommodule
 22885  	return c
 22886  }
 22887  
 22888  // UpdateMask sets the optional parameter "updateMask": The list of fields to
 22889  // be updated. The only fields that can be updated are `enablement_state` and
 22890  // `custom_config`. If empty or set to the wildcard value `*`, both
 22891  // `enablement_state` and `custom_config` are updated.
 22892  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesPatchCall) UpdateMask(updateMask string) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesPatchCall {
 22893  	c.urlParams_.Set("updateMask", updateMask)
 22894  	return c
 22895  }
 22896  
 22897  // Fields allows partial responses to be retrieved. See
 22898  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 22899  // details.
 22900  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesPatchCall) Fields(s ...googleapi.Field) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesPatchCall {
 22901  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22902  	return c
 22903  }
 22904  
 22905  // Context sets the context to be used in this call's Do method.
 22906  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesPatchCall) Context(ctx context.Context) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesPatchCall {
 22907  	c.ctx_ = ctx
 22908  	return c
 22909  }
 22910  
 22911  // Header returns a http.Header that can be modified by the caller to add
 22912  // headers to the request.
 22913  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesPatchCall) Header() http.Header {
 22914  	if c.header_ == nil {
 22915  		c.header_ = make(http.Header)
 22916  	}
 22917  	return c.header_
 22918  }
 22919  
 22920  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesPatchCall) doRequest(alt string) (*http.Response, error) {
 22921  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 22922  	var body io.Reader = nil
 22923  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1securityhealthanalyticscustommodule)
 22924  	if err != nil {
 22925  		return nil, err
 22926  	}
 22927  	c.urlParams_.Set("alt", alt)
 22928  	c.urlParams_.Set("prettyPrint", "false")
 22929  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 22930  	urls += "?" + c.urlParams_.Encode()
 22931  	req, err := http.NewRequest("PATCH", urls, body)
 22932  	if err != nil {
 22933  		return nil, err
 22934  	}
 22935  	req.Header = reqHeaders
 22936  	googleapi.Expand(req.URL, map[string]string{
 22937  		"name": c.name,
 22938  	})
 22939  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22940  }
 22941  
 22942  // Do executes the "securitycenter.organizations.securityHealthAnalyticsSettings.customModules.patch" call.
 22943  // Any non-2xx status code is an error. Response headers are in either
 22944  // *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.ServerRespons
 22945  // e.Header or (if a response was returned at all) in
 22946  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 22947  // whether the returned error was because http.StatusNotModified was returned.
 22948  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule, error) {
 22949  	gensupport.SetOptions(c.urlParams_, opts...)
 22950  	res, err := c.doRequest("json")
 22951  	if res != nil && res.StatusCode == http.StatusNotModified {
 22952  		if res.Body != nil {
 22953  			res.Body.Close()
 22954  		}
 22955  		return nil, gensupport.WrapError(&googleapi.Error{
 22956  			Code:   res.StatusCode,
 22957  			Header: res.Header,
 22958  		})
 22959  	}
 22960  	if err != nil {
 22961  		return nil, err
 22962  	}
 22963  	defer googleapi.CloseBody(res)
 22964  	if err := googleapi.CheckResponse(res); err != nil {
 22965  		return nil, gensupport.WrapError(err)
 22966  	}
 22967  	ret := &GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule{
 22968  		ServerResponse: googleapi.ServerResponse{
 22969  			Header:         res.Header,
 22970  			HTTPStatusCode: res.StatusCode,
 22971  		},
 22972  	}
 22973  	target := &ret
 22974  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22975  		return nil, err
 22976  	}
 22977  	return ret, nil
 22978  }
 22979  
 22980  type OrganizationsSecurityHealthAnalyticsSettingsCustomModulesSimulateCall struct {
 22981  	s                                                  *Service
 22982  	parent                                             string
 22983  	simulatesecurityhealthanalyticscustommodulerequest *SimulateSecurityHealthAnalyticsCustomModuleRequest
 22984  	urlParams_                                         gensupport.URLParams
 22985  	ctx_                                               context.Context
 22986  	header_                                            http.Header
 22987  }
 22988  
 22989  // Simulate: Simulates a given SecurityHealthAnalyticsCustomModule and
 22990  // Resource.
 22991  //
 22992  //   - parent: The relative resource name of the organization, project, or
 22993  //     folder. For more information about relative resource names, see Relative
 22994  //     Resource Name
 22995  //     (https://cloud.google.com/apis/design/resource_names#relative_resource_name)
 22996  //     Example: `organizations/{organization_id}`.
 22997  func (r *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesService) Simulate(parent string, simulatesecurityhealthanalyticscustommodulerequest *SimulateSecurityHealthAnalyticsCustomModuleRequest) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesSimulateCall {
 22998  	c := &OrganizationsSecurityHealthAnalyticsSettingsCustomModulesSimulateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22999  	c.parent = parent
 23000  	c.simulatesecurityhealthanalyticscustommodulerequest = simulatesecurityhealthanalyticscustommodulerequest
 23001  	return c
 23002  }
 23003  
 23004  // Fields allows partial responses to be retrieved. See
 23005  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 23006  // details.
 23007  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesSimulateCall) Fields(s ...googleapi.Field) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesSimulateCall {
 23008  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23009  	return c
 23010  }
 23011  
 23012  // Context sets the context to be used in this call's Do method.
 23013  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesSimulateCall) Context(ctx context.Context) *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesSimulateCall {
 23014  	c.ctx_ = ctx
 23015  	return c
 23016  }
 23017  
 23018  // Header returns a http.Header that can be modified by the caller to add
 23019  // headers to the request.
 23020  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesSimulateCall) Header() http.Header {
 23021  	if c.header_ == nil {
 23022  		c.header_ = make(http.Header)
 23023  	}
 23024  	return c.header_
 23025  }
 23026  
 23027  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesSimulateCall) doRequest(alt string) (*http.Response, error) {
 23028  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 23029  	var body io.Reader = nil
 23030  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.simulatesecurityhealthanalyticscustommodulerequest)
 23031  	if err != nil {
 23032  		return nil, err
 23033  	}
 23034  	c.urlParams_.Set("alt", alt)
 23035  	c.urlParams_.Set("prettyPrint", "false")
 23036  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules:simulate")
 23037  	urls += "?" + c.urlParams_.Encode()
 23038  	req, err := http.NewRequest("POST", urls, body)
 23039  	if err != nil {
 23040  		return nil, err
 23041  	}
 23042  	req.Header = reqHeaders
 23043  	googleapi.Expand(req.URL, map[string]string{
 23044  		"parent": c.parent,
 23045  	})
 23046  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 23047  }
 23048  
 23049  // Do executes the "securitycenter.organizations.securityHealthAnalyticsSettings.customModules.simulate" call.
 23050  // Any non-2xx status code is an error. Response headers are in either
 23051  // *SimulateSecurityHealthAnalyticsCustomModuleResponse.ServerResponse.Header
 23052  // or (if a response was returned at all) in error.(*googleapi.Error).Header.
 23053  // Use googleapi.IsNotModified to check whether the returned error was because
 23054  // http.StatusNotModified was returned.
 23055  func (c *OrganizationsSecurityHealthAnalyticsSettingsCustomModulesSimulateCall) Do(opts ...googleapi.CallOption) (*SimulateSecurityHealthAnalyticsCustomModuleResponse, error) {
 23056  	gensupport.SetOptions(c.urlParams_, opts...)
 23057  	res, err := c.doRequest("json")
 23058  	if res != nil && res.StatusCode == http.StatusNotModified {
 23059  		if res.Body != nil {
 23060  			res.Body.Close()
 23061  		}
 23062  		return nil, gensupport.WrapError(&googleapi.Error{
 23063  			Code:   res.StatusCode,
 23064  			Header: res.Header,
 23065  		})
 23066  	}
 23067  	if err != nil {
 23068  		return nil, err
 23069  	}
 23070  	defer googleapi.CloseBody(res)
 23071  	if err := googleapi.CheckResponse(res); err != nil {
 23072  		return nil, gensupport.WrapError(err)
 23073  	}
 23074  	ret := &SimulateSecurityHealthAnalyticsCustomModuleResponse{
 23075  		ServerResponse: googleapi.ServerResponse{
 23076  			Header:         res.Header,
 23077  			HTTPStatusCode: res.StatusCode,
 23078  		},
 23079  	}
 23080  	target := &ret
 23081  	if err := gensupport.DecodeResponse(target, res); err != nil {
 23082  		return nil, err
 23083  	}
 23084  	return ret, nil
 23085  }
 23086  
 23087  type OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall struct {
 23088  	s            *Service
 23089  	name         string
 23090  	urlParams_   gensupport.URLParams
 23091  	ifNoneMatch_ string
 23092  	ctx_         context.Context
 23093  	header_      http.Header
 23094  }
 23095  
 23096  // Get: Retrieves an EffectiveSecurityHealthAnalyticsCustomModule.
 23097  //
 23098  //   - name: Name of the effective custom module to get. Its format is
 23099  //     "organizations/{organization}/securityHealthAnalyticsSettings/effectiveCust
 23100  //     omModules/{customModule}",
 23101  //     "folders/{folder}/securityHealthAnalyticsSettings/effectiveCustomModules/{c
 23102  //     ustomModule}", or
 23103  //     "projects/{project}/securityHealthAnalyticsSettings/effectiveCustomModules/
 23104  //     {customModule}".
 23105  func (r *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesService) Get(name string) *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall {
 23106  	c := &OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23107  	c.name = name
 23108  	return c
 23109  }
 23110  
 23111  // Fields allows partial responses to be retrieved. See
 23112  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 23113  // details.
 23114  func (c *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall) Fields(s ...googleapi.Field) *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall {
 23115  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23116  	return c
 23117  }
 23118  
 23119  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 23120  // object's ETag matches the given value. This is useful for getting updates
 23121  // only after the object has changed since the last request.
 23122  func (c *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall) IfNoneMatch(entityTag string) *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall {
 23123  	c.ifNoneMatch_ = entityTag
 23124  	return c
 23125  }
 23126  
 23127  // Context sets the context to be used in this call's Do method.
 23128  func (c *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall) Context(ctx context.Context) *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall {
 23129  	c.ctx_ = ctx
 23130  	return c
 23131  }
 23132  
 23133  // Header returns a http.Header that can be modified by the caller to add
 23134  // headers to the request.
 23135  func (c *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall) Header() http.Header {
 23136  	if c.header_ == nil {
 23137  		c.header_ = make(http.Header)
 23138  	}
 23139  	return c.header_
 23140  }
 23141  
 23142  func (c *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall) doRequest(alt string) (*http.Response, error) {
 23143  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 23144  	if c.ifNoneMatch_ != "" {
 23145  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 23146  	}
 23147  	var body io.Reader = nil
 23148  	c.urlParams_.Set("alt", alt)
 23149  	c.urlParams_.Set("prettyPrint", "false")
 23150  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 23151  	urls += "?" + c.urlParams_.Encode()
 23152  	req, err := http.NewRequest("GET", urls, body)
 23153  	if err != nil {
 23154  		return nil, err
 23155  	}
 23156  	req.Header = reqHeaders
 23157  	googleapi.Expand(req.URL, map[string]string{
 23158  		"name": c.name,
 23159  	})
 23160  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 23161  }
 23162  
 23163  // Do executes the "securitycenter.organizations.securityHealthAnalyticsSettings.effectiveCustomModules.get" call.
 23164  // Any non-2xx status code is an error. Response headers are in either
 23165  // *GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.Serv
 23166  // erResponse.Header or (if a response was returned at all) in
 23167  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 23168  // whether the returned error was because http.StatusNotModified was returned.
 23169  func (c *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule, error) {
 23170  	gensupport.SetOptions(c.urlParams_, opts...)
 23171  	res, err := c.doRequest("json")
 23172  	if res != nil && res.StatusCode == http.StatusNotModified {
 23173  		if res.Body != nil {
 23174  			res.Body.Close()
 23175  		}
 23176  		return nil, gensupport.WrapError(&googleapi.Error{
 23177  			Code:   res.StatusCode,
 23178  			Header: res.Header,
 23179  		})
 23180  	}
 23181  	if err != nil {
 23182  		return nil, err
 23183  	}
 23184  	defer googleapi.CloseBody(res)
 23185  	if err := googleapi.CheckResponse(res); err != nil {
 23186  		return nil, gensupport.WrapError(err)
 23187  	}
 23188  	ret := &GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule{
 23189  		ServerResponse: googleapi.ServerResponse{
 23190  			Header:         res.Header,
 23191  			HTTPStatusCode: res.StatusCode,
 23192  		},
 23193  	}
 23194  	target := &ret
 23195  	if err := gensupport.DecodeResponse(target, res); err != nil {
 23196  		return nil, err
 23197  	}
 23198  	return ret, nil
 23199  }
 23200  
 23201  type OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall struct {
 23202  	s            *Service
 23203  	parent       string
 23204  	urlParams_   gensupport.URLParams
 23205  	ifNoneMatch_ string
 23206  	ctx_         context.Context
 23207  	header_      http.Header
 23208  }
 23209  
 23210  // List: Returns a list of all EffectiveSecurityHealthAnalyticsCustomModules
 23211  // for the given parent. This includes resident modules defined at the scope of
 23212  // the parent, and inherited modules, inherited from CRM ancestors.
 23213  //
 23214  //   - parent: Name of parent to list effective custom modules. Its format is
 23215  //     "organizations/{organization}/securityHealthAnalyticsSettings",
 23216  //     "folders/{folder}/securityHealthAnalyticsSettings", or
 23217  //     "projects/{project}/securityHealthAnalyticsSettings".
 23218  func (r *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesService) List(parent string) *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall {
 23219  	c := &OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23220  	c.parent = parent
 23221  	return c
 23222  }
 23223  
 23224  // PageSize sets the optional parameter "pageSize": The maximum number of
 23225  // results to return in a single response. Default is 10, minimum is 1, maximum
 23226  // is 1000.
 23227  func (c *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) PageSize(pageSize int64) *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall {
 23228  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 23229  	return c
 23230  }
 23231  
 23232  // PageToken sets the optional parameter "pageToken": The value returned by the
 23233  // last call indicating a continuation
 23234  func (c *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) PageToken(pageToken string) *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall {
 23235  	c.urlParams_.Set("pageToken", pageToken)
 23236  	return c
 23237  }
 23238  
 23239  // Fields allows partial responses to be retrieved. See
 23240  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 23241  // details.
 23242  func (c *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) Fields(s ...googleapi.Field) *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall {
 23243  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23244  	return c
 23245  }
 23246  
 23247  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 23248  // object's ETag matches the given value. This is useful for getting updates
 23249  // only after the object has changed since the last request.
 23250  func (c *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) IfNoneMatch(entityTag string) *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall {
 23251  	c.ifNoneMatch_ = entityTag
 23252  	return c
 23253  }
 23254  
 23255  // Context sets the context to be used in this call's Do method.
 23256  func (c *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) Context(ctx context.Context) *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall {
 23257  	c.ctx_ = ctx
 23258  	return c
 23259  }
 23260  
 23261  // Header returns a http.Header that can be modified by the caller to add
 23262  // headers to the request.
 23263  func (c *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) Header() http.Header {
 23264  	if c.header_ == nil {
 23265  		c.header_ = make(http.Header)
 23266  	}
 23267  	return c.header_
 23268  }
 23269  
 23270  func (c *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) doRequest(alt string) (*http.Response, error) {
 23271  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 23272  	if c.ifNoneMatch_ != "" {
 23273  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 23274  	}
 23275  	var body io.Reader = nil
 23276  	c.urlParams_.Set("alt", alt)
 23277  	c.urlParams_.Set("prettyPrint", "false")
 23278  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/effectiveCustomModules")
 23279  	urls += "?" + c.urlParams_.Encode()
 23280  	req, err := http.NewRequest("GET", urls, body)
 23281  	if err != nil {
 23282  		return nil, err
 23283  	}
 23284  	req.Header = reqHeaders
 23285  	googleapi.Expand(req.URL, map[string]string{
 23286  		"parent": c.parent,
 23287  	})
 23288  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 23289  }
 23290  
 23291  // Do executes the "securitycenter.organizations.securityHealthAnalyticsSettings.effectiveCustomModules.list" call.
 23292  // Any non-2xx status code is an error. Response headers are in either
 23293  // *ListEffectiveSecurityHealthAnalyticsCustomModulesResponse.ServerResponse.Hea
 23294  // der or (if a response was returned at all) in
 23295  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 23296  // whether the returned error was because http.StatusNotModified was returned.
 23297  func (c *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) Do(opts ...googleapi.CallOption) (*ListEffectiveSecurityHealthAnalyticsCustomModulesResponse, error) {
 23298  	gensupport.SetOptions(c.urlParams_, opts...)
 23299  	res, err := c.doRequest("json")
 23300  	if res != nil && res.StatusCode == http.StatusNotModified {
 23301  		if res.Body != nil {
 23302  			res.Body.Close()
 23303  		}
 23304  		return nil, gensupport.WrapError(&googleapi.Error{
 23305  			Code:   res.StatusCode,
 23306  			Header: res.Header,
 23307  		})
 23308  	}
 23309  	if err != nil {
 23310  		return nil, err
 23311  	}
 23312  	defer googleapi.CloseBody(res)
 23313  	if err := googleapi.CheckResponse(res); err != nil {
 23314  		return nil, gensupport.WrapError(err)
 23315  	}
 23316  	ret := &ListEffectiveSecurityHealthAnalyticsCustomModulesResponse{
 23317  		ServerResponse: googleapi.ServerResponse{
 23318  			Header:         res.Header,
 23319  			HTTPStatusCode: res.StatusCode,
 23320  		},
 23321  	}
 23322  	target := &ret
 23323  	if err := gensupport.DecodeResponse(target, res); err != nil {
 23324  		return nil, err
 23325  	}
 23326  	return ret, nil
 23327  }
 23328  
 23329  // Pages invokes f for each page of results.
 23330  // A non-nil error returned from f will halt the iteration.
 23331  // The provided context supersedes any context provided to the Context method.
 23332  func (c *OrganizationsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) Pages(ctx context.Context, f func(*ListEffectiveSecurityHealthAnalyticsCustomModulesResponse) error) error {
 23333  	c.ctx_ = ctx
 23334  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 23335  	for {
 23336  		x, err := c.Do()
 23337  		if err != nil {
 23338  			return err
 23339  		}
 23340  		if err := f(x); err != nil {
 23341  			return err
 23342  		}
 23343  		if x.NextPageToken == "" {
 23344  			return nil
 23345  		}
 23346  		c.PageToken(x.NextPageToken)
 23347  	}
 23348  }
 23349  
 23350  type OrganizationsSimulationsGetCall struct {
 23351  	s            *Service
 23352  	name         string
 23353  	urlParams_   gensupport.URLParams
 23354  	ifNoneMatch_ string
 23355  	ctx_         context.Context
 23356  	header_      http.Header
 23357  }
 23358  
 23359  // Get: Get the simulation by name or the latest simulation for the given
 23360  // organization.
 23361  //
 23362  //   - name: The organization name or simulation name of this simulation Valid
 23363  //     format: "organizations/{organization}/simulations/latest"
 23364  //     "organizations/{organization}/simulations/{simulation}".
 23365  func (r *OrganizationsSimulationsService) Get(name string) *OrganizationsSimulationsGetCall {
 23366  	c := &OrganizationsSimulationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23367  	c.name = name
 23368  	return c
 23369  }
 23370  
 23371  // Fields allows partial responses to be retrieved. See
 23372  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 23373  // details.
 23374  func (c *OrganizationsSimulationsGetCall) Fields(s ...googleapi.Field) *OrganizationsSimulationsGetCall {
 23375  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23376  	return c
 23377  }
 23378  
 23379  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 23380  // object's ETag matches the given value. This is useful for getting updates
 23381  // only after the object has changed since the last request.
 23382  func (c *OrganizationsSimulationsGetCall) IfNoneMatch(entityTag string) *OrganizationsSimulationsGetCall {
 23383  	c.ifNoneMatch_ = entityTag
 23384  	return c
 23385  }
 23386  
 23387  // Context sets the context to be used in this call's Do method.
 23388  func (c *OrganizationsSimulationsGetCall) Context(ctx context.Context) *OrganizationsSimulationsGetCall {
 23389  	c.ctx_ = ctx
 23390  	return c
 23391  }
 23392  
 23393  // Header returns a http.Header that can be modified by the caller to add
 23394  // headers to the request.
 23395  func (c *OrganizationsSimulationsGetCall) Header() http.Header {
 23396  	if c.header_ == nil {
 23397  		c.header_ = make(http.Header)
 23398  	}
 23399  	return c.header_
 23400  }
 23401  
 23402  func (c *OrganizationsSimulationsGetCall) doRequest(alt string) (*http.Response, error) {
 23403  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 23404  	if c.ifNoneMatch_ != "" {
 23405  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 23406  	}
 23407  	var body io.Reader = nil
 23408  	c.urlParams_.Set("alt", alt)
 23409  	c.urlParams_.Set("prettyPrint", "false")
 23410  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 23411  	urls += "?" + c.urlParams_.Encode()
 23412  	req, err := http.NewRequest("GET", urls, body)
 23413  	if err != nil {
 23414  		return nil, err
 23415  	}
 23416  	req.Header = reqHeaders
 23417  	googleapi.Expand(req.URL, map[string]string{
 23418  		"name": c.name,
 23419  	})
 23420  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 23421  }
 23422  
 23423  // Do executes the "securitycenter.organizations.simulations.get" call.
 23424  // Any non-2xx status code is an error. Response headers are in either
 23425  // *Simulation.ServerResponse.Header or (if a response was returned at all) in
 23426  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 23427  // whether the returned error was because http.StatusNotModified was returned.
 23428  func (c *OrganizationsSimulationsGetCall) Do(opts ...googleapi.CallOption) (*Simulation, error) {
 23429  	gensupport.SetOptions(c.urlParams_, opts...)
 23430  	res, err := c.doRequest("json")
 23431  	if res != nil && res.StatusCode == http.StatusNotModified {
 23432  		if res.Body != nil {
 23433  			res.Body.Close()
 23434  		}
 23435  		return nil, gensupport.WrapError(&googleapi.Error{
 23436  			Code:   res.StatusCode,
 23437  			Header: res.Header,
 23438  		})
 23439  	}
 23440  	if err != nil {
 23441  		return nil, err
 23442  	}
 23443  	defer googleapi.CloseBody(res)
 23444  	if err := googleapi.CheckResponse(res); err != nil {
 23445  		return nil, gensupport.WrapError(err)
 23446  	}
 23447  	ret := &Simulation{
 23448  		ServerResponse: googleapi.ServerResponse{
 23449  			Header:         res.Header,
 23450  			HTTPStatusCode: res.StatusCode,
 23451  		},
 23452  	}
 23453  	target := &ret
 23454  	if err := gensupport.DecodeResponse(target, res); err != nil {
 23455  		return nil, err
 23456  	}
 23457  	return ret, nil
 23458  }
 23459  
 23460  type OrganizationsSimulationsAttackExposureResultsAttackPathsListCall struct {
 23461  	s            *Service
 23462  	parent       string
 23463  	urlParams_   gensupport.URLParams
 23464  	ifNoneMatch_ string
 23465  	ctx_         context.Context
 23466  	header_      http.Header
 23467  }
 23468  
 23469  // List: Lists the attack paths for a set of simulation results or valued
 23470  // resources and filter.
 23471  //
 23472  //   - parent: Name of parent to list attack paths. Valid formats:
 23473  //     "organizations/{organization}",
 23474  //     "organizations/{organization}/simulations/{simulation}"
 23475  //     "organizations/{organization}/simulations/{simulation}/attackExposureResult
 23476  //     s/{attack_exposure_result_v2}"
 23477  //     "organizations/{organization}/simulations/{simulation}/valuedResources/{val
 23478  //     ued_resource}".
 23479  func (r *OrganizationsSimulationsAttackExposureResultsAttackPathsService) List(parent string) *OrganizationsSimulationsAttackExposureResultsAttackPathsListCall {
 23480  	c := &OrganizationsSimulationsAttackExposureResultsAttackPathsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23481  	c.parent = parent
 23482  	return c
 23483  }
 23484  
 23485  // Filter sets the optional parameter "filter": The filter expression that
 23486  // filters the attack path in the response. Supported fields: *
 23487  // `valued_resources` supports =
 23488  func (c *OrganizationsSimulationsAttackExposureResultsAttackPathsListCall) Filter(filter string) *OrganizationsSimulationsAttackExposureResultsAttackPathsListCall {
 23489  	c.urlParams_.Set("filter", filter)
 23490  	return c
 23491  }
 23492  
 23493  // PageSize sets the optional parameter "pageSize": The maximum number of
 23494  // results to return in a single response. Default is 10, minimum is 1, maximum
 23495  // is 1000.
 23496  func (c *OrganizationsSimulationsAttackExposureResultsAttackPathsListCall) PageSize(pageSize int64) *OrganizationsSimulationsAttackExposureResultsAttackPathsListCall {
 23497  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 23498  	return c
 23499  }
 23500  
 23501  // PageToken sets the optional parameter "pageToken": The value returned by the
 23502  // last `ListAttackPathsResponse`; indicates that this is a continuation of a
 23503  // prior `ListAttackPaths` call, and that the system should return the next
 23504  // page of data.
 23505  func (c *OrganizationsSimulationsAttackExposureResultsAttackPathsListCall) PageToken(pageToken string) *OrganizationsSimulationsAttackExposureResultsAttackPathsListCall {
 23506  	c.urlParams_.Set("pageToken", pageToken)
 23507  	return c
 23508  }
 23509  
 23510  // Fields allows partial responses to be retrieved. See
 23511  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 23512  // details.
 23513  func (c *OrganizationsSimulationsAttackExposureResultsAttackPathsListCall) Fields(s ...googleapi.Field) *OrganizationsSimulationsAttackExposureResultsAttackPathsListCall {
 23514  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23515  	return c
 23516  }
 23517  
 23518  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 23519  // object's ETag matches the given value. This is useful for getting updates
 23520  // only after the object has changed since the last request.
 23521  func (c *OrganizationsSimulationsAttackExposureResultsAttackPathsListCall) IfNoneMatch(entityTag string) *OrganizationsSimulationsAttackExposureResultsAttackPathsListCall {
 23522  	c.ifNoneMatch_ = entityTag
 23523  	return c
 23524  }
 23525  
 23526  // Context sets the context to be used in this call's Do method.
 23527  func (c *OrganizationsSimulationsAttackExposureResultsAttackPathsListCall) Context(ctx context.Context) *OrganizationsSimulationsAttackExposureResultsAttackPathsListCall {
 23528  	c.ctx_ = ctx
 23529  	return c
 23530  }
 23531  
 23532  // Header returns a http.Header that can be modified by the caller to add
 23533  // headers to the request.
 23534  func (c *OrganizationsSimulationsAttackExposureResultsAttackPathsListCall) Header() http.Header {
 23535  	if c.header_ == nil {
 23536  		c.header_ = make(http.Header)
 23537  	}
 23538  	return c.header_
 23539  }
 23540  
 23541  func (c *OrganizationsSimulationsAttackExposureResultsAttackPathsListCall) doRequest(alt string) (*http.Response, error) {
 23542  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 23543  	if c.ifNoneMatch_ != "" {
 23544  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 23545  	}
 23546  	var body io.Reader = nil
 23547  	c.urlParams_.Set("alt", alt)
 23548  	c.urlParams_.Set("prettyPrint", "false")
 23549  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/attackPaths")
 23550  	urls += "?" + c.urlParams_.Encode()
 23551  	req, err := http.NewRequest("GET", urls, body)
 23552  	if err != nil {
 23553  		return nil, err
 23554  	}
 23555  	req.Header = reqHeaders
 23556  	googleapi.Expand(req.URL, map[string]string{
 23557  		"parent": c.parent,
 23558  	})
 23559  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 23560  }
 23561  
 23562  // Do executes the "securitycenter.organizations.simulations.attackExposureResults.attackPaths.list" call.
 23563  // Any non-2xx status code is an error. Response headers are in either
 23564  // *ListAttackPathsResponse.ServerResponse.Header or (if a response was
 23565  // returned at all) in error.(*googleapi.Error).Header. Use
 23566  // googleapi.IsNotModified to check whether the returned error was because
 23567  // http.StatusNotModified was returned.
 23568  func (c *OrganizationsSimulationsAttackExposureResultsAttackPathsListCall) Do(opts ...googleapi.CallOption) (*ListAttackPathsResponse, error) {
 23569  	gensupport.SetOptions(c.urlParams_, opts...)
 23570  	res, err := c.doRequest("json")
 23571  	if res != nil && res.StatusCode == http.StatusNotModified {
 23572  		if res.Body != nil {
 23573  			res.Body.Close()
 23574  		}
 23575  		return nil, gensupport.WrapError(&googleapi.Error{
 23576  			Code:   res.StatusCode,
 23577  			Header: res.Header,
 23578  		})
 23579  	}
 23580  	if err != nil {
 23581  		return nil, err
 23582  	}
 23583  	defer googleapi.CloseBody(res)
 23584  	if err := googleapi.CheckResponse(res); err != nil {
 23585  		return nil, gensupport.WrapError(err)
 23586  	}
 23587  	ret := &ListAttackPathsResponse{
 23588  		ServerResponse: googleapi.ServerResponse{
 23589  			Header:         res.Header,
 23590  			HTTPStatusCode: res.StatusCode,
 23591  		},
 23592  	}
 23593  	target := &ret
 23594  	if err := gensupport.DecodeResponse(target, res); err != nil {
 23595  		return nil, err
 23596  	}
 23597  	return ret, nil
 23598  }
 23599  
 23600  // Pages invokes f for each page of results.
 23601  // A non-nil error returned from f will halt the iteration.
 23602  // The provided context supersedes any context provided to the Context method.
 23603  func (c *OrganizationsSimulationsAttackExposureResultsAttackPathsListCall) Pages(ctx context.Context, f func(*ListAttackPathsResponse) error) error {
 23604  	c.ctx_ = ctx
 23605  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 23606  	for {
 23607  		x, err := c.Do()
 23608  		if err != nil {
 23609  			return err
 23610  		}
 23611  		if err := f(x); err != nil {
 23612  			return err
 23613  		}
 23614  		if x.NextPageToken == "" {
 23615  			return nil
 23616  		}
 23617  		c.PageToken(x.NextPageToken)
 23618  	}
 23619  }
 23620  
 23621  type OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall struct {
 23622  	s            *Service
 23623  	parent       string
 23624  	urlParams_   gensupport.URLParams
 23625  	ifNoneMatch_ string
 23626  	ctx_         context.Context
 23627  	header_      http.Header
 23628  }
 23629  
 23630  // List: Lists the valued resources for a set of simulation results and filter.
 23631  //
 23632  //   - parent: Name of parent to list valued resources. Valid formats:
 23633  //     "organizations/{organization}",
 23634  //     "organizations/{organization}/simulations/{simulation}"
 23635  //     "organizations/{organization}/simulations/{simulation}/attackExposureResult
 23636  //     s/{attack_exposure_result_v2}".
 23637  func (r *OrganizationsSimulationsAttackExposureResultsValuedResourcesService) List(parent string) *OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall {
 23638  	c := &OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23639  	c.parent = parent
 23640  	return c
 23641  }
 23642  
 23643  // Filter sets the optional parameter "filter": The filter expression that
 23644  // filters the valued resources in the response. Supported fields: *
 23645  // `resource_value` supports = * `resource_type` supports =
 23646  func (c *OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall) Filter(filter string) *OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall {
 23647  	c.urlParams_.Set("filter", filter)
 23648  	return c
 23649  }
 23650  
 23651  // OrderBy sets the optional parameter "orderBy": The fields by which to order
 23652  // the valued resources response. Supported fields: * `exposed_score` *
 23653  // `resource_value` * `resource_type` * `resource` * `display_name` Values
 23654  // should be a comma separated list of fields. For example:
 23655  // `exposed_score,resource_value`. The default sorting order is descending. To
 23656  // specify ascending or descending order for a field, append a " ASC" or a "
 23657  // DESC" suffix, respectively; for example: `exposed_score DESC`.
 23658  func (c *OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall) OrderBy(orderBy string) *OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall {
 23659  	c.urlParams_.Set("orderBy", orderBy)
 23660  	return c
 23661  }
 23662  
 23663  // PageSize sets the optional parameter "pageSize": The maximum number of
 23664  // results to return in a single response. Default is 10, minimum is 1, maximum
 23665  // is 1000.
 23666  func (c *OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall) PageSize(pageSize int64) *OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall {
 23667  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 23668  	return c
 23669  }
 23670  
 23671  // PageToken sets the optional parameter "pageToken": The value returned by the
 23672  // last `ListValuedResourcesResponse`; indicates that this is a continuation of
 23673  // a prior `ListValuedResources` call, and that the system should return the
 23674  // next page of data.
 23675  func (c *OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall) PageToken(pageToken string) *OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall {
 23676  	c.urlParams_.Set("pageToken", pageToken)
 23677  	return c
 23678  }
 23679  
 23680  // Fields allows partial responses to be retrieved. See
 23681  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 23682  // details.
 23683  func (c *OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall) Fields(s ...googleapi.Field) *OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall {
 23684  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23685  	return c
 23686  }
 23687  
 23688  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 23689  // object's ETag matches the given value. This is useful for getting updates
 23690  // only after the object has changed since the last request.
 23691  func (c *OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall) IfNoneMatch(entityTag string) *OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall {
 23692  	c.ifNoneMatch_ = entityTag
 23693  	return c
 23694  }
 23695  
 23696  // Context sets the context to be used in this call's Do method.
 23697  func (c *OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall) Context(ctx context.Context) *OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall {
 23698  	c.ctx_ = ctx
 23699  	return c
 23700  }
 23701  
 23702  // Header returns a http.Header that can be modified by the caller to add
 23703  // headers to the request.
 23704  func (c *OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall) Header() http.Header {
 23705  	if c.header_ == nil {
 23706  		c.header_ = make(http.Header)
 23707  	}
 23708  	return c.header_
 23709  }
 23710  
 23711  func (c *OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall) doRequest(alt string) (*http.Response, error) {
 23712  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 23713  	if c.ifNoneMatch_ != "" {
 23714  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 23715  	}
 23716  	var body io.Reader = nil
 23717  	c.urlParams_.Set("alt", alt)
 23718  	c.urlParams_.Set("prettyPrint", "false")
 23719  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/valuedResources")
 23720  	urls += "?" + c.urlParams_.Encode()
 23721  	req, err := http.NewRequest("GET", urls, body)
 23722  	if err != nil {
 23723  		return nil, err
 23724  	}
 23725  	req.Header = reqHeaders
 23726  	googleapi.Expand(req.URL, map[string]string{
 23727  		"parent": c.parent,
 23728  	})
 23729  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 23730  }
 23731  
 23732  // Do executes the "securitycenter.organizations.simulations.attackExposureResults.valuedResources.list" call.
 23733  // Any non-2xx status code is an error. Response headers are in either
 23734  // *ListValuedResourcesResponse.ServerResponse.Header or (if a response was
 23735  // returned at all) in error.(*googleapi.Error).Header. Use
 23736  // googleapi.IsNotModified to check whether the returned error was because
 23737  // http.StatusNotModified was returned.
 23738  func (c *OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall) Do(opts ...googleapi.CallOption) (*ListValuedResourcesResponse, error) {
 23739  	gensupport.SetOptions(c.urlParams_, opts...)
 23740  	res, err := c.doRequest("json")
 23741  	if res != nil && res.StatusCode == http.StatusNotModified {
 23742  		if res.Body != nil {
 23743  			res.Body.Close()
 23744  		}
 23745  		return nil, gensupport.WrapError(&googleapi.Error{
 23746  			Code:   res.StatusCode,
 23747  			Header: res.Header,
 23748  		})
 23749  	}
 23750  	if err != nil {
 23751  		return nil, err
 23752  	}
 23753  	defer googleapi.CloseBody(res)
 23754  	if err := googleapi.CheckResponse(res); err != nil {
 23755  		return nil, gensupport.WrapError(err)
 23756  	}
 23757  	ret := &ListValuedResourcesResponse{
 23758  		ServerResponse: googleapi.ServerResponse{
 23759  			Header:         res.Header,
 23760  			HTTPStatusCode: res.StatusCode,
 23761  		},
 23762  	}
 23763  	target := &ret
 23764  	if err := gensupport.DecodeResponse(target, res); err != nil {
 23765  		return nil, err
 23766  	}
 23767  	return ret, nil
 23768  }
 23769  
 23770  // Pages invokes f for each page of results.
 23771  // A non-nil error returned from f will halt the iteration.
 23772  // The provided context supersedes any context provided to the Context method.
 23773  func (c *OrganizationsSimulationsAttackExposureResultsValuedResourcesListCall) Pages(ctx context.Context, f func(*ListValuedResourcesResponse) error) error {
 23774  	c.ctx_ = ctx
 23775  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 23776  	for {
 23777  		x, err := c.Do()
 23778  		if err != nil {
 23779  			return err
 23780  		}
 23781  		if err := f(x); err != nil {
 23782  			return err
 23783  		}
 23784  		if x.NextPageToken == "" {
 23785  			return nil
 23786  		}
 23787  		c.PageToken(x.NextPageToken)
 23788  	}
 23789  }
 23790  
 23791  type OrganizationsSimulationsAttackPathsListCall struct {
 23792  	s            *Service
 23793  	parent       string
 23794  	urlParams_   gensupport.URLParams
 23795  	ifNoneMatch_ string
 23796  	ctx_         context.Context
 23797  	header_      http.Header
 23798  }
 23799  
 23800  // List: Lists the attack paths for a set of simulation results or valued
 23801  // resources and filter.
 23802  //
 23803  //   - parent: Name of parent to list attack paths. Valid formats:
 23804  //     "organizations/{organization}",
 23805  //     "organizations/{organization}/simulations/{simulation}"
 23806  //     "organizations/{organization}/simulations/{simulation}/attackExposureResult
 23807  //     s/{attack_exposure_result_v2}"
 23808  //     "organizations/{organization}/simulations/{simulation}/valuedResources/{val
 23809  //     ued_resource}".
 23810  func (r *OrganizationsSimulationsAttackPathsService) List(parent string) *OrganizationsSimulationsAttackPathsListCall {
 23811  	c := &OrganizationsSimulationsAttackPathsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23812  	c.parent = parent
 23813  	return c
 23814  }
 23815  
 23816  // Filter sets the optional parameter "filter": The filter expression that
 23817  // filters the attack path in the response. Supported fields: *
 23818  // `valued_resources` supports =
 23819  func (c *OrganizationsSimulationsAttackPathsListCall) Filter(filter string) *OrganizationsSimulationsAttackPathsListCall {
 23820  	c.urlParams_.Set("filter", filter)
 23821  	return c
 23822  }
 23823  
 23824  // PageSize sets the optional parameter "pageSize": The maximum number of
 23825  // results to return in a single response. Default is 10, minimum is 1, maximum
 23826  // is 1000.
 23827  func (c *OrganizationsSimulationsAttackPathsListCall) PageSize(pageSize int64) *OrganizationsSimulationsAttackPathsListCall {
 23828  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 23829  	return c
 23830  }
 23831  
 23832  // PageToken sets the optional parameter "pageToken": The value returned by the
 23833  // last `ListAttackPathsResponse`; indicates that this is a continuation of a
 23834  // prior `ListAttackPaths` call, and that the system should return the next
 23835  // page of data.
 23836  func (c *OrganizationsSimulationsAttackPathsListCall) PageToken(pageToken string) *OrganizationsSimulationsAttackPathsListCall {
 23837  	c.urlParams_.Set("pageToken", pageToken)
 23838  	return c
 23839  }
 23840  
 23841  // Fields allows partial responses to be retrieved. See
 23842  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 23843  // details.
 23844  func (c *OrganizationsSimulationsAttackPathsListCall) Fields(s ...googleapi.Field) *OrganizationsSimulationsAttackPathsListCall {
 23845  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23846  	return c
 23847  }
 23848  
 23849  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 23850  // object's ETag matches the given value. This is useful for getting updates
 23851  // only after the object has changed since the last request.
 23852  func (c *OrganizationsSimulationsAttackPathsListCall) IfNoneMatch(entityTag string) *OrganizationsSimulationsAttackPathsListCall {
 23853  	c.ifNoneMatch_ = entityTag
 23854  	return c
 23855  }
 23856  
 23857  // Context sets the context to be used in this call's Do method.
 23858  func (c *OrganizationsSimulationsAttackPathsListCall) Context(ctx context.Context) *OrganizationsSimulationsAttackPathsListCall {
 23859  	c.ctx_ = ctx
 23860  	return c
 23861  }
 23862  
 23863  // Header returns a http.Header that can be modified by the caller to add
 23864  // headers to the request.
 23865  func (c *OrganizationsSimulationsAttackPathsListCall) Header() http.Header {
 23866  	if c.header_ == nil {
 23867  		c.header_ = make(http.Header)
 23868  	}
 23869  	return c.header_
 23870  }
 23871  
 23872  func (c *OrganizationsSimulationsAttackPathsListCall) doRequest(alt string) (*http.Response, error) {
 23873  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 23874  	if c.ifNoneMatch_ != "" {
 23875  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 23876  	}
 23877  	var body io.Reader = nil
 23878  	c.urlParams_.Set("alt", alt)
 23879  	c.urlParams_.Set("prettyPrint", "false")
 23880  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/attackPaths")
 23881  	urls += "?" + c.urlParams_.Encode()
 23882  	req, err := http.NewRequest("GET", urls, body)
 23883  	if err != nil {
 23884  		return nil, err
 23885  	}
 23886  	req.Header = reqHeaders
 23887  	googleapi.Expand(req.URL, map[string]string{
 23888  		"parent": c.parent,
 23889  	})
 23890  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 23891  }
 23892  
 23893  // Do executes the "securitycenter.organizations.simulations.attackPaths.list" call.
 23894  // Any non-2xx status code is an error. Response headers are in either
 23895  // *ListAttackPathsResponse.ServerResponse.Header or (if a response was
 23896  // returned at all) in error.(*googleapi.Error).Header. Use
 23897  // googleapi.IsNotModified to check whether the returned error was because
 23898  // http.StatusNotModified was returned.
 23899  func (c *OrganizationsSimulationsAttackPathsListCall) Do(opts ...googleapi.CallOption) (*ListAttackPathsResponse, error) {
 23900  	gensupport.SetOptions(c.urlParams_, opts...)
 23901  	res, err := c.doRequest("json")
 23902  	if res != nil && res.StatusCode == http.StatusNotModified {
 23903  		if res.Body != nil {
 23904  			res.Body.Close()
 23905  		}
 23906  		return nil, gensupport.WrapError(&googleapi.Error{
 23907  			Code:   res.StatusCode,
 23908  			Header: res.Header,
 23909  		})
 23910  	}
 23911  	if err != nil {
 23912  		return nil, err
 23913  	}
 23914  	defer googleapi.CloseBody(res)
 23915  	if err := googleapi.CheckResponse(res); err != nil {
 23916  		return nil, gensupport.WrapError(err)
 23917  	}
 23918  	ret := &ListAttackPathsResponse{
 23919  		ServerResponse: googleapi.ServerResponse{
 23920  			Header:         res.Header,
 23921  			HTTPStatusCode: res.StatusCode,
 23922  		},
 23923  	}
 23924  	target := &ret
 23925  	if err := gensupport.DecodeResponse(target, res); err != nil {
 23926  		return nil, err
 23927  	}
 23928  	return ret, nil
 23929  }
 23930  
 23931  // Pages invokes f for each page of results.
 23932  // A non-nil error returned from f will halt the iteration.
 23933  // The provided context supersedes any context provided to the Context method.
 23934  func (c *OrganizationsSimulationsAttackPathsListCall) Pages(ctx context.Context, f func(*ListAttackPathsResponse) error) error {
 23935  	c.ctx_ = ctx
 23936  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 23937  	for {
 23938  		x, err := c.Do()
 23939  		if err != nil {
 23940  			return err
 23941  		}
 23942  		if err := f(x); err != nil {
 23943  			return err
 23944  		}
 23945  		if x.NextPageToken == "" {
 23946  			return nil
 23947  		}
 23948  		c.PageToken(x.NextPageToken)
 23949  	}
 23950  }
 23951  
 23952  type OrganizationsSimulationsValuedResourcesGetCall struct {
 23953  	s            *Service
 23954  	name         string
 23955  	urlParams_   gensupport.URLParams
 23956  	ifNoneMatch_ string
 23957  	ctx_         context.Context
 23958  	header_      http.Header
 23959  }
 23960  
 23961  // Get: Get the valued resource by name
 23962  //
 23963  //   - name: The name of this valued resource Valid format:
 23964  //     "organizations/{organization}/simulations/{simulation}/valuedResources/{val
 23965  //     ued_resource}".
 23966  func (r *OrganizationsSimulationsValuedResourcesService) Get(name string) *OrganizationsSimulationsValuedResourcesGetCall {
 23967  	c := &OrganizationsSimulationsValuedResourcesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23968  	c.name = name
 23969  	return c
 23970  }
 23971  
 23972  // Fields allows partial responses to be retrieved. See
 23973  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 23974  // details.
 23975  func (c *OrganizationsSimulationsValuedResourcesGetCall) Fields(s ...googleapi.Field) *OrganizationsSimulationsValuedResourcesGetCall {
 23976  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23977  	return c
 23978  }
 23979  
 23980  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 23981  // object's ETag matches the given value. This is useful for getting updates
 23982  // only after the object has changed since the last request.
 23983  func (c *OrganizationsSimulationsValuedResourcesGetCall) IfNoneMatch(entityTag string) *OrganizationsSimulationsValuedResourcesGetCall {
 23984  	c.ifNoneMatch_ = entityTag
 23985  	return c
 23986  }
 23987  
 23988  // Context sets the context to be used in this call's Do method.
 23989  func (c *OrganizationsSimulationsValuedResourcesGetCall) Context(ctx context.Context) *OrganizationsSimulationsValuedResourcesGetCall {
 23990  	c.ctx_ = ctx
 23991  	return c
 23992  }
 23993  
 23994  // Header returns a http.Header that can be modified by the caller to add
 23995  // headers to the request.
 23996  func (c *OrganizationsSimulationsValuedResourcesGetCall) Header() http.Header {
 23997  	if c.header_ == nil {
 23998  		c.header_ = make(http.Header)
 23999  	}
 24000  	return c.header_
 24001  }
 24002  
 24003  func (c *OrganizationsSimulationsValuedResourcesGetCall) doRequest(alt string) (*http.Response, error) {
 24004  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 24005  	if c.ifNoneMatch_ != "" {
 24006  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 24007  	}
 24008  	var body io.Reader = nil
 24009  	c.urlParams_.Set("alt", alt)
 24010  	c.urlParams_.Set("prettyPrint", "false")
 24011  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 24012  	urls += "?" + c.urlParams_.Encode()
 24013  	req, err := http.NewRequest("GET", urls, body)
 24014  	if err != nil {
 24015  		return nil, err
 24016  	}
 24017  	req.Header = reqHeaders
 24018  	googleapi.Expand(req.URL, map[string]string{
 24019  		"name": c.name,
 24020  	})
 24021  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24022  }
 24023  
 24024  // Do executes the "securitycenter.organizations.simulations.valuedResources.get" call.
 24025  // Any non-2xx status code is an error. Response headers are in either
 24026  // *ValuedResource.ServerResponse.Header or (if a response was returned at all)
 24027  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 24028  // whether the returned error was because http.StatusNotModified was returned.
 24029  func (c *OrganizationsSimulationsValuedResourcesGetCall) Do(opts ...googleapi.CallOption) (*ValuedResource, error) {
 24030  	gensupport.SetOptions(c.urlParams_, opts...)
 24031  	res, err := c.doRequest("json")
 24032  	if res != nil && res.StatusCode == http.StatusNotModified {
 24033  		if res.Body != nil {
 24034  			res.Body.Close()
 24035  		}
 24036  		return nil, gensupport.WrapError(&googleapi.Error{
 24037  			Code:   res.StatusCode,
 24038  			Header: res.Header,
 24039  		})
 24040  	}
 24041  	if err != nil {
 24042  		return nil, err
 24043  	}
 24044  	defer googleapi.CloseBody(res)
 24045  	if err := googleapi.CheckResponse(res); err != nil {
 24046  		return nil, gensupport.WrapError(err)
 24047  	}
 24048  	ret := &ValuedResource{
 24049  		ServerResponse: googleapi.ServerResponse{
 24050  			Header:         res.Header,
 24051  			HTTPStatusCode: res.StatusCode,
 24052  		},
 24053  	}
 24054  	target := &ret
 24055  	if err := gensupport.DecodeResponse(target, res); err != nil {
 24056  		return nil, err
 24057  	}
 24058  	return ret, nil
 24059  }
 24060  
 24061  type OrganizationsSimulationsValuedResourcesListCall struct {
 24062  	s            *Service
 24063  	parent       string
 24064  	urlParams_   gensupport.URLParams
 24065  	ifNoneMatch_ string
 24066  	ctx_         context.Context
 24067  	header_      http.Header
 24068  }
 24069  
 24070  // List: Lists the valued resources for a set of simulation results and filter.
 24071  //
 24072  //   - parent: Name of parent to list valued resources. Valid formats:
 24073  //     "organizations/{organization}",
 24074  //     "organizations/{organization}/simulations/{simulation}"
 24075  //     "organizations/{organization}/simulations/{simulation}/attackExposureResult
 24076  //     s/{attack_exposure_result_v2}".
 24077  func (r *OrganizationsSimulationsValuedResourcesService) List(parent string) *OrganizationsSimulationsValuedResourcesListCall {
 24078  	c := &OrganizationsSimulationsValuedResourcesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24079  	c.parent = parent
 24080  	return c
 24081  }
 24082  
 24083  // Filter sets the optional parameter "filter": The filter expression that
 24084  // filters the valued resources in the response. Supported fields: *
 24085  // `resource_value` supports = * `resource_type` supports =
 24086  func (c *OrganizationsSimulationsValuedResourcesListCall) Filter(filter string) *OrganizationsSimulationsValuedResourcesListCall {
 24087  	c.urlParams_.Set("filter", filter)
 24088  	return c
 24089  }
 24090  
 24091  // OrderBy sets the optional parameter "orderBy": The fields by which to order
 24092  // the valued resources response. Supported fields: * `exposed_score` *
 24093  // `resource_value` * `resource_type` * `resource` * `display_name` Values
 24094  // should be a comma separated list of fields. For example:
 24095  // `exposed_score,resource_value`. The default sorting order is descending. To
 24096  // specify ascending or descending order for a field, append a " ASC" or a "
 24097  // DESC" suffix, respectively; for example: `exposed_score DESC`.
 24098  func (c *OrganizationsSimulationsValuedResourcesListCall) OrderBy(orderBy string) *OrganizationsSimulationsValuedResourcesListCall {
 24099  	c.urlParams_.Set("orderBy", orderBy)
 24100  	return c
 24101  }
 24102  
 24103  // PageSize sets the optional parameter "pageSize": The maximum number of
 24104  // results to return in a single response. Default is 10, minimum is 1, maximum
 24105  // is 1000.
 24106  func (c *OrganizationsSimulationsValuedResourcesListCall) PageSize(pageSize int64) *OrganizationsSimulationsValuedResourcesListCall {
 24107  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 24108  	return c
 24109  }
 24110  
 24111  // PageToken sets the optional parameter "pageToken": The value returned by the
 24112  // last `ListValuedResourcesResponse`; indicates that this is a continuation of
 24113  // a prior `ListValuedResources` call, and that the system should return the
 24114  // next page of data.
 24115  func (c *OrganizationsSimulationsValuedResourcesListCall) PageToken(pageToken string) *OrganizationsSimulationsValuedResourcesListCall {
 24116  	c.urlParams_.Set("pageToken", pageToken)
 24117  	return c
 24118  }
 24119  
 24120  // Fields allows partial responses to be retrieved. See
 24121  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 24122  // details.
 24123  func (c *OrganizationsSimulationsValuedResourcesListCall) Fields(s ...googleapi.Field) *OrganizationsSimulationsValuedResourcesListCall {
 24124  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24125  	return c
 24126  }
 24127  
 24128  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 24129  // object's ETag matches the given value. This is useful for getting updates
 24130  // only after the object has changed since the last request.
 24131  func (c *OrganizationsSimulationsValuedResourcesListCall) IfNoneMatch(entityTag string) *OrganizationsSimulationsValuedResourcesListCall {
 24132  	c.ifNoneMatch_ = entityTag
 24133  	return c
 24134  }
 24135  
 24136  // Context sets the context to be used in this call's Do method.
 24137  func (c *OrganizationsSimulationsValuedResourcesListCall) Context(ctx context.Context) *OrganizationsSimulationsValuedResourcesListCall {
 24138  	c.ctx_ = ctx
 24139  	return c
 24140  }
 24141  
 24142  // Header returns a http.Header that can be modified by the caller to add
 24143  // headers to the request.
 24144  func (c *OrganizationsSimulationsValuedResourcesListCall) Header() http.Header {
 24145  	if c.header_ == nil {
 24146  		c.header_ = make(http.Header)
 24147  	}
 24148  	return c.header_
 24149  }
 24150  
 24151  func (c *OrganizationsSimulationsValuedResourcesListCall) doRequest(alt string) (*http.Response, error) {
 24152  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 24153  	if c.ifNoneMatch_ != "" {
 24154  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 24155  	}
 24156  	var body io.Reader = nil
 24157  	c.urlParams_.Set("alt", alt)
 24158  	c.urlParams_.Set("prettyPrint", "false")
 24159  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/valuedResources")
 24160  	urls += "?" + c.urlParams_.Encode()
 24161  	req, err := http.NewRequest("GET", urls, body)
 24162  	if err != nil {
 24163  		return nil, err
 24164  	}
 24165  	req.Header = reqHeaders
 24166  	googleapi.Expand(req.URL, map[string]string{
 24167  		"parent": c.parent,
 24168  	})
 24169  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24170  }
 24171  
 24172  // Do executes the "securitycenter.organizations.simulations.valuedResources.list" call.
 24173  // Any non-2xx status code is an error. Response headers are in either
 24174  // *ListValuedResourcesResponse.ServerResponse.Header or (if a response was
 24175  // returned at all) in error.(*googleapi.Error).Header. Use
 24176  // googleapi.IsNotModified to check whether the returned error was because
 24177  // http.StatusNotModified was returned.
 24178  func (c *OrganizationsSimulationsValuedResourcesListCall) Do(opts ...googleapi.CallOption) (*ListValuedResourcesResponse, error) {
 24179  	gensupport.SetOptions(c.urlParams_, opts...)
 24180  	res, err := c.doRequest("json")
 24181  	if res != nil && res.StatusCode == http.StatusNotModified {
 24182  		if res.Body != nil {
 24183  			res.Body.Close()
 24184  		}
 24185  		return nil, gensupport.WrapError(&googleapi.Error{
 24186  			Code:   res.StatusCode,
 24187  			Header: res.Header,
 24188  		})
 24189  	}
 24190  	if err != nil {
 24191  		return nil, err
 24192  	}
 24193  	defer googleapi.CloseBody(res)
 24194  	if err := googleapi.CheckResponse(res); err != nil {
 24195  		return nil, gensupport.WrapError(err)
 24196  	}
 24197  	ret := &ListValuedResourcesResponse{
 24198  		ServerResponse: googleapi.ServerResponse{
 24199  			Header:         res.Header,
 24200  			HTTPStatusCode: res.StatusCode,
 24201  		},
 24202  	}
 24203  	target := &ret
 24204  	if err := gensupport.DecodeResponse(target, res); err != nil {
 24205  		return nil, err
 24206  	}
 24207  	return ret, nil
 24208  }
 24209  
 24210  // Pages invokes f for each page of results.
 24211  // A non-nil error returned from f will halt the iteration.
 24212  // The provided context supersedes any context provided to the Context method.
 24213  func (c *OrganizationsSimulationsValuedResourcesListCall) Pages(ctx context.Context, f func(*ListValuedResourcesResponse) error) error {
 24214  	c.ctx_ = ctx
 24215  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 24216  	for {
 24217  		x, err := c.Do()
 24218  		if err != nil {
 24219  			return err
 24220  		}
 24221  		if err := f(x); err != nil {
 24222  			return err
 24223  		}
 24224  		if x.NextPageToken == "" {
 24225  			return nil
 24226  		}
 24227  		c.PageToken(x.NextPageToken)
 24228  	}
 24229  }
 24230  
 24231  type OrganizationsSimulationsValuedResourcesAttackPathsListCall struct {
 24232  	s            *Service
 24233  	parent       string
 24234  	urlParams_   gensupport.URLParams
 24235  	ifNoneMatch_ string
 24236  	ctx_         context.Context
 24237  	header_      http.Header
 24238  }
 24239  
 24240  // List: Lists the attack paths for a set of simulation results or valued
 24241  // resources and filter.
 24242  //
 24243  //   - parent: Name of parent to list attack paths. Valid formats:
 24244  //     "organizations/{organization}",
 24245  //     "organizations/{organization}/simulations/{simulation}"
 24246  //     "organizations/{organization}/simulations/{simulation}/attackExposureResult
 24247  //     s/{attack_exposure_result_v2}"
 24248  //     "organizations/{organization}/simulations/{simulation}/valuedResources/{val
 24249  //     ued_resource}".
 24250  func (r *OrganizationsSimulationsValuedResourcesAttackPathsService) List(parent string) *OrganizationsSimulationsValuedResourcesAttackPathsListCall {
 24251  	c := &OrganizationsSimulationsValuedResourcesAttackPathsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24252  	c.parent = parent
 24253  	return c
 24254  }
 24255  
 24256  // Filter sets the optional parameter "filter": The filter expression that
 24257  // filters the attack path in the response. Supported fields: *
 24258  // `valued_resources` supports =
 24259  func (c *OrganizationsSimulationsValuedResourcesAttackPathsListCall) Filter(filter string) *OrganizationsSimulationsValuedResourcesAttackPathsListCall {
 24260  	c.urlParams_.Set("filter", filter)
 24261  	return c
 24262  }
 24263  
 24264  // PageSize sets the optional parameter "pageSize": The maximum number of
 24265  // results to return in a single response. Default is 10, minimum is 1, maximum
 24266  // is 1000.
 24267  func (c *OrganizationsSimulationsValuedResourcesAttackPathsListCall) PageSize(pageSize int64) *OrganizationsSimulationsValuedResourcesAttackPathsListCall {
 24268  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 24269  	return c
 24270  }
 24271  
 24272  // PageToken sets the optional parameter "pageToken": The value returned by the
 24273  // last `ListAttackPathsResponse`; indicates that this is a continuation of a
 24274  // prior `ListAttackPaths` call, and that the system should return the next
 24275  // page of data.
 24276  func (c *OrganizationsSimulationsValuedResourcesAttackPathsListCall) PageToken(pageToken string) *OrganizationsSimulationsValuedResourcesAttackPathsListCall {
 24277  	c.urlParams_.Set("pageToken", pageToken)
 24278  	return c
 24279  }
 24280  
 24281  // Fields allows partial responses to be retrieved. See
 24282  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 24283  // details.
 24284  func (c *OrganizationsSimulationsValuedResourcesAttackPathsListCall) Fields(s ...googleapi.Field) *OrganizationsSimulationsValuedResourcesAttackPathsListCall {
 24285  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24286  	return c
 24287  }
 24288  
 24289  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 24290  // object's ETag matches the given value. This is useful for getting updates
 24291  // only after the object has changed since the last request.
 24292  func (c *OrganizationsSimulationsValuedResourcesAttackPathsListCall) IfNoneMatch(entityTag string) *OrganizationsSimulationsValuedResourcesAttackPathsListCall {
 24293  	c.ifNoneMatch_ = entityTag
 24294  	return c
 24295  }
 24296  
 24297  // Context sets the context to be used in this call's Do method.
 24298  func (c *OrganizationsSimulationsValuedResourcesAttackPathsListCall) Context(ctx context.Context) *OrganizationsSimulationsValuedResourcesAttackPathsListCall {
 24299  	c.ctx_ = ctx
 24300  	return c
 24301  }
 24302  
 24303  // Header returns a http.Header that can be modified by the caller to add
 24304  // headers to the request.
 24305  func (c *OrganizationsSimulationsValuedResourcesAttackPathsListCall) Header() http.Header {
 24306  	if c.header_ == nil {
 24307  		c.header_ = make(http.Header)
 24308  	}
 24309  	return c.header_
 24310  }
 24311  
 24312  func (c *OrganizationsSimulationsValuedResourcesAttackPathsListCall) doRequest(alt string) (*http.Response, error) {
 24313  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 24314  	if c.ifNoneMatch_ != "" {
 24315  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 24316  	}
 24317  	var body io.Reader = nil
 24318  	c.urlParams_.Set("alt", alt)
 24319  	c.urlParams_.Set("prettyPrint", "false")
 24320  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/attackPaths")
 24321  	urls += "?" + c.urlParams_.Encode()
 24322  	req, err := http.NewRequest("GET", urls, body)
 24323  	if err != nil {
 24324  		return nil, err
 24325  	}
 24326  	req.Header = reqHeaders
 24327  	googleapi.Expand(req.URL, map[string]string{
 24328  		"parent": c.parent,
 24329  	})
 24330  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24331  }
 24332  
 24333  // Do executes the "securitycenter.organizations.simulations.valuedResources.attackPaths.list" call.
 24334  // Any non-2xx status code is an error. Response headers are in either
 24335  // *ListAttackPathsResponse.ServerResponse.Header or (if a response was
 24336  // returned at all) in error.(*googleapi.Error).Header. Use
 24337  // googleapi.IsNotModified to check whether the returned error was because
 24338  // http.StatusNotModified was returned.
 24339  func (c *OrganizationsSimulationsValuedResourcesAttackPathsListCall) Do(opts ...googleapi.CallOption) (*ListAttackPathsResponse, error) {
 24340  	gensupport.SetOptions(c.urlParams_, opts...)
 24341  	res, err := c.doRequest("json")
 24342  	if res != nil && res.StatusCode == http.StatusNotModified {
 24343  		if res.Body != nil {
 24344  			res.Body.Close()
 24345  		}
 24346  		return nil, gensupport.WrapError(&googleapi.Error{
 24347  			Code:   res.StatusCode,
 24348  			Header: res.Header,
 24349  		})
 24350  	}
 24351  	if err != nil {
 24352  		return nil, err
 24353  	}
 24354  	defer googleapi.CloseBody(res)
 24355  	if err := googleapi.CheckResponse(res); err != nil {
 24356  		return nil, gensupport.WrapError(err)
 24357  	}
 24358  	ret := &ListAttackPathsResponse{
 24359  		ServerResponse: googleapi.ServerResponse{
 24360  			Header:         res.Header,
 24361  			HTTPStatusCode: res.StatusCode,
 24362  		},
 24363  	}
 24364  	target := &ret
 24365  	if err := gensupport.DecodeResponse(target, res); err != nil {
 24366  		return nil, err
 24367  	}
 24368  	return ret, nil
 24369  }
 24370  
 24371  // Pages invokes f for each page of results.
 24372  // A non-nil error returned from f will halt the iteration.
 24373  // The provided context supersedes any context provided to the Context method.
 24374  func (c *OrganizationsSimulationsValuedResourcesAttackPathsListCall) Pages(ctx context.Context, f func(*ListAttackPathsResponse) error) error {
 24375  	c.ctx_ = ctx
 24376  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 24377  	for {
 24378  		x, err := c.Do()
 24379  		if err != nil {
 24380  			return err
 24381  		}
 24382  		if err := f(x); err != nil {
 24383  			return err
 24384  		}
 24385  		if x.NextPageToken == "" {
 24386  			return nil
 24387  		}
 24388  		c.PageToken(x.NextPageToken)
 24389  	}
 24390  }
 24391  
 24392  type OrganizationsSourcesCreateCall struct {
 24393  	s          *Service
 24394  	parent     string
 24395  	source     *Source
 24396  	urlParams_ gensupport.URLParams
 24397  	ctx_       context.Context
 24398  	header_    http.Header
 24399  }
 24400  
 24401  // Create: Creates a source.
 24402  //
 24403  //   - parent: Resource name of the new source's parent. Its format should be
 24404  //     "organizations/[organization_id]".
 24405  func (r *OrganizationsSourcesService) Create(parent string, source *Source) *OrganizationsSourcesCreateCall {
 24406  	c := &OrganizationsSourcesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24407  	c.parent = parent
 24408  	c.source = source
 24409  	return c
 24410  }
 24411  
 24412  // Fields allows partial responses to be retrieved. See
 24413  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 24414  // details.
 24415  func (c *OrganizationsSourcesCreateCall) Fields(s ...googleapi.Field) *OrganizationsSourcesCreateCall {
 24416  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24417  	return c
 24418  }
 24419  
 24420  // Context sets the context to be used in this call's Do method.
 24421  func (c *OrganizationsSourcesCreateCall) Context(ctx context.Context) *OrganizationsSourcesCreateCall {
 24422  	c.ctx_ = ctx
 24423  	return c
 24424  }
 24425  
 24426  // Header returns a http.Header that can be modified by the caller to add
 24427  // headers to the request.
 24428  func (c *OrganizationsSourcesCreateCall) Header() http.Header {
 24429  	if c.header_ == nil {
 24430  		c.header_ = make(http.Header)
 24431  	}
 24432  	return c.header_
 24433  }
 24434  
 24435  func (c *OrganizationsSourcesCreateCall) doRequest(alt string) (*http.Response, error) {
 24436  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 24437  	var body io.Reader = nil
 24438  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.source)
 24439  	if err != nil {
 24440  		return nil, err
 24441  	}
 24442  	c.urlParams_.Set("alt", alt)
 24443  	c.urlParams_.Set("prettyPrint", "false")
 24444  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/sources")
 24445  	urls += "?" + c.urlParams_.Encode()
 24446  	req, err := http.NewRequest("POST", urls, body)
 24447  	if err != nil {
 24448  		return nil, err
 24449  	}
 24450  	req.Header = reqHeaders
 24451  	googleapi.Expand(req.URL, map[string]string{
 24452  		"parent": c.parent,
 24453  	})
 24454  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24455  }
 24456  
 24457  // Do executes the "securitycenter.organizations.sources.create" call.
 24458  // Any non-2xx status code is an error. Response headers are in either
 24459  // *Source.ServerResponse.Header or (if a response was returned at all) in
 24460  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 24461  // whether the returned error was because http.StatusNotModified was returned.
 24462  func (c *OrganizationsSourcesCreateCall) Do(opts ...googleapi.CallOption) (*Source, error) {
 24463  	gensupport.SetOptions(c.urlParams_, opts...)
 24464  	res, err := c.doRequest("json")
 24465  	if res != nil && res.StatusCode == http.StatusNotModified {
 24466  		if res.Body != nil {
 24467  			res.Body.Close()
 24468  		}
 24469  		return nil, gensupport.WrapError(&googleapi.Error{
 24470  			Code:   res.StatusCode,
 24471  			Header: res.Header,
 24472  		})
 24473  	}
 24474  	if err != nil {
 24475  		return nil, err
 24476  	}
 24477  	defer googleapi.CloseBody(res)
 24478  	if err := googleapi.CheckResponse(res); err != nil {
 24479  		return nil, gensupport.WrapError(err)
 24480  	}
 24481  	ret := &Source{
 24482  		ServerResponse: googleapi.ServerResponse{
 24483  			Header:         res.Header,
 24484  			HTTPStatusCode: res.StatusCode,
 24485  		},
 24486  	}
 24487  	target := &ret
 24488  	if err := gensupport.DecodeResponse(target, res); err != nil {
 24489  		return nil, err
 24490  	}
 24491  	return ret, nil
 24492  }
 24493  
 24494  type OrganizationsSourcesGetCall struct {
 24495  	s            *Service
 24496  	name         string
 24497  	urlParams_   gensupport.URLParams
 24498  	ifNoneMatch_ string
 24499  	ctx_         context.Context
 24500  	header_      http.Header
 24501  }
 24502  
 24503  // Get: Gets a source.
 24504  //
 24505  //   - name: Relative resource name of the source. Its format is
 24506  //     "organizations/[organization_id]/source/[source_id]".
 24507  func (r *OrganizationsSourcesService) Get(name string) *OrganizationsSourcesGetCall {
 24508  	c := &OrganizationsSourcesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24509  	c.name = name
 24510  	return c
 24511  }
 24512  
 24513  // Fields allows partial responses to be retrieved. See
 24514  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 24515  // details.
 24516  func (c *OrganizationsSourcesGetCall) Fields(s ...googleapi.Field) *OrganizationsSourcesGetCall {
 24517  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24518  	return c
 24519  }
 24520  
 24521  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 24522  // object's ETag matches the given value. This is useful for getting updates
 24523  // only after the object has changed since the last request.
 24524  func (c *OrganizationsSourcesGetCall) IfNoneMatch(entityTag string) *OrganizationsSourcesGetCall {
 24525  	c.ifNoneMatch_ = entityTag
 24526  	return c
 24527  }
 24528  
 24529  // Context sets the context to be used in this call's Do method.
 24530  func (c *OrganizationsSourcesGetCall) Context(ctx context.Context) *OrganizationsSourcesGetCall {
 24531  	c.ctx_ = ctx
 24532  	return c
 24533  }
 24534  
 24535  // Header returns a http.Header that can be modified by the caller to add
 24536  // headers to the request.
 24537  func (c *OrganizationsSourcesGetCall) Header() http.Header {
 24538  	if c.header_ == nil {
 24539  		c.header_ = make(http.Header)
 24540  	}
 24541  	return c.header_
 24542  }
 24543  
 24544  func (c *OrganizationsSourcesGetCall) doRequest(alt string) (*http.Response, error) {
 24545  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 24546  	if c.ifNoneMatch_ != "" {
 24547  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 24548  	}
 24549  	var body io.Reader = nil
 24550  	c.urlParams_.Set("alt", alt)
 24551  	c.urlParams_.Set("prettyPrint", "false")
 24552  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 24553  	urls += "?" + c.urlParams_.Encode()
 24554  	req, err := http.NewRequest("GET", urls, body)
 24555  	if err != nil {
 24556  		return nil, err
 24557  	}
 24558  	req.Header = reqHeaders
 24559  	googleapi.Expand(req.URL, map[string]string{
 24560  		"name": c.name,
 24561  	})
 24562  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24563  }
 24564  
 24565  // Do executes the "securitycenter.organizations.sources.get" call.
 24566  // Any non-2xx status code is an error. Response headers are in either
 24567  // *Source.ServerResponse.Header or (if a response was returned at all) in
 24568  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 24569  // whether the returned error was because http.StatusNotModified was returned.
 24570  func (c *OrganizationsSourcesGetCall) Do(opts ...googleapi.CallOption) (*Source, error) {
 24571  	gensupport.SetOptions(c.urlParams_, opts...)
 24572  	res, err := c.doRequest("json")
 24573  	if res != nil && res.StatusCode == http.StatusNotModified {
 24574  		if res.Body != nil {
 24575  			res.Body.Close()
 24576  		}
 24577  		return nil, gensupport.WrapError(&googleapi.Error{
 24578  			Code:   res.StatusCode,
 24579  			Header: res.Header,
 24580  		})
 24581  	}
 24582  	if err != nil {
 24583  		return nil, err
 24584  	}
 24585  	defer googleapi.CloseBody(res)
 24586  	if err := googleapi.CheckResponse(res); err != nil {
 24587  		return nil, gensupport.WrapError(err)
 24588  	}
 24589  	ret := &Source{
 24590  		ServerResponse: googleapi.ServerResponse{
 24591  			Header:         res.Header,
 24592  			HTTPStatusCode: res.StatusCode,
 24593  		},
 24594  	}
 24595  	target := &ret
 24596  	if err := gensupport.DecodeResponse(target, res); err != nil {
 24597  		return nil, err
 24598  	}
 24599  	return ret, nil
 24600  }
 24601  
 24602  type OrganizationsSourcesGetIamPolicyCall struct {
 24603  	s                   *Service
 24604  	resource            string
 24605  	getiampolicyrequest *GetIamPolicyRequest
 24606  	urlParams_          gensupport.URLParams
 24607  	ctx_                context.Context
 24608  	header_             http.Header
 24609  }
 24610  
 24611  // GetIamPolicy: Gets the access control policy on the specified Source.
 24612  //
 24613  //   - resource: REQUIRED: The resource for which the policy is being requested.
 24614  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
 24615  //     for the appropriate value for this field.
 24616  func (r *OrganizationsSourcesService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *OrganizationsSourcesGetIamPolicyCall {
 24617  	c := &OrganizationsSourcesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24618  	c.resource = resource
 24619  	c.getiampolicyrequest = getiampolicyrequest
 24620  	return c
 24621  }
 24622  
 24623  // Fields allows partial responses to be retrieved. See
 24624  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 24625  // details.
 24626  func (c *OrganizationsSourcesGetIamPolicyCall) Fields(s ...googleapi.Field) *OrganizationsSourcesGetIamPolicyCall {
 24627  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24628  	return c
 24629  }
 24630  
 24631  // Context sets the context to be used in this call's Do method.
 24632  func (c *OrganizationsSourcesGetIamPolicyCall) Context(ctx context.Context) *OrganizationsSourcesGetIamPolicyCall {
 24633  	c.ctx_ = ctx
 24634  	return c
 24635  }
 24636  
 24637  // Header returns a http.Header that can be modified by the caller to add
 24638  // headers to the request.
 24639  func (c *OrganizationsSourcesGetIamPolicyCall) Header() http.Header {
 24640  	if c.header_ == nil {
 24641  		c.header_ = make(http.Header)
 24642  	}
 24643  	return c.header_
 24644  }
 24645  
 24646  func (c *OrganizationsSourcesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
 24647  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 24648  	var body io.Reader = nil
 24649  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.getiampolicyrequest)
 24650  	if err != nil {
 24651  		return nil, err
 24652  	}
 24653  	c.urlParams_.Set("alt", alt)
 24654  	c.urlParams_.Set("prettyPrint", "false")
 24655  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy")
 24656  	urls += "?" + c.urlParams_.Encode()
 24657  	req, err := http.NewRequest("POST", urls, body)
 24658  	if err != nil {
 24659  		return nil, err
 24660  	}
 24661  	req.Header = reqHeaders
 24662  	googleapi.Expand(req.URL, map[string]string{
 24663  		"resource": c.resource,
 24664  	})
 24665  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24666  }
 24667  
 24668  // Do executes the "securitycenter.organizations.sources.getIamPolicy" call.
 24669  // Any non-2xx status code is an error. Response headers are in either
 24670  // *Policy.ServerResponse.Header or (if a response was returned at all) in
 24671  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 24672  // whether the returned error was because http.StatusNotModified was returned.
 24673  func (c *OrganizationsSourcesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
 24674  	gensupport.SetOptions(c.urlParams_, opts...)
 24675  	res, err := c.doRequest("json")
 24676  	if res != nil && res.StatusCode == http.StatusNotModified {
 24677  		if res.Body != nil {
 24678  			res.Body.Close()
 24679  		}
 24680  		return nil, gensupport.WrapError(&googleapi.Error{
 24681  			Code:   res.StatusCode,
 24682  			Header: res.Header,
 24683  		})
 24684  	}
 24685  	if err != nil {
 24686  		return nil, err
 24687  	}
 24688  	defer googleapi.CloseBody(res)
 24689  	if err := googleapi.CheckResponse(res); err != nil {
 24690  		return nil, gensupport.WrapError(err)
 24691  	}
 24692  	ret := &Policy{
 24693  		ServerResponse: googleapi.ServerResponse{
 24694  			Header:         res.Header,
 24695  			HTTPStatusCode: res.StatusCode,
 24696  		},
 24697  	}
 24698  	target := &ret
 24699  	if err := gensupport.DecodeResponse(target, res); err != nil {
 24700  		return nil, err
 24701  	}
 24702  	return ret, nil
 24703  }
 24704  
 24705  type OrganizationsSourcesListCall struct {
 24706  	s            *Service
 24707  	parent       string
 24708  	urlParams_   gensupport.URLParams
 24709  	ifNoneMatch_ string
 24710  	ctx_         context.Context
 24711  	header_      http.Header
 24712  }
 24713  
 24714  // List: Lists all sources belonging to an organization.
 24715  //
 24716  //   - parent: Resource name of the parent of sources to list. Its format should
 24717  //     be "organizations/[organization_id]", "folders/[folder_id]", or
 24718  //     "projects/[project_id]".
 24719  func (r *OrganizationsSourcesService) List(parent string) *OrganizationsSourcesListCall {
 24720  	c := &OrganizationsSourcesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24721  	c.parent = parent
 24722  	return c
 24723  }
 24724  
 24725  // PageSize sets the optional parameter "pageSize": The maximum number of
 24726  // results to return in a single response. Default is 10, minimum is 1, maximum
 24727  // is 1000.
 24728  func (c *OrganizationsSourcesListCall) PageSize(pageSize int64) *OrganizationsSourcesListCall {
 24729  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 24730  	return c
 24731  }
 24732  
 24733  // PageToken sets the optional parameter "pageToken": The value returned by the
 24734  // last `ListSourcesResponse`; indicates that this is a continuation of a prior
 24735  // `ListSources` call, and that the system should return the next page of data.
 24736  func (c *OrganizationsSourcesListCall) PageToken(pageToken string) *OrganizationsSourcesListCall {
 24737  	c.urlParams_.Set("pageToken", pageToken)
 24738  	return c
 24739  }
 24740  
 24741  // Fields allows partial responses to be retrieved. See
 24742  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 24743  // details.
 24744  func (c *OrganizationsSourcesListCall) Fields(s ...googleapi.Field) *OrganizationsSourcesListCall {
 24745  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24746  	return c
 24747  }
 24748  
 24749  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 24750  // object's ETag matches the given value. This is useful for getting updates
 24751  // only after the object has changed since the last request.
 24752  func (c *OrganizationsSourcesListCall) IfNoneMatch(entityTag string) *OrganizationsSourcesListCall {
 24753  	c.ifNoneMatch_ = entityTag
 24754  	return c
 24755  }
 24756  
 24757  // Context sets the context to be used in this call's Do method.
 24758  func (c *OrganizationsSourcesListCall) Context(ctx context.Context) *OrganizationsSourcesListCall {
 24759  	c.ctx_ = ctx
 24760  	return c
 24761  }
 24762  
 24763  // Header returns a http.Header that can be modified by the caller to add
 24764  // headers to the request.
 24765  func (c *OrganizationsSourcesListCall) Header() http.Header {
 24766  	if c.header_ == nil {
 24767  		c.header_ = make(http.Header)
 24768  	}
 24769  	return c.header_
 24770  }
 24771  
 24772  func (c *OrganizationsSourcesListCall) doRequest(alt string) (*http.Response, error) {
 24773  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 24774  	if c.ifNoneMatch_ != "" {
 24775  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 24776  	}
 24777  	var body io.Reader = nil
 24778  	c.urlParams_.Set("alt", alt)
 24779  	c.urlParams_.Set("prettyPrint", "false")
 24780  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/sources")
 24781  	urls += "?" + c.urlParams_.Encode()
 24782  	req, err := http.NewRequest("GET", urls, body)
 24783  	if err != nil {
 24784  		return nil, err
 24785  	}
 24786  	req.Header = reqHeaders
 24787  	googleapi.Expand(req.URL, map[string]string{
 24788  		"parent": c.parent,
 24789  	})
 24790  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24791  }
 24792  
 24793  // Do executes the "securitycenter.organizations.sources.list" call.
 24794  // Any non-2xx status code is an error. Response headers are in either
 24795  // *ListSourcesResponse.ServerResponse.Header or (if a response was returned at
 24796  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 24797  // check whether the returned error was because http.StatusNotModified was
 24798  // returned.
 24799  func (c *OrganizationsSourcesListCall) Do(opts ...googleapi.CallOption) (*ListSourcesResponse, error) {
 24800  	gensupport.SetOptions(c.urlParams_, opts...)
 24801  	res, err := c.doRequest("json")
 24802  	if res != nil && res.StatusCode == http.StatusNotModified {
 24803  		if res.Body != nil {
 24804  			res.Body.Close()
 24805  		}
 24806  		return nil, gensupport.WrapError(&googleapi.Error{
 24807  			Code:   res.StatusCode,
 24808  			Header: res.Header,
 24809  		})
 24810  	}
 24811  	if err != nil {
 24812  		return nil, err
 24813  	}
 24814  	defer googleapi.CloseBody(res)
 24815  	if err := googleapi.CheckResponse(res); err != nil {
 24816  		return nil, gensupport.WrapError(err)
 24817  	}
 24818  	ret := &ListSourcesResponse{
 24819  		ServerResponse: googleapi.ServerResponse{
 24820  			Header:         res.Header,
 24821  			HTTPStatusCode: res.StatusCode,
 24822  		},
 24823  	}
 24824  	target := &ret
 24825  	if err := gensupport.DecodeResponse(target, res); err != nil {
 24826  		return nil, err
 24827  	}
 24828  	return ret, nil
 24829  }
 24830  
 24831  // Pages invokes f for each page of results.
 24832  // A non-nil error returned from f will halt the iteration.
 24833  // The provided context supersedes any context provided to the Context method.
 24834  func (c *OrganizationsSourcesListCall) Pages(ctx context.Context, f func(*ListSourcesResponse) error) error {
 24835  	c.ctx_ = ctx
 24836  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 24837  	for {
 24838  		x, err := c.Do()
 24839  		if err != nil {
 24840  			return err
 24841  		}
 24842  		if err := f(x); err != nil {
 24843  			return err
 24844  		}
 24845  		if x.NextPageToken == "" {
 24846  			return nil
 24847  		}
 24848  		c.PageToken(x.NextPageToken)
 24849  	}
 24850  }
 24851  
 24852  type OrganizationsSourcesPatchCall struct {
 24853  	s          *Service
 24854  	name       string
 24855  	source     *Source
 24856  	urlParams_ gensupport.URLParams
 24857  	ctx_       context.Context
 24858  	header_    http.Header
 24859  }
 24860  
 24861  // Patch: Updates a source.
 24862  //
 24863  //   - name: The relative resource name of this source. See:
 24864  //     https://cloud.google.com/apis/design/resource_names#relative_resource_name
 24865  //     Example: "organizations/{organization_id}/sources/{source_id}".
 24866  func (r *OrganizationsSourcesService) Patch(name string, source *Source) *OrganizationsSourcesPatchCall {
 24867  	c := &OrganizationsSourcesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24868  	c.name = name
 24869  	c.source = source
 24870  	return c
 24871  }
 24872  
 24873  // UpdateMask sets the optional parameter "updateMask": The FieldMask to use
 24874  // when updating the source resource. If empty all mutable fields will be
 24875  // updated.
 24876  func (c *OrganizationsSourcesPatchCall) UpdateMask(updateMask string) *OrganizationsSourcesPatchCall {
 24877  	c.urlParams_.Set("updateMask", updateMask)
 24878  	return c
 24879  }
 24880  
 24881  // Fields allows partial responses to be retrieved. See
 24882  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 24883  // details.
 24884  func (c *OrganizationsSourcesPatchCall) Fields(s ...googleapi.Field) *OrganizationsSourcesPatchCall {
 24885  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24886  	return c
 24887  }
 24888  
 24889  // Context sets the context to be used in this call's Do method.
 24890  func (c *OrganizationsSourcesPatchCall) Context(ctx context.Context) *OrganizationsSourcesPatchCall {
 24891  	c.ctx_ = ctx
 24892  	return c
 24893  }
 24894  
 24895  // Header returns a http.Header that can be modified by the caller to add
 24896  // headers to the request.
 24897  func (c *OrganizationsSourcesPatchCall) Header() http.Header {
 24898  	if c.header_ == nil {
 24899  		c.header_ = make(http.Header)
 24900  	}
 24901  	return c.header_
 24902  }
 24903  
 24904  func (c *OrganizationsSourcesPatchCall) doRequest(alt string) (*http.Response, error) {
 24905  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 24906  	var body io.Reader = nil
 24907  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.source)
 24908  	if err != nil {
 24909  		return nil, err
 24910  	}
 24911  	c.urlParams_.Set("alt", alt)
 24912  	c.urlParams_.Set("prettyPrint", "false")
 24913  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 24914  	urls += "?" + c.urlParams_.Encode()
 24915  	req, err := http.NewRequest("PATCH", urls, body)
 24916  	if err != nil {
 24917  		return nil, err
 24918  	}
 24919  	req.Header = reqHeaders
 24920  	googleapi.Expand(req.URL, map[string]string{
 24921  		"name": c.name,
 24922  	})
 24923  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24924  }
 24925  
 24926  // Do executes the "securitycenter.organizations.sources.patch" call.
 24927  // Any non-2xx status code is an error. Response headers are in either
 24928  // *Source.ServerResponse.Header or (if a response was returned at all) in
 24929  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 24930  // whether the returned error was because http.StatusNotModified was returned.
 24931  func (c *OrganizationsSourcesPatchCall) Do(opts ...googleapi.CallOption) (*Source, error) {
 24932  	gensupport.SetOptions(c.urlParams_, opts...)
 24933  	res, err := c.doRequest("json")
 24934  	if res != nil && res.StatusCode == http.StatusNotModified {
 24935  		if res.Body != nil {
 24936  			res.Body.Close()
 24937  		}
 24938  		return nil, gensupport.WrapError(&googleapi.Error{
 24939  			Code:   res.StatusCode,
 24940  			Header: res.Header,
 24941  		})
 24942  	}
 24943  	if err != nil {
 24944  		return nil, err
 24945  	}
 24946  	defer googleapi.CloseBody(res)
 24947  	if err := googleapi.CheckResponse(res); err != nil {
 24948  		return nil, gensupport.WrapError(err)
 24949  	}
 24950  	ret := &Source{
 24951  		ServerResponse: googleapi.ServerResponse{
 24952  			Header:         res.Header,
 24953  			HTTPStatusCode: res.StatusCode,
 24954  		},
 24955  	}
 24956  	target := &ret
 24957  	if err := gensupport.DecodeResponse(target, res); err != nil {
 24958  		return nil, err
 24959  	}
 24960  	return ret, nil
 24961  }
 24962  
 24963  type OrganizationsSourcesSetIamPolicyCall struct {
 24964  	s                   *Service
 24965  	resource            string
 24966  	setiampolicyrequest *SetIamPolicyRequest
 24967  	urlParams_          gensupport.URLParams
 24968  	ctx_                context.Context
 24969  	header_             http.Header
 24970  }
 24971  
 24972  // SetIamPolicy: Sets the access control policy on the specified Source.
 24973  //
 24974  //   - resource: REQUIRED: The resource for which the policy is being specified.
 24975  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
 24976  //     for the appropriate value for this field.
 24977  func (r *OrganizationsSourcesService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *OrganizationsSourcesSetIamPolicyCall {
 24978  	c := &OrganizationsSourcesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24979  	c.resource = resource
 24980  	c.setiampolicyrequest = setiampolicyrequest
 24981  	return c
 24982  }
 24983  
 24984  // Fields allows partial responses to be retrieved. See
 24985  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 24986  // details.
 24987  func (c *OrganizationsSourcesSetIamPolicyCall) Fields(s ...googleapi.Field) *OrganizationsSourcesSetIamPolicyCall {
 24988  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24989  	return c
 24990  }
 24991  
 24992  // Context sets the context to be used in this call's Do method.
 24993  func (c *OrganizationsSourcesSetIamPolicyCall) Context(ctx context.Context) *OrganizationsSourcesSetIamPolicyCall {
 24994  	c.ctx_ = ctx
 24995  	return c
 24996  }
 24997  
 24998  // Header returns a http.Header that can be modified by the caller to add
 24999  // headers to the request.
 25000  func (c *OrganizationsSourcesSetIamPolicyCall) Header() http.Header {
 25001  	if c.header_ == nil {
 25002  		c.header_ = make(http.Header)
 25003  	}
 25004  	return c.header_
 25005  }
 25006  
 25007  func (c *OrganizationsSourcesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
 25008  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 25009  	var body io.Reader = nil
 25010  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
 25011  	if err != nil {
 25012  		return nil, err
 25013  	}
 25014  	c.urlParams_.Set("alt", alt)
 25015  	c.urlParams_.Set("prettyPrint", "false")
 25016  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy")
 25017  	urls += "?" + c.urlParams_.Encode()
 25018  	req, err := http.NewRequest("POST", urls, body)
 25019  	if err != nil {
 25020  		return nil, err
 25021  	}
 25022  	req.Header = reqHeaders
 25023  	googleapi.Expand(req.URL, map[string]string{
 25024  		"resource": c.resource,
 25025  	})
 25026  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25027  }
 25028  
 25029  // Do executes the "securitycenter.organizations.sources.setIamPolicy" call.
 25030  // Any non-2xx status code is an error. Response headers are in either
 25031  // *Policy.ServerResponse.Header or (if a response was returned at all) in
 25032  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 25033  // whether the returned error was because http.StatusNotModified was returned.
 25034  func (c *OrganizationsSourcesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
 25035  	gensupport.SetOptions(c.urlParams_, opts...)
 25036  	res, err := c.doRequest("json")
 25037  	if res != nil && res.StatusCode == http.StatusNotModified {
 25038  		if res.Body != nil {
 25039  			res.Body.Close()
 25040  		}
 25041  		return nil, gensupport.WrapError(&googleapi.Error{
 25042  			Code:   res.StatusCode,
 25043  			Header: res.Header,
 25044  		})
 25045  	}
 25046  	if err != nil {
 25047  		return nil, err
 25048  	}
 25049  	defer googleapi.CloseBody(res)
 25050  	if err := googleapi.CheckResponse(res); err != nil {
 25051  		return nil, gensupport.WrapError(err)
 25052  	}
 25053  	ret := &Policy{
 25054  		ServerResponse: googleapi.ServerResponse{
 25055  			Header:         res.Header,
 25056  			HTTPStatusCode: res.StatusCode,
 25057  		},
 25058  	}
 25059  	target := &ret
 25060  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25061  		return nil, err
 25062  	}
 25063  	return ret, nil
 25064  }
 25065  
 25066  type OrganizationsSourcesTestIamPermissionsCall struct {
 25067  	s                         *Service
 25068  	resource                  string
 25069  	testiampermissionsrequest *TestIamPermissionsRequest
 25070  	urlParams_                gensupport.URLParams
 25071  	ctx_                      context.Context
 25072  	header_                   http.Header
 25073  }
 25074  
 25075  // TestIamPermissions: Returns the permissions that a caller has on the
 25076  // specified source.
 25077  //
 25078  //   - resource: REQUIRED: The resource for which the policy detail is being
 25079  //     requested. See Resource names
 25080  //     (https://cloud.google.com/apis/design/resource_names) for the appropriate
 25081  //     value for this field.
 25082  func (r *OrganizationsSourcesService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *OrganizationsSourcesTestIamPermissionsCall {
 25083  	c := &OrganizationsSourcesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25084  	c.resource = resource
 25085  	c.testiampermissionsrequest = testiampermissionsrequest
 25086  	return c
 25087  }
 25088  
 25089  // Fields allows partial responses to be retrieved. See
 25090  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 25091  // details.
 25092  func (c *OrganizationsSourcesTestIamPermissionsCall) Fields(s ...googleapi.Field) *OrganizationsSourcesTestIamPermissionsCall {
 25093  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 25094  	return c
 25095  }
 25096  
 25097  // Context sets the context to be used in this call's Do method.
 25098  func (c *OrganizationsSourcesTestIamPermissionsCall) Context(ctx context.Context) *OrganizationsSourcesTestIamPermissionsCall {
 25099  	c.ctx_ = ctx
 25100  	return c
 25101  }
 25102  
 25103  // Header returns a http.Header that can be modified by the caller to add
 25104  // headers to the request.
 25105  func (c *OrganizationsSourcesTestIamPermissionsCall) Header() http.Header {
 25106  	if c.header_ == nil {
 25107  		c.header_ = make(http.Header)
 25108  	}
 25109  	return c.header_
 25110  }
 25111  
 25112  func (c *OrganizationsSourcesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
 25113  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 25114  	var body io.Reader = nil
 25115  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
 25116  	if err != nil {
 25117  		return nil, err
 25118  	}
 25119  	c.urlParams_.Set("alt", alt)
 25120  	c.urlParams_.Set("prettyPrint", "false")
 25121  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions")
 25122  	urls += "?" + c.urlParams_.Encode()
 25123  	req, err := http.NewRequest("POST", urls, body)
 25124  	if err != nil {
 25125  		return nil, err
 25126  	}
 25127  	req.Header = reqHeaders
 25128  	googleapi.Expand(req.URL, map[string]string{
 25129  		"resource": c.resource,
 25130  	})
 25131  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25132  }
 25133  
 25134  // Do executes the "securitycenter.organizations.sources.testIamPermissions" call.
 25135  // Any non-2xx status code is an error. Response headers are in either
 25136  // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was
 25137  // returned at all) in error.(*googleapi.Error).Header. Use
 25138  // googleapi.IsNotModified to check whether the returned error was because
 25139  // http.StatusNotModified was returned.
 25140  func (c *OrganizationsSourcesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
 25141  	gensupport.SetOptions(c.urlParams_, opts...)
 25142  	res, err := c.doRequest("json")
 25143  	if res != nil && res.StatusCode == http.StatusNotModified {
 25144  		if res.Body != nil {
 25145  			res.Body.Close()
 25146  		}
 25147  		return nil, gensupport.WrapError(&googleapi.Error{
 25148  			Code:   res.StatusCode,
 25149  			Header: res.Header,
 25150  		})
 25151  	}
 25152  	if err != nil {
 25153  		return nil, err
 25154  	}
 25155  	defer googleapi.CloseBody(res)
 25156  	if err := googleapi.CheckResponse(res); err != nil {
 25157  		return nil, gensupport.WrapError(err)
 25158  	}
 25159  	ret := &TestIamPermissionsResponse{
 25160  		ServerResponse: googleapi.ServerResponse{
 25161  			Header:         res.Header,
 25162  			HTTPStatusCode: res.StatusCode,
 25163  		},
 25164  	}
 25165  	target := &ret
 25166  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25167  		return nil, err
 25168  	}
 25169  	return ret, nil
 25170  }
 25171  
 25172  type OrganizationsSourcesFindingsCreateCall struct {
 25173  	s          *Service
 25174  	parent     string
 25175  	finding    *Finding
 25176  	urlParams_ gensupport.URLParams
 25177  	ctx_       context.Context
 25178  	header_    http.Header
 25179  }
 25180  
 25181  // Create: Creates a finding. The corresponding source must exist for finding
 25182  // creation to succeed.
 25183  //
 25184  //   - parent: Resource name of the new finding's parent. Its format should be
 25185  //     "organizations/[organization_id]/sources/[source_id]".
 25186  func (r *OrganizationsSourcesFindingsService) Create(parent string, finding *Finding) *OrganizationsSourcesFindingsCreateCall {
 25187  	c := &OrganizationsSourcesFindingsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25188  	c.parent = parent
 25189  	c.finding = finding
 25190  	return c
 25191  }
 25192  
 25193  // FindingId sets the optional parameter "findingId": Required. Unique
 25194  // identifier provided by the client within the parent scope. It must be
 25195  // alphanumeric and less than or equal to 32 characters and greater than 0
 25196  // characters in length.
 25197  func (c *OrganizationsSourcesFindingsCreateCall) FindingId(findingId string) *OrganizationsSourcesFindingsCreateCall {
 25198  	c.urlParams_.Set("findingId", findingId)
 25199  	return c
 25200  }
 25201  
 25202  // Fields allows partial responses to be retrieved. See
 25203  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 25204  // details.
 25205  func (c *OrganizationsSourcesFindingsCreateCall) Fields(s ...googleapi.Field) *OrganizationsSourcesFindingsCreateCall {
 25206  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 25207  	return c
 25208  }
 25209  
 25210  // Context sets the context to be used in this call's Do method.
 25211  func (c *OrganizationsSourcesFindingsCreateCall) Context(ctx context.Context) *OrganizationsSourcesFindingsCreateCall {
 25212  	c.ctx_ = ctx
 25213  	return c
 25214  }
 25215  
 25216  // Header returns a http.Header that can be modified by the caller to add
 25217  // headers to the request.
 25218  func (c *OrganizationsSourcesFindingsCreateCall) Header() http.Header {
 25219  	if c.header_ == nil {
 25220  		c.header_ = make(http.Header)
 25221  	}
 25222  	return c.header_
 25223  }
 25224  
 25225  func (c *OrganizationsSourcesFindingsCreateCall) doRequest(alt string) (*http.Response, error) {
 25226  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 25227  	var body io.Reader = nil
 25228  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.finding)
 25229  	if err != nil {
 25230  		return nil, err
 25231  	}
 25232  	c.urlParams_.Set("alt", alt)
 25233  	c.urlParams_.Set("prettyPrint", "false")
 25234  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/findings")
 25235  	urls += "?" + c.urlParams_.Encode()
 25236  	req, err := http.NewRequest("POST", urls, body)
 25237  	if err != nil {
 25238  		return nil, err
 25239  	}
 25240  	req.Header = reqHeaders
 25241  	googleapi.Expand(req.URL, map[string]string{
 25242  		"parent": c.parent,
 25243  	})
 25244  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25245  }
 25246  
 25247  // Do executes the "securitycenter.organizations.sources.findings.create" call.
 25248  // Any non-2xx status code is an error. Response headers are in either
 25249  // *Finding.ServerResponse.Header or (if a response was returned at all) in
 25250  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 25251  // whether the returned error was because http.StatusNotModified was returned.
 25252  func (c *OrganizationsSourcesFindingsCreateCall) Do(opts ...googleapi.CallOption) (*Finding, error) {
 25253  	gensupport.SetOptions(c.urlParams_, opts...)
 25254  	res, err := c.doRequest("json")
 25255  	if res != nil && res.StatusCode == http.StatusNotModified {
 25256  		if res.Body != nil {
 25257  			res.Body.Close()
 25258  		}
 25259  		return nil, gensupport.WrapError(&googleapi.Error{
 25260  			Code:   res.StatusCode,
 25261  			Header: res.Header,
 25262  		})
 25263  	}
 25264  	if err != nil {
 25265  		return nil, err
 25266  	}
 25267  	defer googleapi.CloseBody(res)
 25268  	if err := googleapi.CheckResponse(res); err != nil {
 25269  		return nil, gensupport.WrapError(err)
 25270  	}
 25271  	ret := &Finding{
 25272  		ServerResponse: googleapi.ServerResponse{
 25273  			Header:         res.Header,
 25274  			HTTPStatusCode: res.StatusCode,
 25275  		},
 25276  	}
 25277  	target := &ret
 25278  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25279  		return nil, err
 25280  	}
 25281  	return ret, nil
 25282  }
 25283  
 25284  type OrganizationsSourcesFindingsGroupCall struct {
 25285  	s                    *Service
 25286  	parent               string
 25287  	groupfindingsrequest *GroupFindingsRequest
 25288  	urlParams_           gensupport.URLParams
 25289  	ctx_                 context.Context
 25290  	header_              http.Header
 25291  }
 25292  
 25293  // Group: Filters an organization or source's findings and groups them by their
 25294  // specified properties. To group across all sources provide a `-` as the
 25295  // source id. Example: /v1/organizations/{organization_id}/sources/-/findings,
 25296  // /v1/folders/{folder_id}/sources/-/findings,
 25297  // /v1/projects/{project_id}/sources/-/findings
 25298  //
 25299  //   - parent: Name of the source to groupBy. Its format is
 25300  //     "organizations/[organization_id]/sources/[source_id]",
 25301  //     folders/[folder_id]/sources/[source_id], or
 25302  //     projects/[project_id]/sources/[source_id]. To groupBy across all sources
 25303  //     provide a source_id of `-`. For example:
 25304  //     organizations/{organization_id}/sources/-, folders/{folder_id}/sources/-,
 25305  //     or projects/{project_id}/sources/-.
 25306  func (r *OrganizationsSourcesFindingsService) Group(parent string, groupfindingsrequest *GroupFindingsRequest) *OrganizationsSourcesFindingsGroupCall {
 25307  	c := &OrganizationsSourcesFindingsGroupCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25308  	c.parent = parent
 25309  	c.groupfindingsrequest = groupfindingsrequest
 25310  	return c
 25311  }
 25312  
 25313  // Fields allows partial responses to be retrieved. See
 25314  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 25315  // details.
 25316  func (c *OrganizationsSourcesFindingsGroupCall) Fields(s ...googleapi.Field) *OrganizationsSourcesFindingsGroupCall {
 25317  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 25318  	return c
 25319  }
 25320  
 25321  // Context sets the context to be used in this call's Do method.
 25322  func (c *OrganizationsSourcesFindingsGroupCall) Context(ctx context.Context) *OrganizationsSourcesFindingsGroupCall {
 25323  	c.ctx_ = ctx
 25324  	return c
 25325  }
 25326  
 25327  // Header returns a http.Header that can be modified by the caller to add
 25328  // headers to the request.
 25329  func (c *OrganizationsSourcesFindingsGroupCall) Header() http.Header {
 25330  	if c.header_ == nil {
 25331  		c.header_ = make(http.Header)
 25332  	}
 25333  	return c.header_
 25334  }
 25335  
 25336  func (c *OrganizationsSourcesFindingsGroupCall) doRequest(alt string) (*http.Response, error) {
 25337  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 25338  	var body io.Reader = nil
 25339  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.groupfindingsrequest)
 25340  	if err != nil {
 25341  		return nil, err
 25342  	}
 25343  	c.urlParams_.Set("alt", alt)
 25344  	c.urlParams_.Set("prettyPrint", "false")
 25345  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/findings:group")
 25346  	urls += "?" + c.urlParams_.Encode()
 25347  	req, err := http.NewRequest("POST", urls, body)
 25348  	if err != nil {
 25349  		return nil, err
 25350  	}
 25351  	req.Header = reqHeaders
 25352  	googleapi.Expand(req.URL, map[string]string{
 25353  		"parent": c.parent,
 25354  	})
 25355  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25356  }
 25357  
 25358  // Do executes the "securitycenter.organizations.sources.findings.group" call.
 25359  // Any non-2xx status code is an error. Response headers are in either
 25360  // *GroupFindingsResponse.ServerResponse.Header or (if a response was returned
 25361  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 25362  // check whether the returned error was because http.StatusNotModified was
 25363  // returned.
 25364  func (c *OrganizationsSourcesFindingsGroupCall) Do(opts ...googleapi.CallOption) (*GroupFindingsResponse, error) {
 25365  	gensupport.SetOptions(c.urlParams_, opts...)
 25366  	res, err := c.doRequest("json")
 25367  	if res != nil && res.StatusCode == http.StatusNotModified {
 25368  		if res.Body != nil {
 25369  			res.Body.Close()
 25370  		}
 25371  		return nil, gensupport.WrapError(&googleapi.Error{
 25372  			Code:   res.StatusCode,
 25373  			Header: res.Header,
 25374  		})
 25375  	}
 25376  	if err != nil {
 25377  		return nil, err
 25378  	}
 25379  	defer googleapi.CloseBody(res)
 25380  	if err := googleapi.CheckResponse(res); err != nil {
 25381  		return nil, gensupport.WrapError(err)
 25382  	}
 25383  	ret := &GroupFindingsResponse{
 25384  		ServerResponse: googleapi.ServerResponse{
 25385  			Header:         res.Header,
 25386  			HTTPStatusCode: res.StatusCode,
 25387  		},
 25388  	}
 25389  	target := &ret
 25390  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25391  		return nil, err
 25392  	}
 25393  	return ret, nil
 25394  }
 25395  
 25396  // Pages invokes f for each page of results.
 25397  // A non-nil error returned from f will halt the iteration.
 25398  // The provided context supersedes any context provided to the Context method.
 25399  func (c *OrganizationsSourcesFindingsGroupCall) Pages(ctx context.Context, f func(*GroupFindingsResponse) error) error {
 25400  	c.ctx_ = ctx
 25401  	defer func(pt string) { c.groupfindingsrequest.PageToken = pt }(c.groupfindingsrequest.PageToken)
 25402  	for {
 25403  		x, err := c.Do()
 25404  		if err != nil {
 25405  			return err
 25406  		}
 25407  		if err := f(x); err != nil {
 25408  			return err
 25409  		}
 25410  		if x.NextPageToken == "" {
 25411  			return nil
 25412  		}
 25413  		c.groupfindingsrequest.PageToken = x.NextPageToken
 25414  	}
 25415  }
 25416  
 25417  type OrganizationsSourcesFindingsListCall struct {
 25418  	s            *Service
 25419  	parent       string
 25420  	urlParams_   gensupport.URLParams
 25421  	ifNoneMatch_ string
 25422  	ctx_         context.Context
 25423  	header_      http.Header
 25424  }
 25425  
 25426  // List: Lists an organization or source's findings. To list across all sources
 25427  // provide a `-` as the source id. Example:
 25428  // /v1/organizations/{organization_id}/sources/-/findings
 25429  //
 25430  //   - parent: Name of the source the findings belong to. Its format is
 25431  //     "organizations/[organization_id]/sources/[source_id],
 25432  //     folders/[folder_id]/sources/[source_id], or
 25433  //     projects/[project_id]/sources/[source_id]". To list across all sources
 25434  //     provide a source_id of `-`. For example:
 25435  //     organizations/{organization_id}/sources/-, folders/{folder_id}/sources/-
 25436  //     or projects/{projects_id}/sources/-.
 25437  func (r *OrganizationsSourcesFindingsService) List(parent string) *OrganizationsSourcesFindingsListCall {
 25438  	c := &OrganizationsSourcesFindingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25439  	c.parent = parent
 25440  	return c
 25441  }
 25442  
 25443  // CompareDuration sets the optional parameter "compareDuration": When
 25444  // compare_duration is set, the ListFindingsResult's "state_change" attribute
 25445  // is updated to indicate whether the finding had its state changed, the
 25446  // finding's state remained unchanged, or if the finding was added in any state
 25447  // during the compare_duration period of time that precedes the read_time. This
 25448  // is the time between (read_time - compare_duration) and read_time. The
 25449  // state_change value is derived based on the presence and state of the finding
 25450  // at the two points in time. Intermediate state changes between the two times
 25451  // don't affect the result. For example, the results aren't affected if the
 25452  // finding is made inactive and then active again. Possible "state_change"
 25453  // values when compare_duration is specified: * "CHANGED": indicates that the
 25454  // finding was present and matched the given filter at the start of
 25455  // compare_duration, but changed its state at read_time. * "UNCHANGED":
 25456  // indicates that the finding was present and matched the given filter at the
 25457  // start of compare_duration and did not change state at read_time. * "ADDED":
 25458  // indicates that the finding did not match the given filter or was not present
 25459  // at the start of compare_duration, but was present at read_time. * "REMOVED":
 25460  // indicates that the finding was present and matched the filter at the start
 25461  // of compare_duration, but did not match the filter at read_time. If
 25462  // compare_duration is not specified, then the only possible state_change is
 25463  // "UNUSED", which will be the state_change set for all findings present at
 25464  // read_time.
 25465  func (c *OrganizationsSourcesFindingsListCall) CompareDuration(compareDuration string) *OrganizationsSourcesFindingsListCall {
 25466  	c.urlParams_.Set("compareDuration", compareDuration)
 25467  	return c
 25468  }
 25469  
 25470  // FieldMask sets the optional parameter "fieldMask": A field mask to specify
 25471  // the Finding fields to be listed in the response. An empty field mask will
 25472  // list all fields.
 25473  func (c *OrganizationsSourcesFindingsListCall) FieldMask(fieldMask string) *OrganizationsSourcesFindingsListCall {
 25474  	c.urlParams_.Set("fieldMask", fieldMask)
 25475  	return c
 25476  }
 25477  
 25478  // Filter sets the optional parameter "filter": Expression that defines the
 25479  // filter to apply across findings. The expression is a list of one or more
 25480  // restrictions combined via logical operators `AND` and `OR`. Parentheses are
 25481  // supported, and `OR` has higher precedence than `AND`. Restrictions have the
 25482  // form ` ` and may have a `-` character in front of them to indicate negation.
 25483  // Examples include: * name * source_properties.a_property *
 25484  // security_marks.marks.marka The supported operators are: * `=` for all value
 25485  // types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring
 25486  // matching, for strings. The supported value types are: * string literals in
 25487  // quotes. * integer literals without quotes. * boolean literals `true` and
 25488  // `false` without quotes. The following field and operator combinations are
 25489  // supported: * name: `=` * parent: `=`, `:` * resource_name: `=`, `:` * state:
 25490  // `=`, `:` * category: `=`, `:` * external_uri: `=`, `:` * event_time: `=`,
 25491  // `>`, `<`, `>=`, `<=` Usage: This should be milliseconds since epoch or an
 25492  // RFC3339 string. Examples: `event_time = "2019-06-10T16:07:18-07:00"
 25493  // `event_time = 1560208038000` * severity: `=`, `:` * workflow_state: `=`, `:`
 25494  // * security_marks.marks: `=`, `:` * source_properties: `=`, `:`, `>`, `<`,
 25495  // `>=`, `<=` For example, `source_properties.size = 100` is a valid filter
 25496  // string. Use a partial match on the empty string to filter based on a
 25497  // property existing: `source_properties.my_property : "" Use a negated
 25498  // partial match on the empty string to filter based on a property not
 25499  // existing: `-source_properties.my_property : "" * resource: * resource.name:
 25500  // `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name:
 25501  // `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name:
 25502  // `=`, `:` * resource.type: `=`, `:` * resource.folders.resource_folder: `=`,
 25503  // `:` * resource.display_name: `=`, `:`
 25504  func (c *OrganizationsSourcesFindingsListCall) Filter(filter string) *OrganizationsSourcesFindingsListCall {
 25505  	c.urlParams_.Set("filter", filter)
 25506  	return c
 25507  }
 25508  
 25509  // OrderBy sets the optional parameter "orderBy": Expression that defines what
 25510  // fields and order to use for sorting. The string value should follow SQL
 25511  // syntax: comma separated list of fields. For example:
 25512  // "name,resource_properties.a_property". The default sorting order is
 25513  // ascending. To specify descending order for a field, a suffix " desc" should
 25514  // be appended to the field name. For example: "name
 25515  // desc,source_properties.a_property". Redundant space characters in the syntax
 25516  // are insignificant. "name desc,source_properties.a_property" and " name desc
 25517  // , source_properties.a_property " are equivalent. The following fields are
 25518  // supported: name parent state category resource_name event_time
 25519  // source_properties security_marks.marks
 25520  func (c *OrganizationsSourcesFindingsListCall) OrderBy(orderBy string) *OrganizationsSourcesFindingsListCall {
 25521  	c.urlParams_.Set("orderBy", orderBy)
 25522  	return c
 25523  }
 25524  
 25525  // PageSize sets the optional parameter "pageSize": The maximum number of
 25526  // results to return in a single response. Default is 10, minimum is 1, maximum
 25527  // is 1000.
 25528  func (c *OrganizationsSourcesFindingsListCall) PageSize(pageSize int64) *OrganizationsSourcesFindingsListCall {
 25529  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 25530  	return c
 25531  }
 25532  
 25533  // PageToken sets the optional parameter "pageToken": The value returned by the
 25534  // last `ListFindingsResponse`; indicates that this is a continuation of a
 25535  // prior `ListFindings` call, and that the system should return the next page
 25536  // of data.
 25537  func (c *OrganizationsSourcesFindingsListCall) PageToken(pageToken string) *OrganizationsSourcesFindingsListCall {
 25538  	c.urlParams_.Set("pageToken", pageToken)
 25539  	return c
 25540  }
 25541  
 25542  // ReadTime sets the optional parameter "readTime": Time used as a reference
 25543  // point when filtering findings. The filter is limited to findings existing at
 25544  // the supplied time and their values are those at that specific time. Absence
 25545  // of this field will default to the API's version of NOW.
 25546  func (c *OrganizationsSourcesFindingsListCall) ReadTime(readTime string) *OrganizationsSourcesFindingsListCall {
 25547  	c.urlParams_.Set("readTime", readTime)
 25548  	return c
 25549  }
 25550  
 25551  // Fields allows partial responses to be retrieved. See
 25552  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 25553  // details.
 25554  func (c *OrganizationsSourcesFindingsListCall) Fields(s ...googleapi.Field) *OrganizationsSourcesFindingsListCall {
 25555  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 25556  	return c
 25557  }
 25558  
 25559  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 25560  // object's ETag matches the given value. This is useful for getting updates
 25561  // only after the object has changed since the last request.
 25562  func (c *OrganizationsSourcesFindingsListCall) IfNoneMatch(entityTag string) *OrganizationsSourcesFindingsListCall {
 25563  	c.ifNoneMatch_ = entityTag
 25564  	return c
 25565  }
 25566  
 25567  // Context sets the context to be used in this call's Do method.
 25568  func (c *OrganizationsSourcesFindingsListCall) Context(ctx context.Context) *OrganizationsSourcesFindingsListCall {
 25569  	c.ctx_ = ctx
 25570  	return c
 25571  }
 25572  
 25573  // Header returns a http.Header that can be modified by the caller to add
 25574  // headers to the request.
 25575  func (c *OrganizationsSourcesFindingsListCall) Header() http.Header {
 25576  	if c.header_ == nil {
 25577  		c.header_ = make(http.Header)
 25578  	}
 25579  	return c.header_
 25580  }
 25581  
 25582  func (c *OrganizationsSourcesFindingsListCall) doRequest(alt string) (*http.Response, error) {
 25583  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 25584  	if c.ifNoneMatch_ != "" {
 25585  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 25586  	}
 25587  	var body io.Reader = nil
 25588  	c.urlParams_.Set("alt", alt)
 25589  	c.urlParams_.Set("prettyPrint", "false")
 25590  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/findings")
 25591  	urls += "?" + c.urlParams_.Encode()
 25592  	req, err := http.NewRequest("GET", urls, body)
 25593  	if err != nil {
 25594  		return nil, err
 25595  	}
 25596  	req.Header = reqHeaders
 25597  	googleapi.Expand(req.URL, map[string]string{
 25598  		"parent": c.parent,
 25599  	})
 25600  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25601  }
 25602  
 25603  // Do executes the "securitycenter.organizations.sources.findings.list" call.
 25604  // Any non-2xx status code is an error. Response headers are in either
 25605  // *ListFindingsResponse.ServerResponse.Header or (if a response was returned
 25606  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 25607  // check whether the returned error was because http.StatusNotModified was
 25608  // returned.
 25609  func (c *OrganizationsSourcesFindingsListCall) Do(opts ...googleapi.CallOption) (*ListFindingsResponse, error) {
 25610  	gensupport.SetOptions(c.urlParams_, opts...)
 25611  	res, err := c.doRequest("json")
 25612  	if res != nil && res.StatusCode == http.StatusNotModified {
 25613  		if res.Body != nil {
 25614  			res.Body.Close()
 25615  		}
 25616  		return nil, gensupport.WrapError(&googleapi.Error{
 25617  			Code:   res.StatusCode,
 25618  			Header: res.Header,
 25619  		})
 25620  	}
 25621  	if err != nil {
 25622  		return nil, err
 25623  	}
 25624  	defer googleapi.CloseBody(res)
 25625  	if err := googleapi.CheckResponse(res); err != nil {
 25626  		return nil, gensupport.WrapError(err)
 25627  	}
 25628  	ret := &ListFindingsResponse{
 25629  		ServerResponse: googleapi.ServerResponse{
 25630  			Header:         res.Header,
 25631  			HTTPStatusCode: res.StatusCode,
 25632  		},
 25633  	}
 25634  	target := &ret
 25635  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25636  		return nil, err
 25637  	}
 25638  	return ret, nil
 25639  }
 25640  
 25641  // Pages invokes f for each page of results.
 25642  // A non-nil error returned from f will halt the iteration.
 25643  // The provided context supersedes any context provided to the Context method.
 25644  func (c *OrganizationsSourcesFindingsListCall) Pages(ctx context.Context, f func(*ListFindingsResponse) error) error {
 25645  	c.ctx_ = ctx
 25646  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 25647  	for {
 25648  		x, err := c.Do()
 25649  		if err != nil {
 25650  			return err
 25651  		}
 25652  		if err := f(x); err != nil {
 25653  			return err
 25654  		}
 25655  		if x.NextPageToken == "" {
 25656  			return nil
 25657  		}
 25658  		c.PageToken(x.NextPageToken)
 25659  	}
 25660  }
 25661  
 25662  type OrganizationsSourcesFindingsPatchCall struct {
 25663  	s          *Service
 25664  	name       string
 25665  	finding    *Finding
 25666  	urlParams_ gensupport.URLParams
 25667  	ctx_       context.Context
 25668  	header_    http.Header
 25669  }
 25670  
 25671  // Patch: Creates or updates a finding. The corresponding source must exist for
 25672  // a finding creation to succeed.
 25673  //
 25674  //   - name: The relative resource name
 25675  //     (https://cloud.google.com/apis/design/resource_names#relative_resource_name)
 25676  //     of the finding. Example:
 25677  //     "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}"
 25678  //     , "folders/{folder_id}/sources/{source_id}/findings/{finding_id}",
 25679  //     "projects/{project_id}/sources/{source_id}/findings/{finding_id}".
 25680  func (r *OrganizationsSourcesFindingsService) Patch(name string, finding *Finding) *OrganizationsSourcesFindingsPatchCall {
 25681  	c := &OrganizationsSourcesFindingsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25682  	c.name = name
 25683  	c.finding = finding
 25684  	return c
 25685  }
 25686  
 25687  // UpdateMask sets the optional parameter "updateMask": The FieldMask to use
 25688  // when updating the finding resource. This field should not be specified when
 25689  // creating a finding. When updating a finding, an empty mask is treated as
 25690  // updating all mutable fields and replacing source_properties. Individual
 25691  // source_properties can be added/updated by using "source_properties." in the
 25692  // field mask.
 25693  func (c *OrganizationsSourcesFindingsPatchCall) UpdateMask(updateMask string) *OrganizationsSourcesFindingsPatchCall {
 25694  	c.urlParams_.Set("updateMask", updateMask)
 25695  	return c
 25696  }
 25697  
 25698  // Fields allows partial responses to be retrieved. See
 25699  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 25700  // details.
 25701  func (c *OrganizationsSourcesFindingsPatchCall) Fields(s ...googleapi.Field) *OrganizationsSourcesFindingsPatchCall {
 25702  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 25703  	return c
 25704  }
 25705  
 25706  // Context sets the context to be used in this call's Do method.
 25707  func (c *OrganizationsSourcesFindingsPatchCall) Context(ctx context.Context) *OrganizationsSourcesFindingsPatchCall {
 25708  	c.ctx_ = ctx
 25709  	return c
 25710  }
 25711  
 25712  // Header returns a http.Header that can be modified by the caller to add
 25713  // headers to the request.
 25714  func (c *OrganizationsSourcesFindingsPatchCall) Header() http.Header {
 25715  	if c.header_ == nil {
 25716  		c.header_ = make(http.Header)
 25717  	}
 25718  	return c.header_
 25719  }
 25720  
 25721  func (c *OrganizationsSourcesFindingsPatchCall) doRequest(alt string) (*http.Response, error) {
 25722  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 25723  	var body io.Reader = nil
 25724  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.finding)
 25725  	if err != nil {
 25726  		return nil, err
 25727  	}
 25728  	c.urlParams_.Set("alt", alt)
 25729  	c.urlParams_.Set("prettyPrint", "false")
 25730  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 25731  	urls += "?" + c.urlParams_.Encode()
 25732  	req, err := http.NewRequest("PATCH", urls, body)
 25733  	if err != nil {
 25734  		return nil, err
 25735  	}
 25736  	req.Header = reqHeaders
 25737  	googleapi.Expand(req.URL, map[string]string{
 25738  		"name": c.name,
 25739  	})
 25740  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25741  }
 25742  
 25743  // Do executes the "securitycenter.organizations.sources.findings.patch" call.
 25744  // Any non-2xx status code is an error. Response headers are in either
 25745  // *Finding.ServerResponse.Header or (if a response was returned at all) in
 25746  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 25747  // whether the returned error was because http.StatusNotModified was returned.
 25748  func (c *OrganizationsSourcesFindingsPatchCall) Do(opts ...googleapi.CallOption) (*Finding, error) {
 25749  	gensupport.SetOptions(c.urlParams_, opts...)
 25750  	res, err := c.doRequest("json")
 25751  	if res != nil && res.StatusCode == http.StatusNotModified {
 25752  		if res.Body != nil {
 25753  			res.Body.Close()
 25754  		}
 25755  		return nil, gensupport.WrapError(&googleapi.Error{
 25756  			Code:   res.StatusCode,
 25757  			Header: res.Header,
 25758  		})
 25759  	}
 25760  	if err != nil {
 25761  		return nil, err
 25762  	}
 25763  	defer googleapi.CloseBody(res)
 25764  	if err := googleapi.CheckResponse(res); err != nil {
 25765  		return nil, gensupport.WrapError(err)
 25766  	}
 25767  	ret := &Finding{
 25768  		ServerResponse: googleapi.ServerResponse{
 25769  			Header:         res.Header,
 25770  			HTTPStatusCode: res.StatusCode,
 25771  		},
 25772  	}
 25773  	target := &ret
 25774  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25775  		return nil, err
 25776  	}
 25777  	return ret, nil
 25778  }
 25779  
 25780  type OrganizationsSourcesFindingsSetMuteCall struct {
 25781  	s              *Service
 25782  	name           string
 25783  	setmuterequest *SetMuteRequest
 25784  	urlParams_     gensupport.URLParams
 25785  	ctx_           context.Context
 25786  	header_        http.Header
 25787  }
 25788  
 25789  // SetMute: Updates the mute state of a finding.
 25790  //
 25791  //   - name: The relative resource name
 25792  //     (https://cloud.google.com/apis/design/resource_names#relative_resource_name)
 25793  //     of the finding. Example:
 25794  //     "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}"
 25795  //     , "folders/{folder_id}/sources/{source_id}/findings/{finding_id}",
 25796  //     "projects/{project_id}/sources/{source_id}/findings/{finding_id}".
 25797  func (r *OrganizationsSourcesFindingsService) SetMute(name string, setmuterequest *SetMuteRequest) *OrganizationsSourcesFindingsSetMuteCall {
 25798  	c := &OrganizationsSourcesFindingsSetMuteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25799  	c.name = name
 25800  	c.setmuterequest = setmuterequest
 25801  	return c
 25802  }
 25803  
 25804  // Fields allows partial responses to be retrieved. See
 25805  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 25806  // details.
 25807  func (c *OrganizationsSourcesFindingsSetMuteCall) Fields(s ...googleapi.Field) *OrganizationsSourcesFindingsSetMuteCall {
 25808  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 25809  	return c
 25810  }
 25811  
 25812  // Context sets the context to be used in this call's Do method.
 25813  func (c *OrganizationsSourcesFindingsSetMuteCall) Context(ctx context.Context) *OrganizationsSourcesFindingsSetMuteCall {
 25814  	c.ctx_ = ctx
 25815  	return c
 25816  }
 25817  
 25818  // Header returns a http.Header that can be modified by the caller to add
 25819  // headers to the request.
 25820  func (c *OrganizationsSourcesFindingsSetMuteCall) Header() http.Header {
 25821  	if c.header_ == nil {
 25822  		c.header_ = make(http.Header)
 25823  	}
 25824  	return c.header_
 25825  }
 25826  
 25827  func (c *OrganizationsSourcesFindingsSetMuteCall) doRequest(alt string) (*http.Response, error) {
 25828  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 25829  	var body io.Reader = nil
 25830  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setmuterequest)
 25831  	if err != nil {
 25832  		return nil, err
 25833  	}
 25834  	c.urlParams_.Set("alt", alt)
 25835  	c.urlParams_.Set("prettyPrint", "false")
 25836  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:setMute")
 25837  	urls += "?" + c.urlParams_.Encode()
 25838  	req, err := http.NewRequest("POST", urls, body)
 25839  	if err != nil {
 25840  		return nil, err
 25841  	}
 25842  	req.Header = reqHeaders
 25843  	googleapi.Expand(req.URL, map[string]string{
 25844  		"name": c.name,
 25845  	})
 25846  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25847  }
 25848  
 25849  // Do executes the "securitycenter.organizations.sources.findings.setMute" call.
 25850  // Any non-2xx status code is an error. Response headers are in either
 25851  // *Finding.ServerResponse.Header or (if a response was returned at all) in
 25852  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 25853  // whether the returned error was because http.StatusNotModified was returned.
 25854  func (c *OrganizationsSourcesFindingsSetMuteCall) Do(opts ...googleapi.CallOption) (*Finding, error) {
 25855  	gensupport.SetOptions(c.urlParams_, opts...)
 25856  	res, err := c.doRequest("json")
 25857  	if res != nil && res.StatusCode == http.StatusNotModified {
 25858  		if res.Body != nil {
 25859  			res.Body.Close()
 25860  		}
 25861  		return nil, gensupport.WrapError(&googleapi.Error{
 25862  			Code:   res.StatusCode,
 25863  			Header: res.Header,
 25864  		})
 25865  	}
 25866  	if err != nil {
 25867  		return nil, err
 25868  	}
 25869  	defer googleapi.CloseBody(res)
 25870  	if err := googleapi.CheckResponse(res); err != nil {
 25871  		return nil, gensupport.WrapError(err)
 25872  	}
 25873  	ret := &Finding{
 25874  		ServerResponse: googleapi.ServerResponse{
 25875  			Header:         res.Header,
 25876  			HTTPStatusCode: res.StatusCode,
 25877  		},
 25878  	}
 25879  	target := &ret
 25880  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25881  		return nil, err
 25882  	}
 25883  	return ret, nil
 25884  }
 25885  
 25886  type OrganizationsSourcesFindingsSetStateCall struct {
 25887  	s                      *Service
 25888  	name                   string
 25889  	setfindingstaterequest *SetFindingStateRequest
 25890  	urlParams_             gensupport.URLParams
 25891  	ctx_                   context.Context
 25892  	header_                http.Header
 25893  }
 25894  
 25895  // SetState: Updates the state of a finding.
 25896  //
 25897  //   - name: The relative resource name
 25898  //     (https://cloud.google.com/apis/design/resource_names#relative_resource_name)
 25899  //     of the finding. Example:
 25900  //     "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}"
 25901  //     , "folders/{folder_id}/sources/{source_id}/findings/{finding_id}",
 25902  //     "projects/{project_id}/sources/{source_id}/findings/{finding_id}".
 25903  func (r *OrganizationsSourcesFindingsService) SetState(name string, setfindingstaterequest *SetFindingStateRequest) *OrganizationsSourcesFindingsSetStateCall {
 25904  	c := &OrganizationsSourcesFindingsSetStateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25905  	c.name = name
 25906  	c.setfindingstaterequest = setfindingstaterequest
 25907  	return c
 25908  }
 25909  
 25910  // Fields allows partial responses to be retrieved. See
 25911  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 25912  // details.
 25913  func (c *OrganizationsSourcesFindingsSetStateCall) Fields(s ...googleapi.Field) *OrganizationsSourcesFindingsSetStateCall {
 25914  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 25915  	return c
 25916  }
 25917  
 25918  // Context sets the context to be used in this call's Do method.
 25919  func (c *OrganizationsSourcesFindingsSetStateCall) Context(ctx context.Context) *OrganizationsSourcesFindingsSetStateCall {
 25920  	c.ctx_ = ctx
 25921  	return c
 25922  }
 25923  
 25924  // Header returns a http.Header that can be modified by the caller to add
 25925  // headers to the request.
 25926  func (c *OrganizationsSourcesFindingsSetStateCall) Header() http.Header {
 25927  	if c.header_ == nil {
 25928  		c.header_ = make(http.Header)
 25929  	}
 25930  	return c.header_
 25931  }
 25932  
 25933  func (c *OrganizationsSourcesFindingsSetStateCall) doRequest(alt string) (*http.Response, error) {
 25934  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 25935  	var body io.Reader = nil
 25936  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setfindingstaterequest)
 25937  	if err != nil {
 25938  		return nil, err
 25939  	}
 25940  	c.urlParams_.Set("alt", alt)
 25941  	c.urlParams_.Set("prettyPrint", "false")
 25942  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:setState")
 25943  	urls += "?" + c.urlParams_.Encode()
 25944  	req, err := http.NewRequest("POST", urls, body)
 25945  	if err != nil {
 25946  		return nil, err
 25947  	}
 25948  	req.Header = reqHeaders
 25949  	googleapi.Expand(req.URL, map[string]string{
 25950  		"name": c.name,
 25951  	})
 25952  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25953  }
 25954  
 25955  // Do executes the "securitycenter.organizations.sources.findings.setState" call.
 25956  // Any non-2xx status code is an error. Response headers are in either
 25957  // *Finding.ServerResponse.Header or (if a response was returned at all) in
 25958  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 25959  // whether the returned error was because http.StatusNotModified was returned.
 25960  func (c *OrganizationsSourcesFindingsSetStateCall) Do(opts ...googleapi.CallOption) (*Finding, error) {
 25961  	gensupport.SetOptions(c.urlParams_, opts...)
 25962  	res, err := c.doRequest("json")
 25963  	if res != nil && res.StatusCode == http.StatusNotModified {
 25964  		if res.Body != nil {
 25965  			res.Body.Close()
 25966  		}
 25967  		return nil, gensupport.WrapError(&googleapi.Error{
 25968  			Code:   res.StatusCode,
 25969  			Header: res.Header,
 25970  		})
 25971  	}
 25972  	if err != nil {
 25973  		return nil, err
 25974  	}
 25975  	defer googleapi.CloseBody(res)
 25976  	if err := googleapi.CheckResponse(res); err != nil {
 25977  		return nil, gensupport.WrapError(err)
 25978  	}
 25979  	ret := &Finding{
 25980  		ServerResponse: googleapi.ServerResponse{
 25981  			Header:         res.Header,
 25982  			HTTPStatusCode: res.StatusCode,
 25983  		},
 25984  	}
 25985  	target := &ret
 25986  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25987  		return nil, err
 25988  	}
 25989  	return ret, nil
 25990  }
 25991  
 25992  type OrganizationsSourcesFindingsUpdateSecurityMarksCall struct {
 25993  	s             *Service
 25994  	name          string
 25995  	securitymarks *SecurityMarks
 25996  	urlParams_    gensupport.URLParams
 25997  	ctx_          context.Context
 25998  	header_       http.Header
 25999  }
 26000  
 26001  // UpdateSecurityMarks: Updates security marks.
 26002  //
 26003  //   - name: The relative resource name of the SecurityMarks. See:
 26004  //     https://cloud.google.com/apis/design/resource_names#relative_resource_name
 26005  //     Examples:
 26006  //     "organizations/{organization_id}/assets/{asset_id}/securityMarks"
 26007  //     "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/
 26008  //     securityMarks".
 26009  func (r *OrganizationsSourcesFindingsService) UpdateSecurityMarks(name string, securitymarks *SecurityMarks) *OrganizationsSourcesFindingsUpdateSecurityMarksCall {
 26010  	c := &OrganizationsSourcesFindingsUpdateSecurityMarksCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 26011  	c.name = name
 26012  	c.securitymarks = securitymarks
 26013  	return c
 26014  }
 26015  
 26016  // StartTime sets the optional parameter "startTime": The time at which the
 26017  // updated SecurityMarks take effect. If not set uses current server time.
 26018  // Updates will be applied to the SecurityMarks that are active immediately
 26019  // preceding this time. Must be earlier or equal to the server time.
 26020  func (c *OrganizationsSourcesFindingsUpdateSecurityMarksCall) StartTime(startTime string) *OrganizationsSourcesFindingsUpdateSecurityMarksCall {
 26021  	c.urlParams_.Set("startTime", startTime)
 26022  	return c
 26023  }
 26024  
 26025  // UpdateMask sets the optional parameter "updateMask": The FieldMask to use
 26026  // when updating the security marks resource. The field mask must not contain
 26027  // duplicate fields. If empty or set to "marks", all marks will be replaced.
 26028  // Individual marks can be updated using "marks.".
 26029  func (c *OrganizationsSourcesFindingsUpdateSecurityMarksCall) UpdateMask(updateMask string) *OrganizationsSourcesFindingsUpdateSecurityMarksCall {
 26030  	c.urlParams_.Set("updateMask", updateMask)
 26031  	return c
 26032  }
 26033  
 26034  // Fields allows partial responses to be retrieved. See
 26035  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 26036  // details.
 26037  func (c *OrganizationsSourcesFindingsUpdateSecurityMarksCall) Fields(s ...googleapi.Field) *OrganizationsSourcesFindingsUpdateSecurityMarksCall {
 26038  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 26039  	return c
 26040  }
 26041  
 26042  // Context sets the context to be used in this call's Do method.
 26043  func (c *OrganizationsSourcesFindingsUpdateSecurityMarksCall) Context(ctx context.Context) *OrganizationsSourcesFindingsUpdateSecurityMarksCall {
 26044  	c.ctx_ = ctx
 26045  	return c
 26046  }
 26047  
 26048  // Header returns a http.Header that can be modified by the caller to add
 26049  // headers to the request.
 26050  func (c *OrganizationsSourcesFindingsUpdateSecurityMarksCall) Header() http.Header {
 26051  	if c.header_ == nil {
 26052  		c.header_ = make(http.Header)
 26053  	}
 26054  	return c.header_
 26055  }
 26056  
 26057  func (c *OrganizationsSourcesFindingsUpdateSecurityMarksCall) doRequest(alt string) (*http.Response, error) {
 26058  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 26059  	var body io.Reader = nil
 26060  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.securitymarks)
 26061  	if err != nil {
 26062  		return nil, err
 26063  	}
 26064  	c.urlParams_.Set("alt", alt)
 26065  	c.urlParams_.Set("prettyPrint", "false")
 26066  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 26067  	urls += "?" + c.urlParams_.Encode()
 26068  	req, err := http.NewRequest("PATCH", urls, body)
 26069  	if err != nil {
 26070  		return nil, err
 26071  	}
 26072  	req.Header = reqHeaders
 26073  	googleapi.Expand(req.URL, map[string]string{
 26074  		"name": c.name,
 26075  	})
 26076  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 26077  }
 26078  
 26079  // Do executes the "securitycenter.organizations.sources.findings.updateSecurityMarks" call.
 26080  // Any non-2xx status code is an error. Response headers are in either
 26081  // *SecurityMarks.ServerResponse.Header or (if a response was returned at all)
 26082  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 26083  // whether the returned error was because http.StatusNotModified was returned.
 26084  func (c *OrganizationsSourcesFindingsUpdateSecurityMarksCall) Do(opts ...googleapi.CallOption) (*SecurityMarks, error) {
 26085  	gensupport.SetOptions(c.urlParams_, opts...)
 26086  	res, err := c.doRequest("json")
 26087  	if res != nil && res.StatusCode == http.StatusNotModified {
 26088  		if res.Body != nil {
 26089  			res.Body.Close()
 26090  		}
 26091  		return nil, gensupport.WrapError(&googleapi.Error{
 26092  			Code:   res.StatusCode,
 26093  			Header: res.Header,
 26094  		})
 26095  	}
 26096  	if err != nil {
 26097  		return nil, err
 26098  	}
 26099  	defer googleapi.CloseBody(res)
 26100  	if err := googleapi.CheckResponse(res); err != nil {
 26101  		return nil, gensupport.WrapError(err)
 26102  	}
 26103  	ret := &SecurityMarks{
 26104  		ServerResponse: googleapi.ServerResponse{
 26105  			Header:         res.Header,
 26106  			HTTPStatusCode: res.StatusCode,
 26107  		},
 26108  	}
 26109  	target := &ret
 26110  	if err := gensupport.DecodeResponse(target, res); err != nil {
 26111  		return nil, err
 26112  	}
 26113  	return ret, nil
 26114  }
 26115  
 26116  type OrganizationsSourcesFindingsExternalSystemsPatchCall struct {
 26117  	s                                         *Service
 26118  	name                                      string
 26119  	googlecloudsecuritycenterv1externalsystem *GoogleCloudSecuritycenterV1ExternalSystem
 26120  	urlParams_                                gensupport.URLParams
 26121  	ctx_                                      context.Context
 26122  	header_                                   http.Header
 26123  }
 26124  
 26125  // Patch: Updates external system. This is for a given finding.
 26126  //
 26127  //   - name: Full resource name of the external system, for example:
 26128  //     "organizations/1234/sources/5678/findings/123456/externalSystems/jira",
 26129  //     "folders/1234/sources/5678/findings/123456/externalSystems/jira",
 26130  //     "projects/1234/sources/5678/findings/123456/externalSystems/jira".
 26131  func (r *OrganizationsSourcesFindingsExternalSystemsService) Patch(name string, googlecloudsecuritycenterv1externalsystem *GoogleCloudSecuritycenterV1ExternalSystem) *OrganizationsSourcesFindingsExternalSystemsPatchCall {
 26132  	c := &OrganizationsSourcesFindingsExternalSystemsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 26133  	c.name = name
 26134  	c.googlecloudsecuritycenterv1externalsystem = googlecloudsecuritycenterv1externalsystem
 26135  	return c
 26136  }
 26137  
 26138  // UpdateMask sets the optional parameter "updateMask": The FieldMask to use
 26139  // when updating the external system resource. If empty all mutable fields will
 26140  // be updated.
 26141  func (c *OrganizationsSourcesFindingsExternalSystemsPatchCall) UpdateMask(updateMask string) *OrganizationsSourcesFindingsExternalSystemsPatchCall {
 26142  	c.urlParams_.Set("updateMask", updateMask)
 26143  	return c
 26144  }
 26145  
 26146  // Fields allows partial responses to be retrieved. See
 26147  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 26148  // details.
 26149  func (c *OrganizationsSourcesFindingsExternalSystemsPatchCall) Fields(s ...googleapi.Field) *OrganizationsSourcesFindingsExternalSystemsPatchCall {
 26150  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 26151  	return c
 26152  }
 26153  
 26154  // Context sets the context to be used in this call's Do method.
 26155  func (c *OrganizationsSourcesFindingsExternalSystemsPatchCall) Context(ctx context.Context) *OrganizationsSourcesFindingsExternalSystemsPatchCall {
 26156  	c.ctx_ = ctx
 26157  	return c
 26158  }
 26159  
 26160  // Header returns a http.Header that can be modified by the caller to add
 26161  // headers to the request.
 26162  func (c *OrganizationsSourcesFindingsExternalSystemsPatchCall) Header() http.Header {
 26163  	if c.header_ == nil {
 26164  		c.header_ = make(http.Header)
 26165  	}
 26166  	return c.header_
 26167  }
 26168  
 26169  func (c *OrganizationsSourcesFindingsExternalSystemsPatchCall) doRequest(alt string) (*http.Response, error) {
 26170  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 26171  	var body io.Reader = nil
 26172  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1externalsystem)
 26173  	if err != nil {
 26174  		return nil, err
 26175  	}
 26176  	c.urlParams_.Set("alt", alt)
 26177  	c.urlParams_.Set("prettyPrint", "false")
 26178  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 26179  	urls += "?" + c.urlParams_.Encode()
 26180  	req, err := http.NewRequest("PATCH", urls, body)
 26181  	if err != nil {
 26182  		return nil, err
 26183  	}
 26184  	req.Header = reqHeaders
 26185  	googleapi.Expand(req.URL, map[string]string{
 26186  		"name": c.name,
 26187  	})
 26188  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 26189  }
 26190  
 26191  // Do executes the "securitycenter.organizations.sources.findings.externalSystems.patch" call.
 26192  // Any non-2xx status code is an error. Response headers are in either
 26193  // *GoogleCloudSecuritycenterV1ExternalSystem.ServerResponse.Header or (if a
 26194  // response was returned at all) in error.(*googleapi.Error).Header. Use
 26195  // googleapi.IsNotModified to check whether the returned error was because
 26196  // http.StatusNotModified was returned.
 26197  func (c *OrganizationsSourcesFindingsExternalSystemsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1ExternalSystem, error) {
 26198  	gensupport.SetOptions(c.urlParams_, opts...)
 26199  	res, err := c.doRequest("json")
 26200  	if res != nil && res.StatusCode == http.StatusNotModified {
 26201  		if res.Body != nil {
 26202  			res.Body.Close()
 26203  		}
 26204  		return nil, gensupport.WrapError(&googleapi.Error{
 26205  			Code:   res.StatusCode,
 26206  			Header: res.Header,
 26207  		})
 26208  	}
 26209  	if err != nil {
 26210  		return nil, err
 26211  	}
 26212  	defer googleapi.CloseBody(res)
 26213  	if err := googleapi.CheckResponse(res); err != nil {
 26214  		return nil, gensupport.WrapError(err)
 26215  	}
 26216  	ret := &GoogleCloudSecuritycenterV1ExternalSystem{
 26217  		ServerResponse: googleapi.ServerResponse{
 26218  			Header:         res.Header,
 26219  			HTTPStatusCode: res.StatusCode,
 26220  		},
 26221  	}
 26222  	target := &ret
 26223  	if err := gensupport.DecodeResponse(target, res); err != nil {
 26224  		return nil, err
 26225  	}
 26226  	return ret, nil
 26227  }
 26228  
 26229  type ProjectsAssetsGroupCall struct {
 26230  	s                  *Service
 26231  	parent             string
 26232  	groupassetsrequest *GroupAssetsRequest
 26233  	urlParams_         gensupport.URLParams
 26234  	ctx_               context.Context
 26235  	header_            http.Header
 26236  }
 26237  
 26238  // Group: Filters an organization's assets and groups them by their specified
 26239  // properties.
 26240  //
 26241  //   - parent: The name of the parent to group the assets by. Its format is
 26242  //     "organizations/[organization_id]", "folders/[folder_id]", or
 26243  //     "projects/[project_id]".
 26244  func (r *ProjectsAssetsService) Group(parent string, groupassetsrequest *GroupAssetsRequest) *ProjectsAssetsGroupCall {
 26245  	c := &ProjectsAssetsGroupCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 26246  	c.parent = parent
 26247  	c.groupassetsrequest = groupassetsrequest
 26248  	return c
 26249  }
 26250  
 26251  // Fields allows partial responses to be retrieved. See
 26252  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 26253  // details.
 26254  func (c *ProjectsAssetsGroupCall) Fields(s ...googleapi.Field) *ProjectsAssetsGroupCall {
 26255  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 26256  	return c
 26257  }
 26258  
 26259  // Context sets the context to be used in this call's Do method.
 26260  func (c *ProjectsAssetsGroupCall) Context(ctx context.Context) *ProjectsAssetsGroupCall {
 26261  	c.ctx_ = ctx
 26262  	return c
 26263  }
 26264  
 26265  // Header returns a http.Header that can be modified by the caller to add
 26266  // headers to the request.
 26267  func (c *ProjectsAssetsGroupCall) Header() http.Header {
 26268  	if c.header_ == nil {
 26269  		c.header_ = make(http.Header)
 26270  	}
 26271  	return c.header_
 26272  }
 26273  
 26274  func (c *ProjectsAssetsGroupCall) doRequest(alt string) (*http.Response, error) {
 26275  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 26276  	var body io.Reader = nil
 26277  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.groupassetsrequest)
 26278  	if err != nil {
 26279  		return nil, err
 26280  	}
 26281  	c.urlParams_.Set("alt", alt)
 26282  	c.urlParams_.Set("prettyPrint", "false")
 26283  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/assets:group")
 26284  	urls += "?" + c.urlParams_.Encode()
 26285  	req, err := http.NewRequest("POST", urls, body)
 26286  	if err != nil {
 26287  		return nil, err
 26288  	}
 26289  	req.Header = reqHeaders
 26290  	googleapi.Expand(req.URL, map[string]string{
 26291  		"parent": c.parent,
 26292  	})
 26293  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 26294  }
 26295  
 26296  // Do executes the "securitycenter.projects.assets.group" call.
 26297  // Any non-2xx status code is an error. Response headers are in either
 26298  // *GroupAssetsResponse.ServerResponse.Header or (if a response was returned at
 26299  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 26300  // check whether the returned error was because http.StatusNotModified was
 26301  // returned.
 26302  func (c *ProjectsAssetsGroupCall) Do(opts ...googleapi.CallOption) (*GroupAssetsResponse, error) {
 26303  	gensupport.SetOptions(c.urlParams_, opts...)
 26304  	res, err := c.doRequest("json")
 26305  	if res != nil && res.StatusCode == http.StatusNotModified {
 26306  		if res.Body != nil {
 26307  			res.Body.Close()
 26308  		}
 26309  		return nil, gensupport.WrapError(&googleapi.Error{
 26310  			Code:   res.StatusCode,
 26311  			Header: res.Header,
 26312  		})
 26313  	}
 26314  	if err != nil {
 26315  		return nil, err
 26316  	}
 26317  	defer googleapi.CloseBody(res)
 26318  	if err := googleapi.CheckResponse(res); err != nil {
 26319  		return nil, gensupport.WrapError(err)
 26320  	}
 26321  	ret := &GroupAssetsResponse{
 26322  		ServerResponse: googleapi.ServerResponse{
 26323  			Header:         res.Header,
 26324  			HTTPStatusCode: res.StatusCode,
 26325  		},
 26326  	}
 26327  	target := &ret
 26328  	if err := gensupport.DecodeResponse(target, res); err != nil {
 26329  		return nil, err
 26330  	}
 26331  	return ret, nil
 26332  }
 26333  
 26334  // Pages invokes f for each page of results.
 26335  // A non-nil error returned from f will halt the iteration.
 26336  // The provided context supersedes any context provided to the Context method.
 26337  func (c *ProjectsAssetsGroupCall) Pages(ctx context.Context, f func(*GroupAssetsResponse) error) error {
 26338  	c.ctx_ = ctx
 26339  	defer func(pt string) { c.groupassetsrequest.PageToken = pt }(c.groupassetsrequest.PageToken)
 26340  	for {
 26341  		x, err := c.Do()
 26342  		if err != nil {
 26343  			return err
 26344  		}
 26345  		if err := f(x); err != nil {
 26346  			return err
 26347  		}
 26348  		if x.NextPageToken == "" {
 26349  			return nil
 26350  		}
 26351  		c.groupassetsrequest.PageToken = x.NextPageToken
 26352  	}
 26353  }
 26354  
 26355  type ProjectsAssetsListCall struct {
 26356  	s            *Service
 26357  	parent       string
 26358  	urlParams_   gensupport.URLParams
 26359  	ifNoneMatch_ string
 26360  	ctx_         context.Context
 26361  	header_      http.Header
 26362  }
 26363  
 26364  // List: Lists an organization's assets.
 26365  //
 26366  //   - parent: The name of the parent resource that contains the assets. The
 26367  //     value that you can specify on parent depends on the method in which you
 26368  //     specify parent. You can specify one of the following values:
 26369  //     "organizations/[organization_id]", "folders/[folder_id]", or
 26370  //     "projects/[project_id]".
 26371  func (r *ProjectsAssetsService) List(parent string) *ProjectsAssetsListCall {
 26372  	c := &ProjectsAssetsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 26373  	c.parent = parent
 26374  	return c
 26375  }
 26376  
 26377  // CompareDuration sets the optional parameter "compareDuration": When
 26378  // compare_duration is set, the ListAssetsResult's "state_change" attribute is
 26379  // updated to indicate whether the asset was added, removed, or remained
 26380  // present during the compare_duration period of time that precedes the
 26381  // read_time. This is the time between (read_time - compare_duration) and
 26382  // read_time. The state_change value is derived based on the presence of the
 26383  // asset at the two points in time. Intermediate state changes between the two
 26384  // times don't affect the result. For example, the results aren't affected if
 26385  // the asset is removed and re-created again. Possible "state_change" values
 26386  // when compare_duration is specified: * "ADDED": indicates that the asset was
 26387  // not present at the start of compare_duration, but present at read_time. *
 26388  // "REMOVED": indicates that the asset was present at the start of
 26389  // compare_duration, but not present at read_time. * "ACTIVE": indicates that
 26390  // the asset was present at both the start and the end of the time period
 26391  // defined by compare_duration and read_time. If compare_duration is not
 26392  // specified, then the only possible state_change is "UNUSED", which will be
 26393  // the state_change set for all assets present at read_time.
 26394  func (c *ProjectsAssetsListCall) CompareDuration(compareDuration string) *ProjectsAssetsListCall {
 26395  	c.urlParams_.Set("compareDuration", compareDuration)
 26396  	return c
 26397  }
 26398  
 26399  // FieldMask sets the optional parameter "fieldMask": A field mask to specify
 26400  // the ListAssetsResult fields to be listed in the response. An empty field
 26401  // mask will list all fields.
 26402  func (c *ProjectsAssetsListCall) FieldMask(fieldMask string) *ProjectsAssetsListCall {
 26403  	c.urlParams_.Set("fieldMask", fieldMask)
 26404  	return c
 26405  }
 26406  
 26407  // Filter sets the optional parameter "filter": Expression that defines the
 26408  // filter to apply across assets. The expression is a list of zero or more
 26409  // restrictions combined via logical operators `AND` and `OR`. Parentheses are
 26410  // supported, and `OR` has higher precedence than `AND`. Restrictions have the
 26411  // form ` ` and may have a `-` character in front of them to indicate negation.
 26412  // The fields map to those defined in the Asset resource. Examples include: *
 26413  // name * security_center_properties.resource_name *
 26414  // resource_properties.a_property * security_marks.marks.marka The supported
 26415  // operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer
 26416  // values. * `:`, meaning substring matching, for strings. The supported value
 26417  // types are: * string literals in quotes. * integer literals without quotes. *
 26418  // boolean literals `true` and `false` without quotes. The following are the
 26419  // allowed field and operator combinations: * name: `=` * update_time: `=`,
 26420  // `>`, `<`, `>=`, `<=` Usage: This should be milliseconds since epoch or an
 26421  // RFC3339 string. Examples: `update_time = "2019-06-10T16:07:18-07:00"
 26422  // `update_time = 1560208038000` * create_time: `=`, `>`, `<`, `>=`, `<=`
 26423  // Usage: This should be milliseconds since epoch or an RFC3339 string.
 26424  // Examples: `create_time = "2019-06-10T16:07:18-07:00" `create_time =
 26425  // 1560208038000` * iam_policy.policy_blob: `=`, `:` * resource_properties:
 26426  // `=`, `:`, `>`, `<`, `>=`, `<=` * security_marks.marks: `=`, `:` *
 26427  // security_center_properties.resource_name: `=`, `:` *
 26428  // security_center_properties.resource_display_name: `=`, `:` *
 26429  // security_center_properties.resource_type: `=`, `:` *
 26430  // security_center_properties.resource_parent: `=`, `:` *
 26431  // security_center_properties.resource_parent_display_name: `=`, `:` *
 26432  // security_center_properties.resource_project: `=`, `:` *
 26433  // security_center_properties.resource_project_display_name: `=`, `:` *
 26434  // security_center_properties.resource_owners: `=`, `:` For example,
 26435  // `resource_properties.size = 100` is a valid filter string. Use a partial
 26436  // match on the empty string to filter based on a property existing:
 26437  // `resource_properties.my_property : "" Use a negated partial match on the
 26438  // empty string to filter based on a property not existing:
 26439  // `-resource_properties.my_property : ""
 26440  func (c *ProjectsAssetsListCall) Filter(filter string) *ProjectsAssetsListCall {
 26441  	c.urlParams_.Set("filter", filter)
 26442  	return c
 26443  }
 26444  
 26445  // OrderBy sets the optional parameter "orderBy": Expression that defines what
 26446  // fields and order to use for sorting. The string value should follow SQL
 26447  // syntax: comma separated list of fields. For example:
 26448  // "name,resource_properties.a_property". The default sorting order is
 26449  // ascending. To specify descending order for a field, a suffix " desc" should
 26450  // be appended to the field name. For example: "name
 26451  // desc,resource_properties.a_property". Redundant space characters in the
 26452  // syntax are insignificant. "name desc,resource_properties.a_property" and "
 26453  // name desc , resource_properties.a_property " are equivalent. The following
 26454  // fields are supported: name update_time resource_properties
 26455  // security_marks.marks security_center_properties.resource_name
 26456  // security_center_properties.resource_display_name
 26457  // security_center_properties.resource_parent
 26458  // security_center_properties.resource_parent_display_name
 26459  // security_center_properties.resource_project
 26460  // security_center_properties.resource_project_display_name
 26461  // security_center_properties.resource_type
 26462  func (c *ProjectsAssetsListCall) OrderBy(orderBy string) *ProjectsAssetsListCall {
 26463  	c.urlParams_.Set("orderBy", orderBy)
 26464  	return c
 26465  }
 26466  
 26467  // PageSize sets the optional parameter "pageSize": The maximum number of
 26468  // results to return in a single response. Default is 10, minimum is 1, maximum
 26469  // is 1000.
 26470  func (c *ProjectsAssetsListCall) PageSize(pageSize int64) *ProjectsAssetsListCall {
 26471  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 26472  	return c
 26473  }
 26474  
 26475  // PageToken sets the optional parameter "pageToken": The value returned by the
 26476  // last `ListAssetsResponse`; indicates that this is a continuation of a prior
 26477  // `ListAssets` call, and that the system should return the next page of data.
 26478  func (c *ProjectsAssetsListCall) PageToken(pageToken string) *ProjectsAssetsListCall {
 26479  	c.urlParams_.Set("pageToken", pageToken)
 26480  	return c
 26481  }
 26482  
 26483  // ReadTime sets the optional parameter "readTime": Time used as a reference
 26484  // point when filtering assets. The filter is limited to assets existing at the
 26485  // supplied time and their values are those at that specific time. Absence of
 26486  // this field will default to the API's version of NOW.
 26487  func (c *ProjectsAssetsListCall) ReadTime(readTime string) *ProjectsAssetsListCall {
 26488  	c.urlParams_.Set("readTime", readTime)
 26489  	return c
 26490  }
 26491  
 26492  // Fields allows partial responses to be retrieved. See
 26493  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 26494  // details.
 26495  func (c *ProjectsAssetsListCall) Fields(s ...googleapi.Field) *ProjectsAssetsListCall {
 26496  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 26497  	return c
 26498  }
 26499  
 26500  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 26501  // object's ETag matches the given value. This is useful for getting updates
 26502  // only after the object has changed since the last request.
 26503  func (c *ProjectsAssetsListCall) IfNoneMatch(entityTag string) *ProjectsAssetsListCall {
 26504  	c.ifNoneMatch_ = entityTag
 26505  	return c
 26506  }
 26507  
 26508  // Context sets the context to be used in this call's Do method.
 26509  func (c *ProjectsAssetsListCall) Context(ctx context.Context) *ProjectsAssetsListCall {
 26510  	c.ctx_ = ctx
 26511  	return c
 26512  }
 26513  
 26514  // Header returns a http.Header that can be modified by the caller to add
 26515  // headers to the request.
 26516  func (c *ProjectsAssetsListCall) Header() http.Header {
 26517  	if c.header_ == nil {
 26518  		c.header_ = make(http.Header)
 26519  	}
 26520  	return c.header_
 26521  }
 26522  
 26523  func (c *ProjectsAssetsListCall) doRequest(alt string) (*http.Response, error) {
 26524  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 26525  	if c.ifNoneMatch_ != "" {
 26526  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 26527  	}
 26528  	var body io.Reader = nil
 26529  	c.urlParams_.Set("alt", alt)
 26530  	c.urlParams_.Set("prettyPrint", "false")
 26531  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/assets")
 26532  	urls += "?" + c.urlParams_.Encode()
 26533  	req, err := http.NewRequest("GET", urls, body)
 26534  	if err != nil {
 26535  		return nil, err
 26536  	}
 26537  	req.Header = reqHeaders
 26538  	googleapi.Expand(req.URL, map[string]string{
 26539  		"parent": c.parent,
 26540  	})
 26541  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 26542  }
 26543  
 26544  // Do executes the "securitycenter.projects.assets.list" call.
 26545  // Any non-2xx status code is an error. Response headers are in either
 26546  // *ListAssetsResponse.ServerResponse.Header or (if a response was returned at
 26547  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 26548  // check whether the returned error was because http.StatusNotModified was
 26549  // returned.
 26550  func (c *ProjectsAssetsListCall) Do(opts ...googleapi.CallOption) (*ListAssetsResponse, error) {
 26551  	gensupport.SetOptions(c.urlParams_, opts...)
 26552  	res, err := c.doRequest("json")
 26553  	if res != nil && res.StatusCode == http.StatusNotModified {
 26554  		if res.Body != nil {
 26555  			res.Body.Close()
 26556  		}
 26557  		return nil, gensupport.WrapError(&googleapi.Error{
 26558  			Code:   res.StatusCode,
 26559  			Header: res.Header,
 26560  		})
 26561  	}
 26562  	if err != nil {
 26563  		return nil, err
 26564  	}
 26565  	defer googleapi.CloseBody(res)
 26566  	if err := googleapi.CheckResponse(res); err != nil {
 26567  		return nil, gensupport.WrapError(err)
 26568  	}
 26569  	ret := &ListAssetsResponse{
 26570  		ServerResponse: googleapi.ServerResponse{
 26571  			Header:         res.Header,
 26572  			HTTPStatusCode: res.StatusCode,
 26573  		},
 26574  	}
 26575  	target := &ret
 26576  	if err := gensupport.DecodeResponse(target, res); err != nil {
 26577  		return nil, err
 26578  	}
 26579  	return ret, nil
 26580  }
 26581  
 26582  // Pages invokes f for each page of results.
 26583  // A non-nil error returned from f will halt the iteration.
 26584  // The provided context supersedes any context provided to the Context method.
 26585  func (c *ProjectsAssetsListCall) Pages(ctx context.Context, f func(*ListAssetsResponse) error) error {
 26586  	c.ctx_ = ctx
 26587  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 26588  	for {
 26589  		x, err := c.Do()
 26590  		if err != nil {
 26591  			return err
 26592  		}
 26593  		if err := f(x); err != nil {
 26594  			return err
 26595  		}
 26596  		if x.NextPageToken == "" {
 26597  			return nil
 26598  		}
 26599  		c.PageToken(x.NextPageToken)
 26600  	}
 26601  }
 26602  
 26603  type ProjectsAssetsUpdateSecurityMarksCall struct {
 26604  	s             *Service
 26605  	name          string
 26606  	securitymarks *SecurityMarks
 26607  	urlParams_    gensupport.URLParams
 26608  	ctx_          context.Context
 26609  	header_       http.Header
 26610  }
 26611  
 26612  // UpdateSecurityMarks: Updates security marks.
 26613  //
 26614  //   - name: The relative resource name of the SecurityMarks. See:
 26615  //     https://cloud.google.com/apis/design/resource_names#relative_resource_name
 26616  //     Examples:
 26617  //     "organizations/{organization_id}/assets/{asset_id}/securityMarks"
 26618  //     "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/
 26619  //     securityMarks".
 26620  func (r *ProjectsAssetsService) UpdateSecurityMarks(name string, securitymarks *SecurityMarks) *ProjectsAssetsUpdateSecurityMarksCall {
 26621  	c := &ProjectsAssetsUpdateSecurityMarksCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 26622  	c.name = name
 26623  	c.securitymarks = securitymarks
 26624  	return c
 26625  }
 26626  
 26627  // StartTime sets the optional parameter "startTime": The time at which the
 26628  // updated SecurityMarks take effect. If not set uses current server time.
 26629  // Updates will be applied to the SecurityMarks that are active immediately
 26630  // preceding this time. Must be earlier or equal to the server time.
 26631  func (c *ProjectsAssetsUpdateSecurityMarksCall) StartTime(startTime string) *ProjectsAssetsUpdateSecurityMarksCall {
 26632  	c.urlParams_.Set("startTime", startTime)
 26633  	return c
 26634  }
 26635  
 26636  // UpdateMask sets the optional parameter "updateMask": The FieldMask to use
 26637  // when updating the security marks resource. The field mask must not contain
 26638  // duplicate fields. If empty or set to "marks", all marks will be replaced.
 26639  // Individual marks can be updated using "marks.".
 26640  func (c *ProjectsAssetsUpdateSecurityMarksCall) UpdateMask(updateMask string) *ProjectsAssetsUpdateSecurityMarksCall {
 26641  	c.urlParams_.Set("updateMask", updateMask)
 26642  	return c
 26643  }
 26644  
 26645  // Fields allows partial responses to be retrieved. See
 26646  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 26647  // details.
 26648  func (c *ProjectsAssetsUpdateSecurityMarksCall) Fields(s ...googleapi.Field) *ProjectsAssetsUpdateSecurityMarksCall {
 26649  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 26650  	return c
 26651  }
 26652  
 26653  // Context sets the context to be used in this call's Do method.
 26654  func (c *ProjectsAssetsUpdateSecurityMarksCall) Context(ctx context.Context) *ProjectsAssetsUpdateSecurityMarksCall {
 26655  	c.ctx_ = ctx
 26656  	return c
 26657  }
 26658  
 26659  // Header returns a http.Header that can be modified by the caller to add
 26660  // headers to the request.
 26661  func (c *ProjectsAssetsUpdateSecurityMarksCall) Header() http.Header {
 26662  	if c.header_ == nil {
 26663  		c.header_ = make(http.Header)
 26664  	}
 26665  	return c.header_
 26666  }
 26667  
 26668  func (c *ProjectsAssetsUpdateSecurityMarksCall) doRequest(alt string) (*http.Response, error) {
 26669  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 26670  	var body io.Reader = nil
 26671  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.securitymarks)
 26672  	if err != nil {
 26673  		return nil, err
 26674  	}
 26675  	c.urlParams_.Set("alt", alt)
 26676  	c.urlParams_.Set("prettyPrint", "false")
 26677  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 26678  	urls += "?" + c.urlParams_.Encode()
 26679  	req, err := http.NewRequest("PATCH", urls, body)
 26680  	if err != nil {
 26681  		return nil, err
 26682  	}
 26683  	req.Header = reqHeaders
 26684  	googleapi.Expand(req.URL, map[string]string{
 26685  		"name": c.name,
 26686  	})
 26687  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 26688  }
 26689  
 26690  // Do executes the "securitycenter.projects.assets.updateSecurityMarks" call.
 26691  // Any non-2xx status code is an error. Response headers are in either
 26692  // *SecurityMarks.ServerResponse.Header or (if a response was returned at all)
 26693  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 26694  // whether the returned error was because http.StatusNotModified was returned.
 26695  func (c *ProjectsAssetsUpdateSecurityMarksCall) Do(opts ...googleapi.CallOption) (*SecurityMarks, error) {
 26696  	gensupport.SetOptions(c.urlParams_, opts...)
 26697  	res, err := c.doRequest("json")
 26698  	if res != nil && res.StatusCode == http.StatusNotModified {
 26699  		if res.Body != nil {
 26700  			res.Body.Close()
 26701  		}
 26702  		return nil, gensupport.WrapError(&googleapi.Error{
 26703  			Code:   res.StatusCode,
 26704  			Header: res.Header,
 26705  		})
 26706  	}
 26707  	if err != nil {
 26708  		return nil, err
 26709  	}
 26710  	defer googleapi.CloseBody(res)
 26711  	if err := googleapi.CheckResponse(res); err != nil {
 26712  		return nil, gensupport.WrapError(err)
 26713  	}
 26714  	ret := &SecurityMarks{
 26715  		ServerResponse: googleapi.ServerResponse{
 26716  			Header:         res.Header,
 26717  			HTTPStatusCode: res.StatusCode,
 26718  		},
 26719  	}
 26720  	target := &ret
 26721  	if err := gensupport.DecodeResponse(target, res); err != nil {
 26722  		return nil, err
 26723  	}
 26724  	return ret, nil
 26725  }
 26726  
 26727  type ProjectsBigQueryExportsCreateCall struct {
 26728  	s                                         *Service
 26729  	parent                                    string
 26730  	googlecloudsecuritycenterv1bigqueryexport *GoogleCloudSecuritycenterV1BigQueryExport
 26731  	urlParams_                                gensupport.URLParams
 26732  	ctx_                                      context.Context
 26733  	header_                                   http.Header
 26734  }
 26735  
 26736  // Create: Creates a BigQuery export.
 26737  //
 26738  //   - parent: The name of the parent resource of the new BigQuery export. Its
 26739  //     format is "organizations/[organization_id]", "folders/[folder_id]", or
 26740  //     "projects/[project_id]".
 26741  func (r *ProjectsBigQueryExportsService) Create(parent string, googlecloudsecuritycenterv1bigqueryexport *GoogleCloudSecuritycenterV1BigQueryExport) *ProjectsBigQueryExportsCreateCall {
 26742  	c := &ProjectsBigQueryExportsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 26743  	c.parent = parent
 26744  	c.googlecloudsecuritycenterv1bigqueryexport = googlecloudsecuritycenterv1bigqueryexport
 26745  	return c
 26746  }
 26747  
 26748  // BigQueryExportId sets the optional parameter "bigQueryExportId": Required.
 26749  // Unique identifier provided by the client within the parent scope. It must
 26750  // consist of only lowercase letters, numbers, and hyphens, must start with a
 26751  // letter, must end with either a letter or a number, and must be 63 characters
 26752  // or less.
 26753  func (c *ProjectsBigQueryExportsCreateCall) BigQueryExportId(bigQueryExportId string) *ProjectsBigQueryExportsCreateCall {
 26754  	c.urlParams_.Set("bigQueryExportId", bigQueryExportId)
 26755  	return c
 26756  }
 26757  
 26758  // Fields allows partial responses to be retrieved. See
 26759  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 26760  // details.
 26761  func (c *ProjectsBigQueryExportsCreateCall) Fields(s ...googleapi.Field) *ProjectsBigQueryExportsCreateCall {
 26762  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 26763  	return c
 26764  }
 26765  
 26766  // Context sets the context to be used in this call's Do method.
 26767  func (c *ProjectsBigQueryExportsCreateCall) Context(ctx context.Context) *ProjectsBigQueryExportsCreateCall {
 26768  	c.ctx_ = ctx
 26769  	return c
 26770  }
 26771  
 26772  // Header returns a http.Header that can be modified by the caller to add
 26773  // headers to the request.
 26774  func (c *ProjectsBigQueryExportsCreateCall) Header() http.Header {
 26775  	if c.header_ == nil {
 26776  		c.header_ = make(http.Header)
 26777  	}
 26778  	return c.header_
 26779  }
 26780  
 26781  func (c *ProjectsBigQueryExportsCreateCall) doRequest(alt string) (*http.Response, error) {
 26782  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 26783  	var body io.Reader = nil
 26784  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1bigqueryexport)
 26785  	if err != nil {
 26786  		return nil, err
 26787  	}
 26788  	c.urlParams_.Set("alt", alt)
 26789  	c.urlParams_.Set("prettyPrint", "false")
 26790  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/bigQueryExports")
 26791  	urls += "?" + c.urlParams_.Encode()
 26792  	req, err := http.NewRequest("POST", urls, body)
 26793  	if err != nil {
 26794  		return nil, err
 26795  	}
 26796  	req.Header = reqHeaders
 26797  	googleapi.Expand(req.URL, map[string]string{
 26798  		"parent": c.parent,
 26799  	})
 26800  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 26801  }
 26802  
 26803  // Do executes the "securitycenter.projects.bigQueryExports.create" call.
 26804  // Any non-2xx status code is an error. Response headers are in either
 26805  // *GoogleCloudSecuritycenterV1BigQueryExport.ServerResponse.Header or (if a
 26806  // response was returned at all) in error.(*googleapi.Error).Header. Use
 26807  // googleapi.IsNotModified to check whether the returned error was because
 26808  // http.StatusNotModified was returned.
 26809  func (c *ProjectsBigQueryExportsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1BigQueryExport, error) {
 26810  	gensupport.SetOptions(c.urlParams_, opts...)
 26811  	res, err := c.doRequest("json")
 26812  	if res != nil && res.StatusCode == http.StatusNotModified {
 26813  		if res.Body != nil {
 26814  			res.Body.Close()
 26815  		}
 26816  		return nil, gensupport.WrapError(&googleapi.Error{
 26817  			Code:   res.StatusCode,
 26818  			Header: res.Header,
 26819  		})
 26820  	}
 26821  	if err != nil {
 26822  		return nil, err
 26823  	}
 26824  	defer googleapi.CloseBody(res)
 26825  	if err := googleapi.CheckResponse(res); err != nil {
 26826  		return nil, gensupport.WrapError(err)
 26827  	}
 26828  	ret := &GoogleCloudSecuritycenterV1BigQueryExport{
 26829  		ServerResponse: googleapi.ServerResponse{
 26830  			Header:         res.Header,
 26831  			HTTPStatusCode: res.StatusCode,
 26832  		},
 26833  	}
 26834  	target := &ret
 26835  	if err := gensupport.DecodeResponse(target, res); err != nil {
 26836  		return nil, err
 26837  	}
 26838  	return ret, nil
 26839  }
 26840  
 26841  type ProjectsBigQueryExportsDeleteCall struct {
 26842  	s          *Service
 26843  	name       string
 26844  	urlParams_ gensupport.URLParams
 26845  	ctx_       context.Context
 26846  	header_    http.Header
 26847  }
 26848  
 26849  // Delete: Deletes an existing BigQuery export.
 26850  //
 26851  //   - name: The name of the BigQuery export to delete. Its format is
 26852  //     organizations/{organization}/bigQueryExports/{export_id},
 26853  //     folders/{folder}/bigQueryExports/{export_id}, or
 26854  //     projects/{project}/bigQueryExports/{export_id}.
 26855  func (r *ProjectsBigQueryExportsService) Delete(name string) *ProjectsBigQueryExportsDeleteCall {
 26856  	c := &ProjectsBigQueryExportsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 26857  	c.name = name
 26858  	return c
 26859  }
 26860  
 26861  // Fields allows partial responses to be retrieved. See
 26862  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 26863  // details.
 26864  func (c *ProjectsBigQueryExportsDeleteCall) Fields(s ...googleapi.Field) *ProjectsBigQueryExportsDeleteCall {
 26865  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 26866  	return c
 26867  }
 26868  
 26869  // Context sets the context to be used in this call's Do method.
 26870  func (c *ProjectsBigQueryExportsDeleteCall) Context(ctx context.Context) *ProjectsBigQueryExportsDeleteCall {
 26871  	c.ctx_ = ctx
 26872  	return c
 26873  }
 26874  
 26875  // Header returns a http.Header that can be modified by the caller to add
 26876  // headers to the request.
 26877  func (c *ProjectsBigQueryExportsDeleteCall) Header() http.Header {
 26878  	if c.header_ == nil {
 26879  		c.header_ = make(http.Header)
 26880  	}
 26881  	return c.header_
 26882  }
 26883  
 26884  func (c *ProjectsBigQueryExportsDeleteCall) doRequest(alt string) (*http.Response, error) {
 26885  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 26886  	var body io.Reader = nil
 26887  	c.urlParams_.Set("alt", alt)
 26888  	c.urlParams_.Set("prettyPrint", "false")
 26889  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 26890  	urls += "?" + c.urlParams_.Encode()
 26891  	req, err := http.NewRequest("DELETE", urls, body)
 26892  	if err != nil {
 26893  		return nil, err
 26894  	}
 26895  	req.Header = reqHeaders
 26896  	googleapi.Expand(req.URL, map[string]string{
 26897  		"name": c.name,
 26898  	})
 26899  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 26900  }
 26901  
 26902  // Do executes the "securitycenter.projects.bigQueryExports.delete" call.
 26903  // Any non-2xx status code is an error. Response headers are in either
 26904  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 26905  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 26906  // whether the returned error was because http.StatusNotModified was returned.
 26907  func (c *ProjectsBigQueryExportsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 26908  	gensupport.SetOptions(c.urlParams_, opts...)
 26909  	res, err := c.doRequest("json")
 26910  	if res != nil && res.StatusCode == http.StatusNotModified {
 26911  		if res.Body != nil {
 26912  			res.Body.Close()
 26913  		}
 26914  		return nil, gensupport.WrapError(&googleapi.Error{
 26915  			Code:   res.StatusCode,
 26916  			Header: res.Header,
 26917  		})
 26918  	}
 26919  	if err != nil {
 26920  		return nil, err
 26921  	}
 26922  	defer googleapi.CloseBody(res)
 26923  	if err := googleapi.CheckResponse(res); err != nil {
 26924  		return nil, gensupport.WrapError(err)
 26925  	}
 26926  	ret := &Empty{
 26927  		ServerResponse: googleapi.ServerResponse{
 26928  			Header:         res.Header,
 26929  			HTTPStatusCode: res.StatusCode,
 26930  		},
 26931  	}
 26932  	target := &ret
 26933  	if err := gensupport.DecodeResponse(target, res); err != nil {
 26934  		return nil, err
 26935  	}
 26936  	return ret, nil
 26937  }
 26938  
 26939  type ProjectsBigQueryExportsGetCall struct {
 26940  	s            *Service
 26941  	name         string
 26942  	urlParams_   gensupport.URLParams
 26943  	ifNoneMatch_ string
 26944  	ctx_         context.Context
 26945  	header_      http.Header
 26946  }
 26947  
 26948  // Get: Gets a BigQuery export.
 26949  //
 26950  //   - name: Name of the BigQuery export to retrieve. Its format is
 26951  //     organizations/{organization}/bigQueryExports/{export_id},
 26952  //     folders/{folder}/bigQueryExports/{export_id}, or
 26953  //     projects/{project}/bigQueryExports/{export_id}.
 26954  func (r *ProjectsBigQueryExportsService) Get(name string) *ProjectsBigQueryExportsGetCall {
 26955  	c := &ProjectsBigQueryExportsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 26956  	c.name = name
 26957  	return c
 26958  }
 26959  
 26960  // Fields allows partial responses to be retrieved. See
 26961  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 26962  // details.
 26963  func (c *ProjectsBigQueryExportsGetCall) Fields(s ...googleapi.Field) *ProjectsBigQueryExportsGetCall {
 26964  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 26965  	return c
 26966  }
 26967  
 26968  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 26969  // object's ETag matches the given value. This is useful for getting updates
 26970  // only after the object has changed since the last request.
 26971  func (c *ProjectsBigQueryExportsGetCall) IfNoneMatch(entityTag string) *ProjectsBigQueryExportsGetCall {
 26972  	c.ifNoneMatch_ = entityTag
 26973  	return c
 26974  }
 26975  
 26976  // Context sets the context to be used in this call's Do method.
 26977  func (c *ProjectsBigQueryExportsGetCall) Context(ctx context.Context) *ProjectsBigQueryExportsGetCall {
 26978  	c.ctx_ = ctx
 26979  	return c
 26980  }
 26981  
 26982  // Header returns a http.Header that can be modified by the caller to add
 26983  // headers to the request.
 26984  func (c *ProjectsBigQueryExportsGetCall) Header() http.Header {
 26985  	if c.header_ == nil {
 26986  		c.header_ = make(http.Header)
 26987  	}
 26988  	return c.header_
 26989  }
 26990  
 26991  func (c *ProjectsBigQueryExportsGetCall) doRequest(alt string) (*http.Response, error) {
 26992  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 26993  	if c.ifNoneMatch_ != "" {
 26994  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 26995  	}
 26996  	var body io.Reader = nil
 26997  	c.urlParams_.Set("alt", alt)
 26998  	c.urlParams_.Set("prettyPrint", "false")
 26999  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 27000  	urls += "?" + c.urlParams_.Encode()
 27001  	req, err := http.NewRequest("GET", urls, body)
 27002  	if err != nil {
 27003  		return nil, err
 27004  	}
 27005  	req.Header = reqHeaders
 27006  	googleapi.Expand(req.URL, map[string]string{
 27007  		"name": c.name,
 27008  	})
 27009  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 27010  }
 27011  
 27012  // Do executes the "securitycenter.projects.bigQueryExports.get" call.
 27013  // Any non-2xx status code is an error. Response headers are in either
 27014  // *GoogleCloudSecuritycenterV1BigQueryExport.ServerResponse.Header or (if a
 27015  // response was returned at all) in error.(*googleapi.Error).Header. Use
 27016  // googleapi.IsNotModified to check whether the returned error was because
 27017  // http.StatusNotModified was returned.
 27018  func (c *ProjectsBigQueryExportsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1BigQueryExport, error) {
 27019  	gensupport.SetOptions(c.urlParams_, opts...)
 27020  	res, err := c.doRequest("json")
 27021  	if res != nil && res.StatusCode == http.StatusNotModified {
 27022  		if res.Body != nil {
 27023  			res.Body.Close()
 27024  		}
 27025  		return nil, gensupport.WrapError(&googleapi.Error{
 27026  			Code:   res.StatusCode,
 27027  			Header: res.Header,
 27028  		})
 27029  	}
 27030  	if err != nil {
 27031  		return nil, err
 27032  	}
 27033  	defer googleapi.CloseBody(res)
 27034  	if err := googleapi.CheckResponse(res); err != nil {
 27035  		return nil, gensupport.WrapError(err)
 27036  	}
 27037  	ret := &GoogleCloudSecuritycenterV1BigQueryExport{
 27038  		ServerResponse: googleapi.ServerResponse{
 27039  			Header:         res.Header,
 27040  			HTTPStatusCode: res.StatusCode,
 27041  		},
 27042  	}
 27043  	target := &ret
 27044  	if err := gensupport.DecodeResponse(target, res); err != nil {
 27045  		return nil, err
 27046  	}
 27047  	return ret, nil
 27048  }
 27049  
 27050  type ProjectsBigQueryExportsListCall struct {
 27051  	s            *Service
 27052  	parent       string
 27053  	urlParams_   gensupport.URLParams
 27054  	ifNoneMatch_ string
 27055  	ctx_         context.Context
 27056  	header_      http.Header
 27057  }
 27058  
 27059  // List: Lists BigQuery exports. Note that when requesting BigQuery exports at
 27060  // a given level all exports under that level are also returned e.g. if
 27061  // requesting BigQuery exports under a folder, then all BigQuery exports
 27062  // immediately under the folder plus the ones created under the projects within
 27063  // the folder are returned.
 27064  //
 27065  //   - parent: The parent, which owns the collection of BigQuery exports. Its
 27066  //     format is "organizations/[organization_id]", "folders/[folder_id]",
 27067  //     "projects/[project_id]".
 27068  func (r *ProjectsBigQueryExportsService) List(parent string) *ProjectsBigQueryExportsListCall {
 27069  	c := &ProjectsBigQueryExportsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 27070  	c.parent = parent
 27071  	return c
 27072  }
 27073  
 27074  // PageSize sets the optional parameter "pageSize": The maximum number of
 27075  // configs to return. The service may return fewer than this value. If
 27076  // unspecified, at most 10 configs will be returned. The maximum value is 1000;
 27077  // values above 1000 will be coerced to 1000.
 27078  func (c *ProjectsBigQueryExportsListCall) PageSize(pageSize int64) *ProjectsBigQueryExportsListCall {
 27079  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 27080  	return c
 27081  }
 27082  
 27083  // PageToken sets the optional parameter "pageToken": A page token, received
 27084  // from a previous `ListBigQueryExports` call. Provide this to retrieve the
 27085  // subsequent page. When paginating, all other parameters provided to
 27086  // `ListBigQueryExports` must match the call that provided the page token.
 27087  func (c *ProjectsBigQueryExportsListCall) PageToken(pageToken string) *ProjectsBigQueryExportsListCall {
 27088  	c.urlParams_.Set("pageToken", pageToken)
 27089  	return c
 27090  }
 27091  
 27092  // Fields allows partial responses to be retrieved. See
 27093  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 27094  // details.
 27095  func (c *ProjectsBigQueryExportsListCall) Fields(s ...googleapi.Field) *ProjectsBigQueryExportsListCall {
 27096  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 27097  	return c
 27098  }
 27099  
 27100  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 27101  // object's ETag matches the given value. This is useful for getting updates
 27102  // only after the object has changed since the last request.
 27103  func (c *ProjectsBigQueryExportsListCall) IfNoneMatch(entityTag string) *ProjectsBigQueryExportsListCall {
 27104  	c.ifNoneMatch_ = entityTag
 27105  	return c
 27106  }
 27107  
 27108  // Context sets the context to be used in this call's Do method.
 27109  func (c *ProjectsBigQueryExportsListCall) Context(ctx context.Context) *ProjectsBigQueryExportsListCall {
 27110  	c.ctx_ = ctx
 27111  	return c
 27112  }
 27113  
 27114  // Header returns a http.Header that can be modified by the caller to add
 27115  // headers to the request.
 27116  func (c *ProjectsBigQueryExportsListCall) Header() http.Header {
 27117  	if c.header_ == nil {
 27118  		c.header_ = make(http.Header)
 27119  	}
 27120  	return c.header_
 27121  }
 27122  
 27123  func (c *ProjectsBigQueryExportsListCall) doRequest(alt string) (*http.Response, error) {
 27124  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 27125  	if c.ifNoneMatch_ != "" {
 27126  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 27127  	}
 27128  	var body io.Reader = nil
 27129  	c.urlParams_.Set("alt", alt)
 27130  	c.urlParams_.Set("prettyPrint", "false")
 27131  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/bigQueryExports")
 27132  	urls += "?" + c.urlParams_.Encode()
 27133  	req, err := http.NewRequest("GET", urls, body)
 27134  	if err != nil {
 27135  		return nil, err
 27136  	}
 27137  	req.Header = reqHeaders
 27138  	googleapi.Expand(req.URL, map[string]string{
 27139  		"parent": c.parent,
 27140  	})
 27141  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 27142  }
 27143  
 27144  // Do executes the "securitycenter.projects.bigQueryExports.list" call.
 27145  // Any non-2xx status code is an error. Response headers are in either
 27146  // *ListBigQueryExportsResponse.ServerResponse.Header or (if a response was
 27147  // returned at all) in error.(*googleapi.Error).Header. Use
 27148  // googleapi.IsNotModified to check whether the returned error was because
 27149  // http.StatusNotModified was returned.
 27150  func (c *ProjectsBigQueryExportsListCall) Do(opts ...googleapi.CallOption) (*ListBigQueryExportsResponse, error) {
 27151  	gensupport.SetOptions(c.urlParams_, opts...)
 27152  	res, err := c.doRequest("json")
 27153  	if res != nil && res.StatusCode == http.StatusNotModified {
 27154  		if res.Body != nil {
 27155  			res.Body.Close()
 27156  		}
 27157  		return nil, gensupport.WrapError(&googleapi.Error{
 27158  			Code:   res.StatusCode,
 27159  			Header: res.Header,
 27160  		})
 27161  	}
 27162  	if err != nil {
 27163  		return nil, err
 27164  	}
 27165  	defer googleapi.CloseBody(res)
 27166  	if err := googleapi.CheckResponse(res); err != nil {
 27167  		return nil, gensupport.WrapError(err)
 27168  	}
 27169  	ret := &ListBigQueryExportsResponse{
 27170  		ServerResponse: googleapi.ServerResponse{
 27171  			Header:         res.Header,
 27172  			HTTPStatusCode: res.StatusCode,
 27173  		},
 27174  	}
 27175  	target := &ret
 27176  	if err := gensupport.DecodeResponse(target, res); err != nil {
 27177  		return nil, err
 27178  	}
 27179  	return ret, nil
 27180  }
 27181  
 27182  // Pages invokes f for each page of results.
 27183  // A non-nil error returned from f will halt the iteration.
 27184  // The provided context supersedes any context provided to the Context method.
 27185  func (c *ProjectsBigQueryExportsListCall) Pages(ctx context.Context, f func(*ListBigQueryExportsResponse) error) error {
 27186  	c.ctx_ = ctx
 27187  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 27188  	for {
 27189  		x, err := c.Do()
 27190  		if err != nil {
 27191  			return err
 27192  		}
 27193  		if err := f(x); err != nil {
 27194  			return err
 27195  		}
 27196  		if x.NextPageToken == "" {
 27197  			return nil
 27198  		}
 27199  		c.PageToken(x.NextPageToken)
 27200  	}
 27201  }
 27202  
 27203  type ProjectsBigQueryExportsPatchCall struct {
 27204  	s                                         *Service
 27205  	name                                      string
 27206  	googlecloudsecuritycenterv1bigqueryexport *GoogleCloudSecuritycenterV1BigQueryExport
 27207  	urlParams_                                gensupport.URLParams
 27208  	ctx_                                      context.Context
 27209  	header_                                   http.Header
 27210  }
 27211  
 27212  // Patch: Updates a BigQuery export.
 27213  //
 27214  //   - name: The relative resource name of this export. See:
 27215  //     https://cloud.google.com/apis/design/resource_names#relative_resource_name.
 27216  //     Example format:
 27217  //     "organizations/{organization_id}/bigQueryExports/{export_id}" Example
 27218  //     format: "folders/{folder_id}/bigQueryExports/{export_id}" Example format:
 27219  //     "projects/{project_id}/bigQueryExports/{export_id}" This field is provided
 27220  //     in responses, and is ignored when provided in create requests.
 27221  func (r *ProjectsBigQueryExportsService) Patch(name string, googlecloudsecuritycenterv1bigqueryexport *GoogleCloudSecuritycenterV1BigQueryExport) *ProjectsBigQueryExportsPatchCall {
 27222  	c := &ProjectsBigQueryExportsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 27223  	c.name = name
 27224  	c.googlecloudsecuritycenterv1bigqueryexport = googlecloudsecuritycenterv1bigqueryexport
 27225  	return c
 27226  }
 27227  
 27228  // UpdateMask sets the optional parameter "updateMask": The list of fields to
 27229  // be updated. If empty all mutable fields will be updated.
 27230  func (c *ProjectsBigQueryExportsPatchCall) UpdateMask(updateMask string) *ProjectsBigQueryExportsPatchCall {
 27231  	c.urlParams_.Set("updateMask", updateMask)
 27232  	return c
 27233  }
 27234  
 27235  // Fields allows partial responses to be retrieved. See
 27236  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 27237  // details.
 27238  func (c *ProjectsBigQueryExportsPatchCall) Fields(s ...googleapi.Field) *ProjectsBigQueryExportsPatchCall {
 27239  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 27240  	return c
 27241  }
 27242  
 27243  // Context sets the context to be used in this call's Do method.
 27244  func (c *ProjectsBigQueryExportsPatchCall) Context(ctx context.Context) *ProjectsBigQueryExportsPatchCall {
 27245  	c.ctx_ = ctx
 27246  	return c
 27247  }
 27248  
 27249  // Header returns a http.Header that can be modified by the caller to add
 27250  // headers to the request.
 27251  func (c *ProjectsBigQueryExportsPatchCall) Header() http.Header {
 27252  	if c.header_ == nil {
 27253  		c.header_ = make(http.Header)
 27254  	}
 27255  	return c.header_
 27256  }
 27257  
 27258  func (c *ProjectsBigQueryExportsPatchCall) doRequest(alt string) (*http.Response, error) {
 27259  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 27260  	var body io.Reader = nil
 27261  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1bigqueryexport)
 27262  	if err != nil {
 27263  		return nil, err
 27264  	}
 27265  	c.urlParams_.Set("alt", alt)
 27266  	c.urlParams_.Set("prettyPrint", "false")
 27267  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 27268  	urls += "?" + c.urlParams_.Encode()
 27269  	req, err := http.NewRequest("PATCH", urls, body)
 27270  	if err != nil {
 27271  		return nil, err
 27272  	}
 27273  	req.Header = reqHeaders
 27274  	googleapi.Expand(req.URL, map[string]string{
 27275  		"name": c.name,
 27276  	})
 27277  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 27278  }
 27279  
 27280  // Do executes the "securitycenter.projects.bigQueryExports.patch" call.
 27281  // Any non-2xx status code is an error. Response headers are in either
 27282  // *GoogleCloudSecuritycenterV1BigQueryExport.ServerResponse.Header or (if a
 27283  // response was returned at all) in error.(*googleapi.Error).Header. Use
 27284  // googleapi.IsNotModified to check whether the returned error was because
 27285  // http.StatusNotModified was returned.
 27286  func (c *ProjectsBigQueryExportsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1BigQueryExport, error) {
 27287  	gensupport.SetOptions(c.urlParams_, opts...)
 27288  	res, err := c.doRequest("json")
 27289  	if res != nil && res.StatusCode == http.StatusNotModified {
 27290  		if res.Body != nil {
 27291  			res.Body.Close()
 27292  		}
 27293  		return nil, gensupport.WrapError(&googleapi.Error{
 27294  			Code:   res.StatusCode,
 27295  			Header: res.Header,
 27296  		})
 27297  	}
 27298  	if err != nil {
 27299  		return nil, err
 27300  	}
 27301  	defer googleapi.CloseBody(res)
 27302  	if err := googleapi.CheckResponse(res); err != nil {
 27303  		return nil, gensupport.WrapError(err)
 27304  	}
 27305  	ret := &GoogleCloudSecuritycenterV1BigQueryExport{
 27306  		ServerResponse: googleapi.ServerResponse{
 27307  			Header:         res.Header,
 27308  			HTTPStatusCode: res.StatusCode,
 27309  		},
 27310  	}
 27311  	target := &ret
 27312  	if err := gensupport.DecodeResponse(target, res); err != nil {
 27313  		return nil, err
 27314  	}
 27315  	return ret, nil
 27316  }
 27317  
 27318  type ProjectsEventThreatDetectionSettingsValidateCustomModuleCall struct {
 27319  	s                                               *Service
 27320  	parent                                          string
 27321  	validateeventthreatdetectioncustommodulerequest *ValidateEventThreatDetectionCustomModuleRequest
 27322  	urlParams_                                      gensupport.URLParams
 27323  	ctx_                                            context.Context
 27324  	header_                                         http.Header
 27325  }
 27326  
 27327  // ValidateCustomModule: Validates the given Event Threat Detection custom
 27328  // module.
 27329  //
 27330  //   - parent: Resource name of the parent to validate the Custom Module under.
 27331  //     Its format is: *
 27332  //     "organizations/{organization}/eventThreatDetectionSettings". *
 27333  //     "folders/{folder}/eventThreatDetectionSettings". *
 27334  //     "projects/{project}/eventThreatDetectionSettings".
 27335  func (r *ProjectsEventThreatDetectionSettingsService) ValidateCustomModule(parent string, validateeventthreatdetectioncustommodulerequest *ValidateEventThreatDetectionCustomModuleRequest) *ProjectsEventThreatDetectionSettingsValidateCustomModuleCall {
 27336  	c := &ProjectsEventThreatDetectionSettingsValidateCustomModuleCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 27337  	c.parent = parent
 27338  	c.validateeventthreatdetectioncustommodulerequest = validateeventthreatdetectioncustommodulerequest
 27339  	return c
 27340  }
 27341  
 27342  // Fields allows partial responses to be retrieved. See
 27343  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 27344  // details.
 27345  func (c *ProjectsEventThreatDetectionSettingsValidateCustomModuleCall) Fields(s ...googleapi.Field) *ProjectsEventThreatDetectionSettingsValidateCustomModuleCall {
 27346  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 27347  	return c
 27348  }
 27349  
 27350  // Context sets the context to be used in this call's Do method.
 27351  func (c *ProjectsEventThreatDetectionSettingsValidateCustomModuleCall) Context(ctx context.Context) *ProjectsEventThreatDetectionSettingsValidateCustomModuleCall {
 27352  	c.ctx_ = ctx
 27353  	return c
 27354  }
 27355  
 27356  // Header returns a http.Header that can be modified by the caller to add
 27357  // headers to the request.
 27358  func (c *ProjectsEventThreatDetectionSettingsValidateCustomModuleCall) Header() http.Header {
 27359  	if c.header_ == nil {
 27360  		c.header_ = make(http.Header)
 27361  	}
 27362  	return c.header_
 27363  }
 27364  
 27365  func (c *ProjectsEventThreatDetectionSettingsValidateCustomModuleCall) doRequest(alt string) (*http.Response, error) {
 27366  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 27367  	var body io.Reader = nil
 27368  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.validateeventthreatdetectioncustommodulerequest)
 27369  	if err != nil {
 27370  		return nil, err
 27371  	}
 27372  	c.urlParams_.Set("alt", alt)
 27373  	c.urlParams_.Set("prettyPrint", "false")
 27374  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}:validateCustomModule")
 27375  	urls += "?" + c.urlParams_.Encode()
 27376  	req, err := http.NewRequest("POST", urls, body)
 27377  	if err != nil {
 27378  		return nil, err
 27379  	}
 27380  	req.Header = reqHeaders
 27381  	googleapi.Expand(req.URL, map[string]string{
 27382  		"parent": c.parent,
 27383  	})
 27384  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 27385  }
 27386  
 27387  // Do executes the "securitycenter.projects.eventThreatDetectionSettings.validateCustomModule" call.
 27388  // Any non-2xx status code is an error. Response headers are in either
 27389  // *ValidateEventThreatDetectionCustomModuleResponse.ServerResponse.Header or
 27390  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
 27391  // googleapi.IsNotModified to check whether the returned error was because
 27392  // http.StatusNotModified was returned.
 27393  func (c *ProjectsEventThreatDetectionSettingsValidateCustomModuleCall) Do(opts ...googleapi.CallOption) (*ValidateEventThreatDetectionCustomModuleResponse, error) {
 27394  	gensupport.SetOptions(c.urlParams_, opts...)
 27395  	res, err := c.doRequest("json")
 27396  	if res != nil && res.StatusCode == http.StatusNotModified {
 27397  		if res.Body != nil {
 27398  			res.Body.Close()
 27399  		}
 27400  		return nil, gensupport.WrapError(&googleapi.Error{
 27401  			Code:   res.StatusCode,
 27402  			Header: res.Header,
 27403  		})
 27404  	}
 27405  	if err != nil {
 27406  		return nil, err
 27407  	}
 27408  	defer googleapi.CloseBody(res)
 27409  	if err := googleapi.CheckResponse(res); err != nil {
 27410  		return nil, gensupport.WrapError(err)
 27411  	}
 27412  	ret := &ValidateEventThreatDetectionCustomModuleResponse{
 27413  		ServerResponse: googleapi.ServerResponse{
 27414  			Header:         res.Header,
 27415  			HTTPStatusCode: res.StatusCode,
 27416  		},
 27417  	}
 27418  	target := &ret
 27419  	if err := gensupport.DecodeResponse(target, res); err != nil {
 27420  		return nil, err
 27421  	}
 27422  	return ret, nil
 27423  }
 27424  
 27425  type ProjectsEventThreatDetectionSettingsCustomModulesCreateCall struct {
 27426  	s                                *Service
 27427  	parent                           string
 27428  	eventthreatdetectioncustommodule *EventThreatDetectionCustomModule
 27429  	urlParams_                       gensupport.URLParams
 27430  	ctx_                             context.Context
 27431  	header_                          http.Header
 27432  }
 27433  
 27434  // Create: Creates a resident Event Threat Detection custom module at the scope
 27435  // of the given Resource Manager parent, and also creates inherited custom
 27436  // modules for all descendants of the given parent. These modules are enabled
 27437  // by default.
 27438  //
 27439  //   - parent: The new custom module's parent. Its format is: *
 27440  //     "organizations/{organization}/eventThreatDetectionSettings". *
 27441  //     "folders/{folder}/eventThreatDetectionSettings". *
 27442  //     "projects/{project}/eventThreatDetectionSettings".
 27443  func (r *ProjectsEventThreatDetectionSettingsCustomModulesService) Create(parent string, eventthreatdetectioncustommodule *EventThreatDetectionCustomModule) *ProjectsEventThreatDetectionSettingsCustomModulesCreateCall {
 27444  	c := &ProjectsEventThreatDetectionSettingsCustomModulesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 27445  	c.parent = parent
 27446  	c.eventthreatdetectioncustommodule = eventthreatdetectioncustommodule
 27447  	return c
 27448  }
 27449  
 27450  // Fields allows partial responses to be retrieved. See
 27451  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 27452  // details.
 27453  func (c *ProjectsEventThreatDetectionSettingsCustomModulesCreateCall) Fields(s ...googleapi.Field) *ProjectsEventThreatDetectionSettingsCustomModulesCreateCall {
 27454  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 27455  	return c
 27456  }
 27457  
 27458  // Context sets the context to be used in this call's Do method.
 27459  func (c *ProjectsEventThreatDetectionSettingsCustomModulesCreateCall) Context(ctx context.Context) *ProjectsEventThreatDetectionSettingsCustomModulesCreateCall {
 27460  	c.ctx_ = ctx
 27461  	return c
 27462  }
 27463  
 27464  // Header returns a http.Header that can be modified by the caller to add
 27465  // headers to the request.
 27466  func (c *ProjectsEventThreatDetectionSettingsCustomModulesCreateCall) Header() http.Header {
 27467  	if c.header_ == nil {
 27468  		c.header_ = make(http.Header)
 27469  	}
 27470  	return c.header_
 27471  }
 27472  
 27473  func (c *ProjectsEventThreatDetectionSettingsCustomModulesCreateCall) doRequest(alt string) (*http.Response, error) {
 27474  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 27475  	var body io.Reader = nil
 27476  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.eventthreatdetectioncustommodule)
 27477  	if err != nil {
 27478  		return nil, err
 27479  	}
 27480  	c.urlParams_.Set("alt", alt)
 27481  	c.urlParams_.Set("prettyPrint", "false")
 27482  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules")
 27483  	urls += "?" + c.urlParams_.Encode()
 27484  	req, err := http.NewRequest("POST", urls, body)
 27485  	if err != nil {
 27486  		return nil, err
 27487  	}
 27488  	req.Header = reqHeaders
 27489  	googleapi.Expand(req.URL, map[string]string{
 27490  		"parent": c.parent,
 27491  	})
 27492  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 27493  }
 27494  
 27495  // Do executes the "securitycenter.projects.eventThreatDetectionSettings.customModules.create" call.
 27496  // Any non-2xx status code is an error. Response headers are in either
 27497  // *EventThreatDetectionCustomModule.ServerResponse.Header or (if a response
 27498  // was returned at all) in error.(*googleapi.Error).Header. Use
 27499  // googleapi.IsNotModified to check whether the returned error was because
 27500  // http.StatusNotModified was returned.
 27501  func (c *ProjectsEventThreatDetectionSettingsCustomModulesCreateCall) Do(opts ...googleapi.CallOption) (*EventThreatDetectionCustomModule, error) {
 27502  	gensupport.SetOptions(c.urlParams_, opts...)
 27503  	res, err := c.doRequest("json")
 27504  	if res != nil && res.StatusCode == http.StatusNotModified {
 27505  		if res.Body != nil {
 27506  			res.Body.Close()
 27507  		}
 27508  		return nil, gensupport.WrapError(&googleapi.Error{
 27509  			Code:   res.StatusCode,
 27510  			Header: res.Header,
 27511  		})
 27512  	}
 27513  	if err != nil {
 27514  		return nil, err
 27515  	}
 27516  	defer googleapi.CloseBody(res)
 27517  	if err := googleapi.CheckResponse(res); err != nil {
 27518  		return nil, gensupport.WrapError(err)
 27519  	}
 27520  	ret := &EventThreatDetectionCustomModule{
 27521  		ServerResponse: googleapi.ServerResponse{
 27522  			Header:         res.Header,
 27523  			HTTPStatusCode: res.StatusCode,
 27524  		},
 27525  	}
 27526  	target := &ret
 27527  	if err := gensupport.DecodeResponse(target, res); err != nil {
 27528  		return nil, err
 27529  	}
 27530  	return ret, nil
 27531  }
 27532  
 27533  type ProjectsEventThreatDetectionSettingsCustomModulesDeleteCall struct {
 27534  	s          *Service
 27535  	name       string
 27536  	urlParams_ gensupport.URLParams
 27537  	ctx_       context.Context
 27538  	header_    http.Header
 27539  }
 27540  
 27541  // Delete: Deletes the specified Event Threat Detection custom module and all
 27542  // of its descendants in the Resource Manager hierarchy. This method is only
 27543  // supported for resident custom modules.
 27544  //
 27545  //   - name: Name of the custom module to delete. Its format is: *
 27546  //     "organizations/{organization}/eventThreatDetectionSettings/customModules/{m
 27547  //     odule}". *
 27548  //     "folders/{folder}/eventThreatDetectionSettings/customModules/{module}". *
 27549  //     "projects/{project}/eventThreatDetectionSettings/customModules/{module}".
 27550  func (r *ProjectsEventThreatDetectionSettingsCustomModulesService) Delete(name string) *ProjectsEventThreatDetectionSettingsCustomModulesDeleteCall {
 27551  	c := &ProjectsEventThreatDetectionSettingsCustomModulesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 27552  	c.name = name
 27553  	return c
 27554  }
 27555  
 27556  // Fields allows partial responses to be retrieved. See
 27557  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 27558  // details.
 27559  func (c *ProjectsEventThreatDetectionSettingsCustomModulesDeleteCall) Fields(s ...googleapi.Field) *ProjectsEventThreatDetectionSettingsCustomModulesDeleteCall {
 27560  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 27561  	return c
 27562  }
 27563  
 27564  // Context sets the context to be used in this call's Do method.
 27565  func (c *ProjectsEventThreatDetectionSettingsCustomModulesDeleteCall) Context(ctx context.Context) *ProjectsEventThreatDetectionSettingsCustomModulesDeleteCall {
 27566  	c.ctx_ = ctx
 27567  	return c
 27568  }
 27569  
 27570  // Header returns a http.Header that can be modified by the caller to add
 27571  // headers to the request.
 27572  func (c *ProjectsEventThreatDetectionSettingsCustomModulesDeleteCall) Header() http.Header {
 27573  	if c.header_ == nil {
 27574  		c.header_ = make(http.Header)
 27575  	}
 27576  	return c.header_
 27577  }
 27578  
 27579  func (c *ProjectsEventThreatDetectionSettingsCustomModulesDeleteCall) doRequest(alt string) (*http.Response, error) {
 27580  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 27581  	var body io.Reader = nil
 27582  	c.urlParams_.Set("alt", alt)
 27583  	c.urlParams_.Set("prettyPrint", "false")
 27584  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 27585  	urls += "?" + c.urlParams_.Encode()
 27586  	req, err := http.NewRequest("DELETE", urls, body)
 27587  	if err != nil {
 27588  		return nil, err
 27589  	}
 27590  	req.Header = reqHeaders
 27591  	googleapi.Expand(req.URL, map[string]string{
 27592  		"name": c.name,
 27593  	})
 27594  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 27595  }
 27596  
 27597  // Do executes the "securitycenter.projects.eventThreatDetectionSettings.customModules.delete" call.
 27598  // Any non-2xx status code is an error. Response headers are in either
 27599  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 27600  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 27601  // whether the returned error was because http.StatusNotModified was returned.
 27602  func (c *ProjectsEventThreatDetectionSettingsCustomModulesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 27603  	gensupport.SetOptions(c.urlParams_, opts...)
 27604  	res, err := c.doRequest("json")
 27605  	if res != nil && res.StatusCode == http.StatusNotModified {
 27606  		if res.Body != nil {
 27607  			res.Body.Close()
 27608  		}
 27609  		return nil, gensupport.WrapError(&googleapi.Error{
 27610  			Code:   res.StatusCode,
 27611  			Header: res.Header,
 27612  		})
 27613  	}
 27614  	if err != nil {
 27615  		return nil, err
 27616  	}
 27617  	defer googleapi.CloseBody(res)
 27618  	if err := googleapi.CheckResponse(res); err != nil {
 27619  		return nil, gensupport.WrapError(err)
 27620  	}
 27621  	ret := &Empty{
 27622  		ServerResponse: googleapi.ServerResponse{
 27623  			Header:         res.Header,
 27624  			HTTPStatusCode: res.StatusCode,
 27625  		},
 27626  	}
 27627  	target := &ret
 27628  	if err := gensupport.DecodeResponse(target, res); err != nil {
 27629  		return nil, err
 27630  	}
 27631  	return ret, nil
 27632  }
 27633  
 27634  type ProjectsEventThreatDetectionSettingsCustomModulesGetCall struct {
 27635  	s            *Service
 27636  	name         string
 27637  	urlParams_   gensupport.URLParams
 27638  	ifNoneMatch_ string
 27639  	ctx_         context.Context
 27640  	header_      http.Header
 27641  }
 27642  
 27643  // Get: Gets an Event Threat Detection custom module.
 27644  //
 27645  //   - name: Name of the custom module to get. Its format is: *
 27646  //     "organizations/{organization}/eventThreatDetectionSettings/customModules/{m
 27647  //     odule}". *
 27648  //     "folders/{folder}/eventThreatDetectionSettings/customModules/{module}". *
 27649  //     "projects/{project}/eventThreatDetectionSettings/customModules/{module}".
 27650  func (r *ProjectsEventThreatDetectionSettingsCustomModulesService) Get(name string) *ProjectsEventThreatDetectionSettingsCustomModulesGetCall {
 27651  	c := &ProjectsEventThreatDetectionSettingsCustomModulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 27652  	c.name = name
 27653  	return c
 27654  }
 27655  
 27656  // Fields allows partial responses to be retrieved. See
 27657  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 27658  // details.
 27659  func (c *ProjectsEventThreatDetectionSettingsCustomModulesGetCall) Fields(s ...googleapi.Field) *ProjectsEventThreatDetectionSettingsCustomModulesGetCall {
 27660  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 27661  	return c
 27662  }
 27663  
 27664  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 27665  // object's ETag matches the given value. This is useful for getting updates
 27666  // only after the object has changed since the last request.
 27667  func (c *ProjectsEventThreatDetectionSettingsCustomModulesGetCall) IfNoneMatch(entityTag string) *ProjectsEventThreatDetectionSettingsCustomModulesGetCall {
 27668  	c.ifNoneMatch_ = entityTag
 27669  	return c
 27670  }
 27671  
 27672  // Context sets the context to be used in this call's Do method.
 27673  func (c *ProjectsEventThreatDetectionSettingsCustomModulesGetCall) Context(ctx context.Context) *ProjectsEventThreatDetectionSettingsCustomModulesGetCall {
 27674  	c.ctx_ = ctx
 27675  	return c
 27676  }
 27677  
 27678  // Header returns a http.Header that can be modified by the caller to add
 27679  // headers to the request.
 27680  func (c *ProjectsEventThreatDetectionSettingsCustomModulesGetCall) Header() http.Header {
 27681  	if c.header_ == nil {
 27682  		c.header_ = make(http.Header)
 27683  	}
 27684  	return c.header_
 27685  }
 27686  
 27687  func (c *ProjectsEventThreatDetectionSettingsCustomModulesGetCall) doRequest(alt string) (*http.Response, error) {
 27688  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 27689  	if c.ifNoneMatch_ != "" {
 27690  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 27691  	}
 27692  	var body io.Reader = nil
 27693  	c.urlParams_.Set("alt", alt)
 27694  	c.urlParams_.Set("prettyPrint", "false")
 27695  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 27696  	urls += "?" + c.urlParams_.Encode()
 27697  	req, err := http.NewRequest("GET", urls, body)
 27698  	if err != nil {
 27699  		return nil, err
 27700  	}
 27701  	req.Header = reqHeaders
 27702  	googleapi.Expand(req.URL, map[string]string{
 27703  		"name": c.name,
 27704  	})
 27705  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 27706  }
 27707  
 27708  // Do executes the "securitycenter.projects.eventThreatDetectionSettings.customModules.get" call.
 27709  // Any non-2xx status code is an error. Response headers are in either
 27710  // *EventThreatDetectionCustomModule.ServerResponse.Header or (if a response
 27711  // was returned at all) in error.(*googleapi.Error).Header. Use
 27712  // googleapi.IsNotModified to check whether the returned error was because
 27713  // http.StatusNotModified was returned.
 27714  func (c *ProjectsEventThreatDetectionSettingsCustomModulesGetCall) Do(opts ...googleapi.CallOption) (*EventThreatDetectionCustomModule, error) {
 27715  	gensupport.SetOptions(c.urlParams_, opts...)
 27716  	res, err := c.doRequest("json")
 27717  	if res != nil && res.StatusCode == http.StatusNotModified {
 27718  		if res.Body != nil {
 27719  			res.Body.Close()
 27720  		}
 27721  		return nil, gensupport.WrapError(&googleapi.Error{
 27722  			Code:   res.StatusCode,
 27723  			Header: res.Header,
 27724  		})
 27725  	}
 27726  	if err != nil {
 27727  		return nil, err
 27728  	}
 27729  	defer googleapi.CloseBody(res)
 27730  	if err := googleapi.CheckResponse(res); err != nil {
 27731  		return nil, gensupport.WrapError(err)
 27732  	}
 27733  	ret := &EventThreatDetectionCustomModule{
 27734  		ServerResponse: googleapi.ServerResponse{
 27735  			Header:         res.Header,
 27736  			HTTPStatusCode: res.StatusCode,
 27737  		},
 27738  	}
 27739  	target := &ret
 27740  	if err := gensupport.DecodeResponse(target, res); err != nil {
 27741  		return nil, err
 27742  	}
 27743  	return ret, nil
 27744  }
 27745  
 27746  type ProjectsEventThreatDetectionSettingsCustomModulesListCall struct {
 27747  	s            *Service
 27748  	parent       string
 27749  	urlParams_   gensupport.URLParams
 27750  	ifNoneMatch_ string
 27751  	ctx_         context.Context
 27752  	header_      http.Header
 27753  }
 27754  
 27755  // List: Lists all Event Threat Detection custom modules for the given Resource
 27756  // Manager parent. This includes resident modules defined at the scope of the
 27757  // parent along with modules inherited from ancestors.
 27758  //
 27759  //   - parent: Name of the parent to list custom modules under. Its format is: *
 27760  //     "organizations/{organization}/eventThreatDetectionSettings". *
 27761  //     "folders/{folder}/eventThreatDetectionSettings". *
 27762  //     "projects/{project}/eventThreatDetectionSettings".
 27763  func (r *ProjectsEventThreatDetectionSettingsCustomModulesService) List(parent string) *ProjectsEventThreatDetectionSettingsCustomModulesListCall {
 27764  	c := &ProjectsEventThreatDetectionSettingsCustomModulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 27765  	c.parent = parent
 27766  	return c
 27767  }
 27768  
 27769  // PageSize sets the optional parameter "pageSize": The maximum number of
 27770  // modules to return. The service may return fewer than this value. If
 27771  // unspecified, at most 10 configs will be returned. The maximum value is 1000;
 27772  // values above 1000 will be coerced to 1000.
 27773  func (c *ProjectsEventThreatDetectionSettingsCustomModulesListCall) PageSize(pageSize int64) *ProjectsEventThreatDetectionSettingsCustomModulesListCall {
 27774  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 27775  	return c
 27776  }
 27777  
 27778  // PageToken sets the optional parameter "pageToken": A page token, received
 27779  // from a previous `ListEventThreatDetectionCustomModules` call. Provide this
 27780  // to retrieve the subsequent page. When paginating, all other parameters
 27781  // provided to `ListEventThreatDetectionCustomModules` must match the call that
 27782  // provided the page token.
 27783  func (c *ProjectsEventThreatDetectionSettingsCustomModulesListCall) PageToken(pageToken string) *ProjectsEventThreatDetectionSettingsCustomModulesListCall {
 27784  	c.urlParams_.Set("pageToken", pageToken)
 27785  	return c
 27786  }
 27787  
 27788  // Fields allows partial responses to be retrieved. See
 27789  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 27790  // details.
 27791  func (c *ProjectsEventThreatDetectionSettingsCustomModulesListCall) Fields(s ...googleapi.Field) *ProjectsEventThreatDetectionSettingsCustomModulesListCall {
 27792  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 27793  	return c
 27794  }
 27795  
 27796  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 27797  // object's ETag matches the given value. This is useful for getting updates
 27798  // only after the object has changed since the last request.
 27799  func (c *ProjectsEventThreatDetectionSettingsCustomModulesListCall) IfNoneMatch(entityTag string) *ProjectsEventThreatDetectionSettingsCustomModulesListCall {
 27800  	c.ifNoneMatch_ = entityTag
 27801  	return c
 27802  }
 27803  
 27804  // Context sets the context to be used in this call's Do method.
 27805  func (c *ProjectsEventThreatDetectionSettingsCustomModulesListCall) Context(ctx context.Context) *ProjectsEventThreatDetectionSettingsCustomModulesListCall {
 27806  	c.ctx_ = ctx
 27807  	return c
 27808  }
 27809  
 27810  // Header returns a http.Header that can be modified by the caller to add
 27811  // headers to the request.
 27812  func (c *ProjectsEventThreatDetectionSettingsCustomModulesListCall) Header() http.Header {
 27813  	if c.header_ == nil {
 27814  		c.header_ = make(http.Header)
 27815  	}
 27816  	return c.header_
 27817  }
 27818  
 27819  func (c *ProjectsEventThreatDetectionSettingsCustomModulesListCall) doRequest(alt string) (*http.Response, error) {
 27820  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 27821  	if c.ifNoneMatch_ != "" {
 27822  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 27823  	}
 27824  	var body io.Reader = nil
 27825  	c.urlParams_.Set("alt", alt)
 27826  	c.urlParams_.Set("prettyPrint", "false")
 27827  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules")
 27828  	urls += "?" + c.urlParams_.Encode()
 27829  	req, err := http.NewRequest("GET", urls, body)
 27830  	if err != nil {
 27831  		return nil, err
 27832  	}
 27833  	req.Header = reqHeaders
 27834  	googleapi.Expand(req.URL, map[string]string{
 27835  		"parent": c.parent,
 27836  	})
 27837  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 27838  }
 27839  
 27840  // Do executes the "securitycenter.projects.eventThreatDetectionSettings.customModules.list" call.
 27841  // Any non-2xx status code is an error. Response headers are in either
 27842  // *ListEventThreatDetectionCustomModulesResponse.ServerResponse.Header or (if
 27843  // a response was returned at all) in error.(*googleapi.Error).Header. Use
 27844  // googleapi.IsNotModified to check whether the returned error was because
 27845  // http.StatusNotModified was returned.
 27846  func (c *ProjectsEventThreatDetectionSettingsCustomModulesListCall) Do(opts ...googleapi.CallOption) (*ListEventThreatDetectionCustomModulesResponse, error) {
 27847  	gensupport.SetOptions(c.urlParams_, opts...)
 27848  	res, err := c.doRequest("json")
 27849  	if res != nil && res.StatusCode == http.StatusNotModified {
 27850  		if res.Body != nil {
 27851  			res.Body.Close()
 27852  		}
 27853  		return nil, gensupport.WrapError(&googleapi.Error{
 27854  			Code:   res.StatusCode,
 27855  			Header: res.Header,
 27856  		})
 27857  	}
 27858  	if err != nil {
 27859  		return nil, err
 27860  	}
 27861  	defer googleapi.CloseBody(res)
 27862  	if err := googleapi.CheckResponse(res); err != nil {
 27863  		return nil, gensupport.WrapError(err)
 27864  	}
 27865  	ret := &ListEventThreatDetectionCustomModulesResponse{
 27866  		ServerResponse: googleapi.ServerResponse{
 27867  			Header:         res.Header,
 27868  			HTTPStatusCode: res.StatusCode,
 27869  		},
 27870  	}
 27871  	target := &ret
 27872  	if err := gensupport.DecodeResponse(target, res); err != nil {
 27873  		return nil, err
 27874  	}
 27875  	return ret, nil
 27876  }
 27877  
 27878  // Pages invokes f for each page of results.
 27879  // A non-nil error returned from f will halt the iteration.
 27880  // The provided context supersedes any context provided to the Context method.
 27881  func (c *ProjectsEventThreatDetectionSettingsCustomModulesListCall) Pages(ctx context.Context, f func(*ListEventThreatDetectionCustomModulesResponse) error) error {
 27882  	c.ctx_ = ctx
 27883  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 27884  	for {
 27885  		x, err := c.Do()
 27886  		if err != nil {
 27887  			return err
 27888  		}
 27889  		if err := f(x); err != nil {
 27890  			return err
 27891  		}
 27892  		if x.NextPageToken == "" {
 27893  			return nil
 27894  		}
 27895  		c.PageToken(x.NextPageToken)
 27896  	}
 27897  }
 27898  
 27899  type ProjectsEventThreatDetectionSettingsCustomModulesListDescendantCall struct {
 27900  	s            *Service
 27901  	parent       string
 27902  	urlParams_   gensupport.URLParams
 27903  	ifNoneMatch_ string
 27904  	ctx_         context.Context
 27905  	header_      http.Header
 27906  }
 27907  
 27908  // ListDescendant: Lists all resident Event Threat Detection custom modules
 27909  // under the given Resource Manager parent and its descendants.
 27910  //
 27911  //   - parent: Name of the parent to list custom modules under. Its format is: *
 27912  //     "organizations/{organization}/eventThreatDetectionSettings". *
 27913  //     "folders/{folder}/eventThreatDetectionSettings". *
 27914  //     "projects/{project}/eventThreatDetectionSettings".
 27915  func (r *ProjectsEventThreatDetectionSettingsCustomModulesService) ListDescendant(parent string) *ProjectsEventThreatDetectionSettingsCustomModulesListDescendantCall {
 27916  	c := &ProjectsEventThreatDetectionSettingsCustomModulesListDescendantCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 27917  	c.parent = parent
 27918  	return c
 27919  }
 27920  
 27921  // PageSize sets the optional parameter "pageSize": The maximum number of
 27922  // modules to return. The service may return fewer than this value. If
 27923  // unspecified, at most 10 configs will be returned. The maximum value is 1000;
 27924  // values above 1000 will be coerced to 1000.
 27925  func (c *ProjectsEventThreatDetectionSettingsCustomModulesListDescendantCall) PageSize(pageSize int64) *ProjectsEventThreatDetectionSettingsCustomModulesListDescendantCall {
 27926  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 27927  	return c
 27928  }
 27929  
 27930  // PageToken sets the optional parameter "pageToken": A page token, received
 27931  // from a previous `ListDescendantEventThreatDetectionCustomModules` call.
 27932  // Provide this to retrieve the subsequent page. When paginating, all other
 27933  // parameters provided to `ListDescendantEventThreatDetectionCustomModules`
 27934  // must match the call that provided the page token.
 27935  func (c *ProjectsEventThreatDetectionSettingsCustomModulesListDescendantCall) PageToken(pageToken string) *ProjectsEventThreatDetectionSettingsCustomModulesListDescendantCall {
 27936  	c.urlParams_.Set("pageToken", pageToken)
 27937  	return c
 27938  }
 27939  
 27940  // Fields allows partial responses to be retrieved. See
 27941  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 27942  // details.
 27943  func (c *ProjectsEventThreatDetectionSettingsCustomModulesListDescendantCall) Fields(s ...googleapi.Field) *ProjectsEventThreatDetectionSettingsCustomModulesListDescendantCall {
 27944  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 27945  	return c
 27946  }
 27947  
 27948  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 27949  // object's ETag matches the given value. This is useful for getting updates
 27950  // only after the object has changed since the last request.
 27951  func (c *ProjectsEventThreatDetectionSettingsCustomModulesListDescendantCall) IfNoneMatch(entityTag string) *ProjectsEventThreatDetectionSettingsCustomModulesListDescendantCall {
 27952  	c.ifNoneMatch_ = entityTag
 27953  	return c
 27954  }
 27955  
 27956  // Context sets the context to be used in this call's Do method.
 27957  func (c *ProjectsEventThreatDetectionSettingsCustomModulesListDescendantCall) Context(ctx context.Context) *ProjectsEventThreatDetectionSettingsCustomModulesListDescendantCall {
 27958  	c.ctx_ = ctx
 27959  	return c
 27960  }
 27961  
 27962  // Header returns a http.Header that can be modified by the caller to add
 27963  // headers to the request.
 27964  func (c *ProjectsEventThreatDetectionSettingsCustomModulesListDescendantCall) Header() http.Header {
 27965  	if c.header_ == nil {
 27966  		c.header_ = make(http.Header)
 27967  	}
 27968  	return c.header_
 27969  }
 27970  
 27971  func (c *ProjectsEventThreatDetectionSettingsCustomModulesListDescendantCall) doRequest(alt string) (*http.Response, error) {
 27972  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 27973  	if c.ifNoneMatch_ != "" {
 27974  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 27975  	}
 27976  	var body io.Reader = nil
 27977  	c.urlParams_.Set("alt", alt)
 27978  	c.urlParams_.Set("prettyPrint", "false")
 27979  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules:listDescendant")
 27980  	urls += "?" + c.urlParams_.Encode()
 27981  	req, err := http.NewRequest("GET", urls, body)
 27982  	if err != nil {
 27983  		return nil, err
 27984  	}
 27985  	req.Header = reqHeaders
 27986  	googleapi.Expand(req.URL, map[string]string{
 27987  		"parent": c.parent,
 27988  	})
 27989  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 27990  }
 27991  
 27992  // Do executes the "securitycenter.projects.eventThreatDetectionSettings.customModules.listDescendant" call.
 27993  // Any non-2xx status code is an error. Response headers are in either
 27994  // *ListDescendantEventThreatDetectionCustomModulesResponse.ServerResponse.Heade
 27995  // r or (if a response was returned at all) in error.(*googleapi.Error).Header.
 27996  // Use googleapi.IsNotModified to check whether the returned error was because
 27997  // http.StatusNotModified was returned.
 27998  func (c *ProjectsEventThreatDetectionSettingsCustomModulesListDescendantCall) Do(opts ...googleapi.CallOption) (*ListDescendantEventThreatDetectionCustomModulesResponse, error) {
 27999  	gensupport.SetOptions(c.urlParams_, opts...)
 28000  	res, err := c.doRequest("json")
 28001  	if res != nil && res.StatusCode == http.StatusNotModified {
 28002  		if res.Body != nil {
 28003  			res.Body.Close()
 28004  		}
 28005  		return nil, gensupport.WrapError(&googleapi.Error{
 28006  			Code:   res.StatusCode,
 28007  			Header: res.Header,
 28008  		})
 28009  	}
 28010  	if err != nil {
 28011  		return nil, err
 28012  	}
 28013  	defer googleapi.CloseBody(res)
 28014  	if err := googleapi.CheckResponse(res); err != nil {
 28015  		return nil, gensupport.WrapError(err)
 28016  	}
 28017  	ret := &ListDescendantEventThreatDetectionCustomModulesResponse{
 28018  		ServerResponse: googleapi.ServerResponse{
 28019  			Header:         res.Header,
 28020  			HTTPStatusCode: res.StatusCode,
 28021  		},
 28022  	}
 28023  	target := &ret
 28024  	if err := gensupport.DecodeResponse(target, res); err != nil {
 28025  		return nil, err
 28026  	}
 28027  	return ret, nil
 28028  }
 28029  
 28030  // Pages invokes f for each page of results.
 28031  // A non-nil error returned from f will halt the iteration.
 28032  // The provided context supersedes any context provided to the Context method.
 28033  func (c *ProjectsEventThreatDetectionSettingsCustomModulesListDescendantCall) Pages(ctx context.Context, f func(*ListDescendantEventThreatDetectionCustomModulesResponse) error) error {
 28034  	c.ctx_ = ctx
 28035  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 28036  	for {
 28037  		x, err := c.Do()
 28038  		if err != nil {
 28039  			return err
 28040  		}
 28041  		if err := f(x); err != nil {
 28042  			return err
 28043  		}
 28044  		if x.NextPageToken == "" {
 28045  			return nil
 28046  		}
 28047  		c.PageToken(x.NextPageToken)
 28048  	}
 28049  }
 28050  
 28051  type ProjectsEventThreatDetectionSettingsCustomModulesPatchCall struct {
 28052  	s                                *Service
 28053  	name                             string
 28054  	eventthreatdetectioncustommodule *EventThreatDetectionCustomModule
 28055  	urlParams_                       gensupport.URLParams
 28056  	ctx_                             context.Context
 28057  	header_                          http.Header
 28058  }
 28059  
 28060  // Patch: Updates the Event Threat Detection custom module with the given name
 28061  // based on the given update mask. Updating the enablement state is supported
 28062  // for both resident and inherited modules (though resident modules cannot have
 28063  // an enablement state of "inherited"). Updating the display name or
 28064  // configuration of a module is supported for resident modules only. The type
 28065  // of a module cannot be changed.
 28066  //
 28067  //   - name: Immutable. The resource name of the Event Threat Detection custom
 28068  //     module. Its format is: *
 28069  //     "organizations/{organization}/eventThreatDetectionSettings/customModules/{m
 28070  //     odule}". *
 28071  //     "folders/{folder}/eventThreatDetectionSettings/customModules/{module}". *
 28072  //     "projects/{project}/eventThreatDetectionSettings/customModules/{module}".
 28073  func (r *ProjectsEventThreatDetectionSettingsCustomModulesService) Patch(name string, eventthreatdetectioncustommodule *EventThreatDetectionCustomModule) *ProjectsEventThreatDetectionSettingsCustomModulesPatchCall {
 28074  	c := &ProjectsEventThreatDetectionSettingsCustomModulesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 28075  	c.name = name
 28076  	c.eventthreatdetectioncustommodule = eventthreatdetectioncustommodule
 28077  	return c
 28078  }
 28079  
 28080  // UpdateMask sets the optional parameter "updateMask": The list of fields to
 28081  // be updated. If empty all mutable fields will be updated.
 28082  func (c *ProjectsEventThreatDetectionSettingsCustomModulesPatchCall) UpdateMask(updateMask string) *ProjectsEventThreatDetectionSettingsCustomModulesPatchCall {
 28083  	c.urlParams_.Set("updateMask", updateMask)
 28084  	return c
 28085  }
 28086  
 28087  // Fields allows partial responses to be retrieved. See
 28088  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 28089  // details.
 28090  func (c *ProjectsEventThreatDetectionSettingsCustomModulesPatchCall) Fields(s ...googleapi.Field) *ProjectsEventThreatDetectionSettingsCustomModulesPatchCall {
 28091  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 28092  	return c
 28093  }
 28094  
 28095  // Context sets the context to be used in this call's Do method.
 28096  func (c *ProjectsEventThreatDetectionSettingsCustomModulesPatchCall) Context(ctx context.Context) *ProjectsEventThreatDetectionSettingsCustomModulesPatchCall {
 28097  	c.ctx_ = ctx
 28098  	return c
 28099  }
 28100  
 28101  // Header returns a http.Header that can be modified by the caller to add
 28102  // headers to the request.
 28103  func (c *ProjectsEventThreatDetectionSettingsCustomModulesPatchCall) Header() http.Header {
 28104  	if c.header_ == nil {
 28105  		c.header_ = make(http.Header)
 28106  	}
 28107  	return c.header_
 28108  }
 28109  
 28110  func (c *ProjectsEventThreatDetectionSettingsCustomModulesPatchCall) doRequest(alt string) (*http.Response, error) {
 28111  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 28112  	var body io.Reader = nil
 28113  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.eventthreatdetectioncustommodule)
 28114  	if err != nil {
 28115  		return nil, err
 28116  	}
 28117  	c.urlParams_.Set("alt", alt)
 28118  	c.urlParams_.Set("prettyPrint", "false")
 28119  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 28120  	urls += "?" + c.urlParams_.Encode()
 28121  	req, err := http.NewRequest("PATCH", urls, body)
 28122  	if err != nil {
 28123  		return nil, err
 28124  	}
 28125  	req.Header = reqHeaders
 28126  	googleapi.Expand(req.URL, map[string]string{
 28127  		"name": c.name,
 28128  	})
 28129  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 28130  }
 28131  
 28132  // Do executes the "securitycenter.projects.eventThreatDetectionSettings.customModules.patch" call.
 28133  // Any non-2xx status code is an error. Response headers are in either
 28134  // *EventThreatDetectionCustomModule.ServerResponse.Header or (if a response
 28135  // was returned at all) in error.(*googleapi.Error).Header. Use
 28136  // googleapi.IsNotModified to check whether the returned error was because
 28137  // http.StatusNotModified was returned.
 28138  func (c *ProjectsEventThreatDetectionSettingsCustomModulesPatchCall) Do(opts ...googleapi.CallOption) (*EventThreatDetectionCustomModule, error) {
 28139  	gensupport.SetOptions(c.urlParams_, opts...)
 28140  	res, err := c.doRequest("json")
 28141  	if res != nil && res.StatusCode == http.StatusNotModified {
 28142  		if res.Body != nil {
 28143  			res.Body.Close()
 28144  		}
 28145  		return nil, gensupport.WrapError(&googleapi.Error{
 28146  			Code:   res.StatusCode,
 28147  			Header: res.Header,
 28148  		})
 28149  	}
 28150  	if err != nil {
 28151  		return nil, err
 28152  	}
 28153  	defer googleapi.CloseBody(res)
 28154  	if err := googleapi.CheckResponse(res); err != nil {
 28155  		return nil, gensupport.WrapError(err)
 28156  	}
 28157  	ret := &EventThreatDetectionCustomModule{
 28158  		ServerResponse: googleapi.ServerResponse{
 28159  			Header:         res.Header,
 28160  			HTTPStatusCode: res.StatusCode,
 28161  		},
 28162  	}
 28163  	target := &ret
 28164  	if err := gensupport.DecodeResponse(target, res); err != nil {
 28165  		return nil, err
 28166  	}
 28167  	return ret, nil
 28168  }
 28169  
 28170  type ProjectsEventThreatDetectionSettingsEffectiveCustomModulesGetCall struct {
 28171  	s            *Service
 28172  	name         string
 28173  	urlParams_   gensupport.URLParams
 28174  	ifNoneMatch_ string
 28175  	ctx_         context.Context
 28176  	header_      http.Header
 28177  }
 28178  
 28179  // Get: Gets an effective Event Threat Detection custom module at the given
 28180  // level.
 28181  //
 28182  //   - name: The resource name of the effective Event Threat Detection custom
 28183  //     module. Its format is: *
 28184  //     "organizations/{organization}/eventThreatDetectionSettings/effectiveCustomM
 28185  //     odules/{module}". *
 28186  //     "folders/{folder}/eventThreatDetectionSettings/effectiveCustomModules/{modu
 28187  //     le}". *
 28188  //     "projects/{project}/eventThreatDetectionSettings/effectiveCustomModules/{mo
 28189  //     dule}".
 28190  func (r *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesService) Get(name string) *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesGetCall {
 28191  	c := &ProjectsEventThreatDetectionSettingsEffectiveCustomModulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 28192  	c.name = name
 28193  	return c
 28194  }
 28195  
 28196  // Fields allows partial responses to be retrieved. See
 28197  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 28198  // details.
 28199  func (c *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesGetCall) Fields(s ...googleapi.Field) *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesGetCall {
 28200  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 28201  	return c
 28202  }
 28203  
 28204  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 28205  // object's ETag matches the given value. This is useful for getting updates
 28206  // only after the object has changed since the last request.
 28207  func (c *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesGetCall) IfNoneMatch(entityTag string) *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesGetCall {
 28208  	c.ifNoneMatch_ = entityTag
 28209  	return c
 28210  }
 28211  
 28212  // Context sets the context to be used in this call's Do method.
 28213  func (c *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesGetCall) Context(ctx context.Context) *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesGetCall {
 28214  	c.ctx_ = ctx
 28215  	return c
 28216  }
 28217  
 28218  // Header returns a http.Header that can be modified by the caller to add
 28219  // headers to the request.
 28220  func (c *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesGetCall) Header() http.Header {
 28221  	if c.header_ == nil {
 28222  		c.header_ = make(http.Header)
 28223  	}
 28224  	return c.header_
 28225  }
 28226  
 28227  func (c *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesGetCall) doRequest(alt string) (*http.Response, error) {
 28228  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 28229  	if c.ifNoneMatch_ != "" {
 28230  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 28231  	}
 28232  	var body io.Reader = nil
 28233  	c.urlParams_.Set("alt", alt)
 28234  	c.urlParams_.Set("prettyPrint", "false")
 28235  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 28236  	urls += "?" + c.urlParams_.Encode()
 28237  	req, err := http.NewRequest("GET", urls, body)
 28238  	if err != nil {
 28239  		return nil, err
 28240  	}
 28241  	req.Header = reqHeaders
 28242  	googleapi.Expand(req.URL, map[string]string{
 28243  		"name": c.name,
 28244  	})
 28245  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 28246  }
 28247  
 28248  // Do executes the "securitycenter.projects.eventThreatDetectionSettings.effectiveCustomModules.get" call.
 28249  // Any non-2xx status code is an error. Response headers are in either
 28250  // *EffectiveEventThreatDetectionCustomModule.ServerResponse.Header or (if a
 28251  // response was returned at all) in error.(*googleapi.Error).Header. Use
 28252  // googleapi.IsNotModified to check whether the returned error was because
 28253  // http.StatusNotModified was returned.
 28254  func (c *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesGetCall) Do(opts ...googleapi.CallOption) (*EffectiveEventThreatDetectionCustomModule, error) {
 28255  	gensupport.SetOptions(c.urlParams_, opts...)
 28256  	res, err := c.doRequest("json")
 28257  	if res != nil && res.StatusCode == http.StatusNotModified {
 28258  		if res.Body != nil {
 28259  			res.Body.Close()
 28260  		}
 28261  		return nil, gensupport.WrapError(&googleapi.Error{
 28262  			Code:   res.StatusCode,
 28263  			Header: res.Header,
 28264  		})
 28265  	}
 28266  	if err != nil {
 28267  		return nil, err
 28268  	}
 28269  	defer googleapi.CloseBody(res)
 28270  	if err := googleapi.CheckResponse(res); err != nil {
 28271  		return nil, gensupport.WrapError(err)
 28272  	}
 28273  	ret := &EffectiveEventThreatDetectionCustomModule{
 28274  		ServerResponse: googleapi.ServerResponse{
 28275  			Header:         res.Header,
 28276  			HTTPStatusCode: res.StatusCode,
 28277  		},
 28278  	}
 28279  	target := &ret
 28280  	if err := gensupport.DecodeResponse(target, res); err != nil {
 28281  		return nil, err
 28282  	}
 28283  	return ret, nil
 28284  }
 28285  
 28286  type ProjectsEventThreatDetectionSettingsEffectiveCustomModulesListCall struct {
 28287  	s            *Service
 28288  	parent       string
 28289  	urlParams_   gensupport.URLParams
 28290  	ifNoneMatch_ string
 28291  	ctx_         context.Context
 28292  	header_      http.Header
 28293  }
 28294  
 28295  // List: Lists all effective Event Threat Detection custom modules for the
 28296  // given parent. This includes resident modules defined at the scope of the
 28297  // parent along with modules inherited from its ancestors.
 28298  //
 28299  //   - parent: Name of the parent to list custom modules for. Its format is: *
 28300  //     "organizations/{organization}/eventThreatDetectionSettings". *
 28301  //     "folders/{folder}/eventThreatDetectionSettings". *
 28302  //     "projects/{project}/eventThreatDetectionSettings".
 28303  func (r *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesService) List(parent string) *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesListCall {
 28304  	c := &ProjectsEventThreatDetectionSettingsEffectiveCustomModulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 28305  	c.parent = parent
 28306  	return c
 28307  }
 28308  
 28309  // PageSize sets the optional parameter "pageSize": The maximum number of
 28310  // modules to return. The service may return fewer than this value. If
 28311  // unspecified, at most 10 configs will be returned. The maximum value is 1000;
 28312  // values above 1000 will be coerced to 1000.
 28313  func (c *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesListCall) PageSize(pageSize int64) *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesListCall {
 28314  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 28315  	return c
 28316  }
 28317  
 28318  // PageToken sets the optional parameter "pageToken": A page token, received
 28319  // from a previous `ListEffectiveEventThreatDetectionCustomModules` call.
 28320  // Provide this to retrieve the subsequent page. When paginating, all other
 28321  // parameters provided to `ListEffectiveEventThreatDetectionCustomModules` must
 28322  // match the call that provided the page token.
 28323  func (c *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesListCall) PageToken(pageToken string) *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesListCall {
 28324  	c.urlParams_.Set("pageToken", pageToken)
 28325  	return c
 28326  }
 28327  
 28328  // Fields allows partial responses to be retrieved. See
 28329  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 28330  // details.
 28331  func (c *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesListCall) Fields(s ...googleapi.Field) *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesListCall {
 28332  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 28333  	return c
 28334  }
 28335  
 28336  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 28337  // object's ETag matches the given value. This is useful for getting updates
 28338  // only after the object has changed since the last request.
 28339  func (c *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesListCall) IfNoneMatch(entityTag string) *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesListCall {
 28340  	c.ifNoneMatch_ = entityTag
 28341  	return c
 28342  }
 28343  
 28344  // Context sets the context to be used in this call's Do method.
 28345  func (c *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesListCall) Context(ctx context.Context) *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesListCall {
 28346  	c.ctx_ = ctx
 28347  	return c
 28348  }
 28349  
 28350  // Header returns a http.Header that can be modified by the caller to add
 28351  // headers to the request.
 28352  func (c *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesListCall) Header() http.Header {
 28353  	if c.header_ == nil {
 28354  		c.header_ = make(http.Header)
 28355  	}
 28356  	return c.header_
 28357  }
 28358  
 28359  func (c *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesListCall) doRequest(alt string) (*http.Response, error) {
 28360  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 28361  	if c.ifNoneMatch_ != "" {
 28362  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 28363  	}
 28364  	var body io.Reader = nil
 28365  	c.urlParams_.Set("alt", alt)
 28366  	c.urlParams_.Set("prettyPrint", "false")
 28367  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/effectiveCustomModules")
 28368  	urls += "?" + c.urlParams_.Encode()
 28369  	req, err := http.NewRequest("GET", urls, body)
 28370  	if err != nil {
 28371  		return nil, err
 28372  	}
 28373  	req.Header = reqHeaders
 28374  	googleapi.Expand(req.URL, map[string]string{
 28375  		"parent": c.parent,
 28376  	})
 28377  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 28378  }
 28379  
 28380  // Do executes the "securitycenter.projects.eventThreatDetectionSettings.effectiveCustomModules.list" call.
 28381  // Any non-2xx status code is an error. Response headers are in either
 28382  // *ListEffectiveEventThreatDetectionCustomModulesResponse.ServerResponse.Header
 28383  //
 28384  //	or (if a response was returned at all) in error.(*googleapi.Error).Header.
 28385  //
 28386  // Use googleapi.IsNotModified to check whether the returned error was because
 28387  // http.StatusNotModified was returned.
 28388  func (c *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesListCall) Do(opts ...googleapi.CallOption) (*ListEffectiveEventThreatDetectionCustomModulesResponse, error) {
 28389  	gensupport.SetOptions(c.urlParams_, opts...)
 28390  	res, err := c.doRequest("json")
 28391  	if res != nil && res.StatusCode == http.StatusNotModified {
 28392  		if res.Body != nil {
 28393  			res.Body.Close()
 28394  		}
 28395  		return nil, gensupport.WrapError(&googleapi.Error{
 28396  			Code:   res.StatusCode,
 28397  			Header: res.Header,
 28398  		})
 28399  	}
 28400  	if err != nil {
 28401  		return nil, err
 28402  	}
 28403  	defer googleapi.CloseBody(res)
 28404  	if err := googleapi.CheckResponse(res); err != nil {
 28405  		return nil, gensupport.WrapError(err)
 28406  	}
 28407  	ret := &ListEffectiveEventThreatDetectionCustomModulesResponse{
 28408  		ServerResponse: googleapi.ServerResponse{
 28409  			Header:         res.Header,
 28410  			HTTPStatusCode: res.StatusCode,
 28411  		},
 28412  	}
 28413  	target := &ret
 28414  	if err := gensupport.DecodeResponse(target, res); err != nil {
 28415  		return nil, err
 28416  	}
 28417  	return ret, nil
 28418  }
 28419  
 28420  // Pages invokes f for each page of results.
 28421  // A non-nil error returned from f will halt the iteration.
 28422  // The provided context supersedes any context provided to the Context method.
 28423  func (c *ProjectsEventThreatDetectionSettingsEffectiveCustomModulesListCall) Pages(ctx context.Context, f func(*ListEffectiveEventThreatDetectionCustomModulesResponse) error) error {
 28424  	c.ctx_ = ctx
 28425  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 28426  	for {
 28427  		x, err := c.Do()
 28428  		if err != nil {
 28429  			return err
 28430  		}
 28431  		if err := f(x); err != nil {
 28432  			return err
 28433  		}
 28434  		if x.NextPageToken == "" {
 28435  			return nil
 28436  		}
 28437  		c.PageToken(x.NextPageToken)
 28438  	}
 28439  }
 28440  
 28441  type ProjectsFindingsBulkMuteCall struct {
 28442  	s                       *Service
 28443  	parent                  string
 28444  	bulkmutefindingsrequest *BulkMuteFindingsRequest
 28445  	urlParams_              gensupport.URLParams
 28446  	ctx_                    context.Context
 28447  	header_                 http.Header
 28448  }
 28449  
 28450  // BulkMute: Kicks off an LRO to bulk mute findings for a parent based on a
 28451  // filter. The parent can be either an organization, folder or project. The
 28452  // findings matched by the filter will be muted after the LRO is done.
 28453  //
 28454  //   - parent: The parent, at which bulk action needs to be applied. Its format
 28455  //     is "organizations/[organization_id]", "folders/[folder_id]",
 28456  //     "projects/[project_id]".
 28457  func (r *ProjectsFindingsService) BulkMute(parent string, bulkmutefindingsrequest *BulkMuteFindingsRequest) *ProjectsFindingsBulkMuteCall {
 28458  	c := &ProjectsFindingsBulkMuteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 28459  	c.parent = parent
 28460  	c.bulkmutefindingsrequest = bulkmutefindingsrequest
 28461  	return c
 28462  }
 28463  
 28464  // Fields allows partial responses to be retrieved. See
 28465  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 28466  // details.
 28467  func (c *ProjectsFindingsBulkMuteCall) Fields(s ...googleapi.Field) *ProjectsFindingsBulkMuteCall {
 28468  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 28469  	return c
 28470  }
 28471  
 28472  // Context sets the context to be used in this call's Do method.
 28473  func (c *ProjectsFindingsBulkMuteCall) Context(ctx context.Context) *ProjectsFindingsBulkMuteCall {
 28474  	c.ctx_ = ctx
 28475  	return c
 28476  }
 28477  
 28478  // Header returns a http.Header that can be modified by the caller to add
 28479  // headers to the request.
 28480  func (c *ProjectsFindingsBulkMuteCall) Header() http.Header {
 28481  	if c.header_ == nil {
 28482  		c.header_ = make(http.Header)
 28483  	}
 28484  	return c.header_
 28485  }
 28486  
 28487  func (c *ProjectsFindingsBulkMuteCall) doRequest(alt string) (*http.Response, error) {
 28488  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 28489  	var body io.Reader = nil
 28490  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.bulkmutefindingsrequest)
 28491  	if err != nil {
 28492  		return nil, err
 28493  	}
 28494  	c.urlParams_.Set("alt", alt)
 28495  	c.urlParams_.Set("prettyPrint", "false")
 28496  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/findings:bulkMute")
 28497  	urls += "?" + c.urlParams_.Encode()
 28498  	req, err := http.NewRequest("POST", urls, body)
 28499  	if err != nil {
 28500  		return nil, err
 28501  	}
 28502  	req.Header = reqHeaders
 28503  	googleapi.Expand(req.URL, map[string]string{
 28504  		"parent": c.parent,
 28505  	})
 28506  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 28507  }
 28508  
 28509  // Do executes the "securitycenter.projects.findings.bulkMute" call.
 28510  // Any non-2xx status code is an error. Response headers are in either
 28511  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 28512  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 28513  // whether the returned error was because http.StatusNotModified was returned.
 28514  func (c *ProjectsFindingsBulkMuteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 28515  	gensupport.SetOptions(c.urlParams_, opts...)
 28516  	res, err := c.doRequest("json")
 28517  	if res != nil && res.StatusCode == http.StatusNotModified {
 28518  		if res.Body != nil {
 28519  			res.Body.Close()
 28520  		}
 28521  		return nil, gensupport.WrapError(&googleapi.Error{
 28522  			Code:   res.StatusCode,
 28523  			Header: res.Header,
 28524  		})
 28525  	}
 28526  	if err != nil {
 28527  		return nil, err
 28528  	}
 28529  	defer googleapi.CloseBody(res)
 28530  	if err := googleapi.CheckResponse(res); err != nil {
 28531  		return nil, gensupport.WrapError(err)
 28532  	}
 28533  	ret := &Operation{
 28534  		ServerResponse: googleapi.ServerResponse{
 28535  			Header:         res.Header,
 28536  			HTTPStatusCode: res.StatusCode,
 28537  		},
 28538  	}
 28539  	target := &ret
 28540  	if err := gensupport.DecodeResponse(target, res); err != nil {
 28541  		return nil, err
 28542  	}
 28543  	return ret, nil
 28544  }
 28545  
 28546  type ProjectsLocationsMuteConfigsCreateCall struct {
 28547  	s                                     *Service
 28548  	parent                                string
 28549  	googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig
 28550  	urlParams_                            gensupport.URLParams
 28551  	ctx_                                  context.Context
 28552  	header_                               http.Header
 28553  }
 28554  
 28555  // Create: Creates a mute config.
 28556  //
 28557  //   - parent: Resource name of the new mute configs's parent. Its format is
 28558  //     "organizations/[organization_id]", "folders/[folder_id]", or
 28559  //     "projects/[project_id]".
 28560  func (r *ProjectsLocationsMuteConfigsService) Create(parent string, googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig) *ProjectsLocationsMuteConfigsCreateCall {
 28561  	c := &ProjectsLocationsMuteConfigsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 28562  	c.parent = parent
 28563  	c.googlecloudsecuritycenterv1muteconfig = googlecloudsecuritycenterv1muteconfig
 28564  	return c
 28565  }
 28566  
 28567  // MuteConfigId sets the optional parameter "muteConfigId": Required. Unique
 28568  // identifier provided by the client within the parent scope. It must consist
 28569  // of only lowercase letters, numbers, and hyphens, must start with a letter,
 28570  // must end with either a letter or a number, and must be 63 characters or
 28571  // less.
 28572  func (c *ProjectsLocationsMuteConfigsCreateCall) MuteConfigId(muteConfigId string) *ProjectsLocationsMuteConfigsCreateCall {
 28573  	c.urlParams_.Set("muteConfigId", muteConfigId)
 28574  	return c
 28575  }
 28576  
 28577  // Fields allows partial responses to be retrieved. See
 28578  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 28579  // details.
 28580  func (c *ProjectsLocationsMuteConfigsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsMuteConfigsCreateCall {
 28581  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 28582  	return c
 28583  }
 28584  
 28585  // Context sets the context to be used in this call's Do method.
 28586  func (c *ProjectsLocationsMuteConfigsCreateCall) Context(ctx context.Context) *ProjectsLocationsMuteConfigsCreateCall {
 28587  	c.ctx_ = ctx
 28588  	return c
 28589  }
 28590  
 28591  // Header returns a http.Header that can be modified by the caller to add
 28592  // headers to the request.
 28593  func (c *ProjectsLocationsMuteConfigsCreateCall) Header() http.Header {
 28594  	if c.header_ == nil {
 28595  		c.header_ = make(http.Header)
 28596  	}
 28597  	return c.header_
 28598  }
 28599  
 28600  func (c *ProjectsLocationsMuteConfigsCreateCall) doRequest(alt string) (*http.Response, error) {
 28601  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 28602  	var body io.Reader = nil
 28603  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1muteconfig)
 28604  	if err != nil {
 28605  		return nil, err
 28606  	}
 28607  	c.urlParams_.Set("alt", alt)
 28608  	c.urlParams_.Set("prettyPrint", "false")
 28609  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/muteConfigs")
 28610  	urls += "?" + c.urlParams_.Encode()
 28611  	req, err := http.NewRequest("POST", urls, body)
 28612  	if err != nil {
 28613  		return nil, err
 28614  	}
 28615  	req.Header = reqHeaders
 28616  	googleapi.Expand(req.URL, map[string]string{
 28617  		"parent": c.parent,
 28618  	})
 28619  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 28620  }
 28621  
 28622  // Do executes the "securitycenter.projects.locations.muteConfigs.create" call.
 28623  // Any non-2xx status code is an error. Response headers are in either
 28624  // *GoogleCloudSecuritycenterV1MuteConfig.ServerResponse.Header or (if a
 28625  // response was returned at all) in error.(*googleapi.Error).Header. Use
 28626  // googleapi.IsNotModified to check whether the returned error was because
 28627  // http.StatusNotModified was returned.
 28628  func (c *ProjectsLocationsMuteConfigsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1MuteConfig, error) {
 28629  	gensupport.SetOptions(c.urlParams_, opts...)
 28630  	res, err := c.doRequest("json")
 28631  	if res != nil && res.StatusCode == http.StatusNotModified {
 28632  		if res.Body != nil {
 28633  			res.Body.Close()
 28634  		}
 28635  		return nil, gensupport.WrapError(&googleapi.Error{
 28636  			Code:   res.StatusCode,
 28637  			Header: res.Header,
 28638  		})
 28639  	}
 28640  	if err != nil {
 28641  		return nil, err
 28642  	}
 28643  	defer googleapi.CloseBody(res)
 28644  	if err := googleapi.CheckResponse(res); err != nil {
 28645  		return nil, gensupport.WrapError(err)
 28646  	}
 28647  	ret := &GoogleCloudSecuritycenterV1MuteConfig{
 28648  		ServerResponse: googleapi.ServerResponse{
 28649  			Header:         res.Header,
 28650  			HTTPStatusCode: res.StatusCode,
 28651  		},
 28652  	}
 28653  	target := &ret
 28654  	if err := gensupport.DecodeResponse(target, res); err != nil {
 28655  		return nil, err
 28656  	}
 28657  	return ret, nil
 28658  }
 28659  
 28660  type ProjectsLocationsMuteConfigsDeleteCall struct {
 28661  	s          *Service
 28662  	name       string
 28663  	urlParams_ gensupport.URLParams
 28664  	ctx_       context.Context
 28665  	header_    http.Header
 28666  }
 28667  
 28668  // Delete: Deletes an existing mute config.
 28669  //
 28670  //   - name: Name of the mute config to delete. Its format is
 28671  //     organizations/{organization}/muteConfigs/{config_id},
 28672  //     folders/{folder}/muteConfigs/{config_id},
 28673  //     projects/{project}/muteConfigs/{config_id},
 28674  //     organizations/{organization}/locations/global/muteConfigs/{config_id},
 28675  //     folders/{folder}/locations/global/muteConfigs/{config_id}, or
 28676  //     projects/{project}/locations/global/muteConfigs/{config_id}.
 28677  func (r *ProjectsLocationsMuteConfigsService) Delete(name string) *ProjectsLocationsMuteConfigsDeleteCall {
 28678  	c := &ProjectsLocationsMuteConfigsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 28679  	c.name = name
 28680  	return c
 28681  }
 28682  
 28683  // Fields allows partial responses to be retrieved. See
 28684  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 28685  // details.
 28686  func (c *ProjectsLocationsMuteConfigsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsMuteConfigsDeleteCall {
 28687  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 28688  	return c
 28689  }
 28690  
 28691  // Context sets the context to be used in this call's Do method.
 28692  func (c *ProjectsLocationsMuteConfigsDeleteCall) Context(ctx context.Context) *ProjectsLocationsMuteConfigsDeleteCall {
 28693  	c.ctx_ = ctx
 28694  	return c
 28695  }
 28696  
 28697  // Header returns a http.Header that can be modified by the caller to add
 28698  // headers to the request.
 28699  func (c *ProjectsLocationsMuteConfigsDeleteCall) Header() http.Header {
 28700  	if c.header_ == nil {
 28701  		c.header_ = make(http.Header)
 28702  	}
 28703  	return c.header_
 28704  }
 28705  
 28706  func (c *ProjectsLocationsMuteConfigsDeleteCall) doRequest(alt string) (*http.Response, error) {
 28707  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 28708  	var body io.Reader = nil
 28709  	c.urlParams_.Set("alt", alt)
 28710  	c.urlParams_.Set("prettyPrint", "false")
 28711  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 28712  	urls += "?" + c.urlParams_.Encode()
 28713  	req, err := http.NewRequest("DELETE", urls, body)
 28714  	if err != nil {
 28715  		return nil, err
 28716  	}
 28717  	req.Header = reqHeaders
 28718  	googleapi.Expand(req.URL, map[string]string{
 28719  		"name": c.name,
 28720  	})
 28721  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 28722  }
 28723  
 28724  // Do executes the "securitycenter.projects.locations.muteConfigs.delete" call.
 28725  // Any non-2xx status code is an error. Response headers are in either
 28726  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 28727  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 28728  // whether the returned error was because http.StatusNotModified was returned.
 28729  func (c *ProjectsLocationsMuteConfigsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 28730  	gensupport.SetOptions(c.urlParams_, opts...)
 28731  	res, err := c.doRequest("json")
 28732  	if res != nil && res.StatusCode == http.StatusNotModified {
 28733  		if res.Body != nil {
 28734  			res.Body.Close()
 28735  		}
 28736  		return nil, gensupport.WrapError(&googleapi.Error{
 28737  			Code:   res.StatusCode,
 28738  			Header: res.Header,
 28739  		})
 28740  	}
 28741  	if err != nil {
 28742  		return nil, err
 28743  	}
 28744  	defer googleapi.CloseBody(res)
 28745  	if err := googleapi.CheckResponse(res); err != nil {
 28746  		return nil, gensupport.WrapError(err)
 28747  	}
 28748  	ret := &Empty{
 28749  		ServerResponse: googleapi.ServerResponse{
 28750  			Header:         res.Header,
 28751  			HTTPStatusCode: res.StatusCode,
 28752  		},
 28753  	}
 28754  	target := &ret
 28755  	if err := gensupport.DecodeResponse(target, res); err != nil {
 28756  		return nil, err
 28757  	}
 28758  	return ret, nil
 28759  }
 28760  
 28761  type ProjectsLocationsMuteConfigsGetCall struct {
 28762  	s            *Service
 28763  	name         string
 28764  	urlParams_   gensupport.URLParams
 28765  	ifNoneMatch_ string
 28766  	ctx_         context.Context
 28767  	header_      http.Header
 28768  }
 28769  
 28770  // Get: Gets a mute config.
 28771  //
 28772  //   - name: Name of the mute config to retrieve. Its format is
 28773  //     organizations/{organization}/muteConfigs/{config_id},
 28774  //     folders/{folder}/muteConfigs/{config_id},
 28775  //     projects/{project}/muteConfigs/{config_id},
 28776  //     organizations/{organization}/locations/global/muteConfigs/{config_id},
 28777  //     folders/{folder}/locations/global/muteConfigs/{config_id}, or
 28778  //     projects/{project}/locations/global/muteConfigs/{config_id}.
 28779  func (r *ProjectsLocationsMuteConfigsService) Get(name string) *ProjectsLocationsMuteConfigsGetCall {
 28780  	c := &ProjectsLocationsMuteConfigsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 28781  	c.name = name
 28782  	return c
 28783  }
 28784  
 28785  // Fields allows partial responses to be retrieved. See
 28786  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 28787  // details.
 28788  func (c *ProjectsLocationsMuteConfigsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsMuteConfigsGetCall {
 28789  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 28790  	return c
 28791  }
 28792  
 28793  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 28794  // object's ETag matches the given value. This is useful for getting updates
 28795  // only after the object has changed since the last request.
 28796  func (c *ProjectsLocationsMuteConfigsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsMuteConfigsGetCall {
 28797  	c.ifNoneMatch_ = entityTag
 28798  	return c
 28799  }
 28800  
 28801  // Context sets the context to be used in this call's Do method.
 28802  func (c *ProjectsLocationsMuteConfigsGetCall) Context(ctx context.Context) *ProjectsLocationsMuteConfigsGetCall {
 28803  	c.ctx_ = ctx
 28804  	return c
 28805  }
 28806  
 28807  // Header returns a http.Header that can be modified by the caller to add
 28808  // headers to the request.
 28809  func (c *ProjectsLocationsMuteConfigsGetCall) Header() http.Header {
 28810  	if c.header_ == nil {
 28811  		c.header_ = make(http.Header)
 28812  	}
 28813  	return c.header_
 28814  }
 28815  
 28816  func (c *ProjectsLocationsMuteConfigsGetCall) doRequest(alt string) (*http.Response, error) {
 28817  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 28818  	if c.ifNoneMatch_ != "" {
 28819  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 28820  	}
 28821  	var body io.Reader = nil
 28822  	c.urlParams_.Set("alt", alt)
 28823  	c.urlParams_.Set("prettyPrint", "false")
 28824  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 28825  	urls += "?" + c.urlParams_.Encode()
 28826  	req, err := http.NewRequest("GET", urls, body)
 28827  	if err != nil {
 28828  		return nil, err
 28829  	}
 28830  	req.Header = reqHeaders
 28831  	googleapi.Expand(req.URL, map[string]string{
 28832  		"name": c.name,
 28833  	})
 28834  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 28835  }
 28836  
 28837  // Do executes the "securitycenter.projects.locations.muteConfigs.get" call.
 28838  // Any non-2xx status code is an error. Response headers are in either
 28839  // *GoogleCloudSecuritycenterV1MuteConfig.ServerResponse.Header or (if a
 28840  // response was returned at all) in error.(*googleapi.Error).Header. Use
 28841  // googleapi.IsNotModified to check whether the returned error was because
 28842  // http.StatusNotModified was returned.
 28843  func (c *ProjectsLocationsMuteConfigsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1MuteConfig, error) {
 28844  	gensupport.SetOptions(c.urlParams_, opts...)
 28845  	res, err := c.doRequest("json")
 28846  	if res != nil && res.StatusCode == http.StatusNotModified {
 28847  		if res.Body != nil {
 28848  			res.Body.Close()
 28849  		}
 28850  		return nil, gensupport.WrapError(&googleapi.Error{
 28851  			Code:   res.StatusCode,
 28852  			Header: res.Header,
 28853  		})
 28854  	}
 28855  	if err != nil {
 28856  		return nil, err
 28857  	}
 28858  	defer googleapi.CloseBody(res)
 28859  	if err := googleapi.CheckResponse(res); err != nil {
 28860  		return nil, gensupport.WrapError(err)
 28861  	}
 28862  	ret := &GoogleCloudSecuritycenterV1MuteConfig{
 28863  		ServerResponse: googleapi.ServerResponse{
 28864  			Header:         res.Header,
 28865  			HTTPStatusCode: res.StatusCode,
 28866  		},
 28867  	}
 28868  	target := &ret
 28869  	if err := gensupport.DecodeResponse(target, res); err != nil {
 28870  		return nil, err
 28871  	}
 28872  	return ret, nil
 28873  }
 28874  
 28875  type ProjectsLocationsMuteConfigsListCall struct {
 28876  	s            *Service
 28877  	parent       string
 28878  	urlParams_   gensupport.URLParams
 28879  	ifNoneMatch_ string
 28880  	ctx_         context.Context
 28881  	header_      http.Header
 28882  }
 28883  
 28884  // List: Lists mute configs.
 28885  //
 28886  //   - parent: The parent, which owns the collection of mute configs. Its format
 28887  //     is "organizations/[organization_id]", "folders/[folder_id]",
 28888  //     "projects/[project_id]".
 28889  func (r *ProjectsLocationsMuteConfigsService) List(parent string) *ProjectsLocationsMuteConfigsListCall {
 28890  	c := &ProjectsLocationsMuteConfigsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 28891  	c.parent = parent
 28892  	return c
 28893  }
 28894  
 28895  // PageSize sets the optional parameter "pageSize": The maximum number of
 28896  // configs to return. The service may return fewer than this value. If
 28897  // unspecified, at most 10 configs will be returned. The maximum value is 1000;
 28898  // values above 1000 will be coerced to 1000.
 28899  func (c *ProjectsLocationsMuteConfigsListCall) PageSize(pageSize int64) *ProjectsLocationsMuteConfigsListCall {
 28900  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 28901  	return c
 28902  }
 28903  
 28904  // PageToken sets the optional parameter "pageToken": A page token, received
 28905  // from a previous `ListMuteConfigs` call. Provide this to retrieve the
 28906  // subsequent page. When paginating, all other parameters provided to
 28907  // `ListMuteConfigs` must match the call that provided the page token.
 28908  func (c *ProjectsLocationsMuteConfigsListCall) PageToken(pageToken string) *ProjectsLocationsMuteConfigsListCall {
 28909  	c.urlParams_.Set("pageToken", pageToken)
 28910  	return c
 28911  }
 28912  
 28913  // Fields allows partial responses to be retrieved. See
 28914  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 28915  // details.
 28916  func (c *ProjectsLocationsMuteConfigsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsMuteConfigsListCall {
 28917  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 28918  	return c
 28919  }
 28920  
 28921  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 28922  // object's ETag matches the given value. This is useful for getting updates
 28923  // only after the object has changed since the last request.
 28924  func (c *ProjectsLocationsMuteConfigsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsMuteConfigsListCall {
 28925  	c.ifNoneMatch_ = entityTag
 28926  	return c
 28927  }
 28928  
 28929  // Context sets the context to be used in this call's Do method.
 28930  func (c *ProjectsLocationsMuteConfigsListCall) Context(ctx context.Context) *ProjectsLocationsMuteConfigsListCall {
 28931  	c.ctx_ = ctx
 28932  	return c
 28933  }
 28934  
 28935  // Header returns a http.Header that can be modified by the caller to add
 28936  // headers to the request.
 28937  func (c *ProjectsLocationsMuteConfigsListCall) Header() http.Header {
 28938  	if c.header_ == nil {
 28939  		c.header_ = make(http.Header)
 28940  	}
 28941  	return c.header_
 28942  }
 28943  
 28944  func (c *ProjectsLocationsMuteConfigsListCall) doRequest(alt string) (*http.Response, error) {
 28945  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 28946  	if c.ifNoneMatch_ != "" {
 28947  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 28948  	}
 28949  	var body io.Reader = nil
 28950  	c.urlParams_.Set("alt", alt)
 28951  	c.urlParams_.Set("prettyPrint", "false")
 28952  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}")
 28953  	urls += "?" + c.urlParams_.Encode()
 28954  	req, err := http.NewRequest("GET", urls, body)
 28955  	if err != nil {
 28956  		return nil, err
 28957  	}
 28958  	req.Header = reqHeaders
 28959  	googleapi.Expand(req.URL, map[string]string{
 28960  		"parent": c.parent,
 28961  	})
 28962  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 28963  }
 28964  
 28965  // Do executes the "securitycenter.projects.locations.muteConfigs.list" call.
 28966  // Any non-2xx status code is an error. Response headers are in either
 28967  // *ListMuteConfigsResponse.ServerResponse.Header or (if a response was
 28968  // returned at all) in error.(*googleapi.Error).Header. Use
 28969  // googleapi.IsNotModified to check whether the returned error was because
 28970  // http.StatusNotModified was returned.
 28971  func (c *ProjectsLocationsMuteConfigsListCall) Do(opts ...googleapi.CallOption) (*ListMuteConfigsResponse, error) {
 28972  	gensupport.SetOptions(c.urlParams_, opts...)
 28973  	res, err := c.doRequest("json")
 28974  	if res != nil && res.StatusCode == http.StatusNotModified {
 28975  		if res.Body != nil {
 28976  			res.Body.Close()
 28977  		}
 28978  		return nil, gensupport.WrapError(&googleapi.Error{
 28979  			Code:   res.StatusCode,
 28980  			Header: res.Header,
 28981  		})
 28982  	}
 28983  	if err != nil {
 28984  		return nil, err
 28985  	}
 28986  	defer googleapi.CloseBody(res)
 28987  	if err := googleapi.CheckResponse(res); err != nil {
 28988  		return nil, gensupport.WrapError(err)
 28989  	}
 28990  	ret := &ListMuteConfigsResponse{
 28991  		ServerResponse: googleapi.ServerResponse{
 28992  			Header:         res.Header,
 28993  			HTTPStatusCode: res.StatusCode,
 28994  		},
 28995  	}
 28996  	target := &ret
 28997  	if err := gensupport.DecodeResponse(target, res); err != nil {
 28998  		return nil, err
 28999  	}
 29000  	return ret, nil
 29001  }
 29002  
 29003  // Pages invokes f for each page of results.
 29004  // A non-nil error returned from f will halt the iteration.
 29005  // The provided context supersedes any context provided to the Context method.
 29006  func (c *ProjectsLocationsMuteConfigsListCall) Pages(ctx context.Context, f func(*ListMuteConfigsResponse) error) error {
 29007  	c.ctx_ = ctx
 29008  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 29009  	for {
 29010  		x, err := c.Do()
 29011  		if err != nil {
 29012  			return err
 29013  		}
 29014  		if err := f(x); err != nil {
 29015  			return err
 29016  		}
 29017  		if x.NextPageToken == "" {
 29018  			return nil
 29019  		}
 29020  		c.PageToken(x.NextPageToken)
 29021  	}
 29022  }
 29023  
 29024  type ProjectsLocationsMuteConfigsPatchCall struct {
 29025  	s                                     *Service
 29026  	name                                  string
 29027  	googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig
 29028  	urlParams_                            gensupport.URLParams
 29029  	ctx_                                  context.Context
 29030  	header_                               http.Header
 29031  }
 29032  
 29033  // Patch: Updates a mute config.
 29034  //
 29035  //   - name: This field will be ignored if provided on config creation. Format
 29036  //     "organizations/{organization}/muteConfigs/{mute_config}"
 29037  //     "folders/{folder}/muteConfigs/{mute_config}"
 29038  //     "projects/{project}/muteConfigs/{mute_config}"
 29039  //     "organizations/{organization}/locations/global/muteConfigs/{mute_config}"
 29040  //     "folders/{folder}/locations/global/muteConfigs/{mute_config}"
 29041  //     "projects/{project}/locations/global/muteConfigs/{mute_config}".
 29042  func (r *ProjectsLocationsMuteConfigsService) Patch(name string, googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig) *ProjectsLocationsMuteConfigsPatchCall {
 29043  	c := &ProjectsLocationsMuteConfigsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 29044  	c.name = name
 29045  	c.googlecloudsecuritycenterv1muteconfig = googlecloudsecuritycenterv1muteconfig
 29046  	return c
 29047  }
 29048  
 29049  // UpdateMask sets the optional parameter "updateMask": The list of fields to
 29050  // be updated. If empty all mutable fields will be updated.
 29051  func (c *ProjectsLocationsMuteConfigsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsMuteConfigsPatchCall {
 29052  	c.urlParams_.Set("updateMask", updateMask)
 29053  	return c
 29054  }
 29055  
 29056  // Fields allows partial responses to be retrieved. See
 29057  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 29058  // details.
 29059  func (c *ProjectsLocationsMuteConfigsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsMuteConfigsPatchCall {
 29060  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 29061  	return c
 29062  }
 29063  
 29064  // Context sets the context to be used in this call's Do method.
 29065  func (c *ProjectsLocationsMuteConfigsPatchCall) Context(ctx context.Context) *ProjectsLocationsMuteConfigsPatchCall {
 29066  	c.ctx_ = ctx
 29067  	return c
 29068  }
 29069  
 29070  // Header returns a http.Header that can be modified by the caller to add
 29071  // headers to the request.
 29072  func (c *ProjectsLocationsMuteConfigsPatchCall) Header() http.Header {
 29073  	if c.header_ == nil {
 29074  		c.header_ = make(http.Header)
 29075  	}
 29076  	return c.header_
 29077  }
 29078  
 29079  func (c *ProjectsLocationsMuteConfigsPatchCall) doRequest(alt string) (*http.Response, error) {
 29080  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 29081  	var body io.Reader = nil
 29082  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1muteconfig)
 29083  	if err != nil {
 29084  		return nil, err
 29085  	}
 29086  	c.urlParams_.Set("alt", alt)
 29087  	c.urlParams_.Set("prettyPrint", "false")
 29088  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 29089  	urls += "?" + c.urlParams_.Encode()
 29090  	req, err := http.NewRequest("PATCH", urls, body)
 29091  	if err != nil {
 29092  		return nil, err
 29093  	}
 29094  	req.Header = reqHeaders
 29095  	googleapi.Expand(req.URL, map[string]string{
 29096  		"name": c.name,
 29097  	})
 29098  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 29099  }
 29100  
 29101  // Do executes the "securitycenter.projects.locations.muteConfigs.patch" call.
 29102  // Any non-2xx status code is an error. Response headers are in either
 29103  // *GoogleCloudSecuritycenterV1MuteConfig.ServerResponse.Header or (if a
 29104  // response was returned at all) in error.(*googleapi.Error).Header. Use
 29105  // googleapi.IsNotModified to check whether the returned error was because
 29106  // http.StatusNotModified was returned.
 29107  func (c *ProjectsLocationsMuteConfigsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1MuteConfig, error) {
 29108  	gensupport.SetOptions(c.urlParams_, opts...)
 29109  	res, err := c.doRequest("json")
 29110  	if res != nil && res.StatusCode == http.StatusNotModified {
 29111  		if res.Body != nil {
 29112  			res.Body.Close()
 29113  		}
 29114  		return nil, gensupport.WrapError(&googleapi.Error{
 29115  			Code:   res.StatusCode,
 29116  			Header: res.Header,
 29117  		})
 29118  	}
 29119  	if err != nil {
 29120  		return nil, err
 29121  	}
 29122  	defer googleapi.CloseBody(res)
 29123  	if err := googleapi.CheckResponse(res); err != nil {
 29124  		return nil, gensupport.WrapError(err)
 29125  	}
 29126  	ret := &GoogleCloudSecuritycenterV1MuteConfig{
 29127  		ServerResponse: googleapi.ServerResponse{
 29128  			Header:         res.Header,
 29129  			HTTPStatusCode: res.StatusCode,
 29130  		},
 29131  	}
 29132  	target := &ret
 29133  	if err := gensupport.DecodeResponse(target, res); err != nil {
 29134  		return nil, err
 29135  	}
 29136  	return ret, nil
 29137  }
 29138  
 29139  type ProjectsMuteConfigsCreateCall struct {
 29140  	s                                     *Service
 29141  	parent                                string
 29142  	googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig
 29143  	urlParams_                            gensupport.URLParams
 29144  	ctx_                                  context.Context
 29145  	header_                               http.Header
 29146  }
 29147  
 29148  // Create: Creates a mute config.
 29149  //
 29150  //   - parent: Resource name of the new mute configs's parent. Its format is
 29151  //     "organizations/[organization_id]", "folders/[folder_id]", or
 29152  //     "projects/[project_id]".
 29153  func (r *ProjectsMuteConfigsService) Create(parent string, googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig) *ProjectsMuteConfigsCreateCall {
 29154  	c := &ProjectsMuteConfigsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 29155  	c.parent = parent
 29156  	c.googlecloudsecuritycenterv1muteconfig = googlecloudsecuritycenterv1muteconfig
 29157  	return c
 29158  }
 29159  
 29160  // MuteConfigId sets the optional parameter "muteConfigId": Required. Unique
 29161  // identifier provided by the client within the parent scope. It must consist
 29162  // of only lowercase letters, numbers, and hyphens, must start with a letter,
 29163  // must end with either a letter or a number, and must be 63 characters or
 29164  // less.
 29165  func (c *ProjectsMuteConfigsCreateCall) MuteConfigId(muteConfigId string) *ProjectsMuteConfigsCreateCall {
 29166  	c.urlParams_.Set("muteConfigId", muteConfigId)
 29167  	return c
 29168  }
 29169  
 29170  // Fields allows partial responses to be retrieved. See
 29171  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 29172  // details.
 29173  func (c *ProjectsMuteConfigsCreateCall) Fields(s ...googleapi.Field) *ProjectsMuteConfigsCreateCall {
 29174  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 29175  	return c
 29176  }
 29177  
 29178  // Context sets the context to be used in this call's Do method.
 29179  func (c *ProjectsMuteConfigsCreateCall) Context(ctx context.Context) *ProjectsMuteConfigsCreateCall {
 29180  	c.ctx_ = ctx
 29181  	return c
 29182  }
 29183  
 29184  // Header returns a http.Header that can be modified by the caller to add
 29185  // headers to the request.
 29186  func (c *ProjectsMuteConfigsCreateCall) Header() http.Header {
 29187  	if c.header_ == nil {
 29188  		c.header_ = make(http.Header)
 29189  	}
 29190  	return c.header_
 29191  }
 29192  
 29193  func (c *ProjectsMuteConfigsCreateCall) doRequest(alt string) (*http.Response, error) {
 29194  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 29195  	var body io.Reader = nil
 29196  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1muteconfig)
 29197  	if err != nil {
 29198  		return nil, err
 29199  	}
 29200  	c.urlParams_.Set("alt", alt)
 29201  	c.urlParams_.Set("prettyPrint", "false")
 29202  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/muteConfigs")
 29203  	urls += "?" + c.urlParams_.Encode()
 29204  	req, err := http.NewRequest("POST", urls, body)
 29205  	if err != nil {
 29206  		return nil, err
 29207  	}
 29208  	req.Header = reqHeaders
 29209  	googleapi.Expand(req.URL, map[string]string{
 29210  		"parent": c.parent,
 29211  	})
 29212  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 29213  }
 29214  
 29215  // Do executes the "securitycenter.projects.muteConfigs.create" call.
 29216  // Any non-2xx status code is an error. Response headers are in either
 29217  // *GoogleCloudSecuritycenterV1MuteConfig.ServerResponse.Header or (if a
 29218  // response was returned at all) in error.(*googleapi.Error).Header. Use
 29219  // googleapi.IsNotModified to check whether the returned error was because
 29220  // http.StatusNotModified was returned.
 29221  func (c *ProjectsMuteConfigsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1MuteConfig, error) {
 29222  	gensupport.SetOptions(c.urlParams_, opts...)
 29223  	res, err := c.doRequest("json")
 29224  	if res != nil && res.StatusCode == http.StatusNotModified {
 29225  		if res.Body != nil {
 29226  			res.Body.Close()
 29227  		}
 29228  		return nil, gensupport.WrapError(&googleapi.Error{
 29229  			Code:   res.StatusCode,
 29230  			Header: res.Header,
 29231  		})
 29232  	}
 29233  	if err != nil {
 29234  		return nil, err
 29235  	}
 29236  	defer googleapi.CloseBody(res)
 29237  	if err := googleapi.CheckResponse(res); err != nil {
 29238  		return nil, gensupport.WrapError(err)
 29239  	}
 29240  	ret := &GoogleCloudSecuritycenterV1MuteConfig{
 29241  		ServerResponse: googleapi.ServerResponse{
 29242  			Header:         res.Header,
 29243  			HTTPStatusCode: res.StatusCode,
 29244  		},
 29245  	}
 29246  	target := &ret
 29247  	if err := gensupport.DecodeResponse(target, res); err != nil {
 29248  		return nil, err
 29249  	}
 29250  	return ret, nil
 29251  }
 29252  
 29253  type ProjectsMuteConfigsDeleteCall struct {
 29254  	s          *Service
 29255  	name       string
 29256  	urlParams_ gensupport.URLParams
 29257  	ctx_       context.Context
 29258  	header_    http.Header
 29259  }
 29260  
 29261  // Delete: Deletes an existing mute config.
 29262  //
 29263  //   - name: Name of the mute config to delete. Its format is
 29264  //     organizations/{organization}/muteConfigs/{config_id},
 29265  //     folders/{folder}/muteConfigs/{config_id},
 29266  //     projects/{project}/muteConfigs/{config_id},
 29267  //     organizations/{organization}/locations/global/muteConfigs/{config_id},
 29268  //     folders/{folder}/locations/global/muteConfigs/{config_id}, or
 29269  //     projects/{project}/locations/global/muteConfigs/{config_id}.
 29270  func (r *ProjectsMuteConfigsService) Delete(name string) *ProjectsMuteConfigsDeleteCall {
 29271  	c := &ProjectsMuteConfigsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 29272  	c.name = name
 29273  	return c
 29274  }
 29275  
 29276  // Fields allows partial responses to be retrieved. See
 29277  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 29278  // details.
 29279  func (c *ProjectsMuteConfigsDeleteCall) Fields(s ...googleapi.Field) *ProjectsMuteConfigsDeleteCall {
 29280  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 29281  	return c
 29282  }
 29283  
 29284  // Context sets the context to be used in this call's Do method.
 29285  func (c *ProjectsMuteConfigsDeleteCall) Context(ctx context.Context) *ProjectsMuteConfigsDeleteCall {
 29286  	c.ctx_ = ctx
 29287  	return c
 29288  }
 29289  
 29290  // Header returns a http.Header that can be modified by the caller to add
 29291  // headers to the request.
 29292  func (c *ProjectsMuteConfigsDeleteCall) Header() http.Header {
 29293  	if c.header_ == nil {
 29294  		c.header_ = make(http.Header)
 29295  	}
 29296  	return c.header_
 29297  }
 29298  
 29299  func (c *ProjectsMuteConfigsDeleteCall) doRequest(alt string) (*http.Response, error) {
 29300  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 29301  	var body io.Reader = nil
 29302  	c.urlParams_.Set("alt", alt)
 29303  	c.urlParams_.Set("prettyPrint", "false")
 29304  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 29305  	urls += "?" + c.urlParams_.Encode()
 29306  	req, err := http.NewRequest("DELETE", urls, body)
 29307  	if err != nil {
 29308  		return nil, err
 29309  	}
 29310  	req.Header = reqHeaders
 29311  	googleapi.Expand(req.URL, map[string]string{
 29312  		"name": c.name,
 29313  	})
 29314  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 29315  }
 29316  
 29317  // Do executes the "securitycenter.projects.muteConfigs.delete" call.
 29318  // Any non-2xx status code is an error. Response headers are in either
 29319  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 29320  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 29321  // whether the returned error was because http.StatusNotModified was returned.
 29322  func (c *ProjectsMuteConfigsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 29323  	gensupport.SetOptions(c.urlParams_, opts...)
 29324  	res, err := c.doRequest("json")
 29325  	if res != nil && res.StatusCode == http.StatusNotModified {
 29326  		if res.Body != nil {
 29327  			res.Body.Close()
 29328  		}
 29329  		return nil, gensupport.WrapError(&googleapi.Error{
 29330  			Code:   res.StatusCode,
 29331  			Header: res.Header,
 29332  		})
 29333  	}
 29334  	if err != nil {
 29335  		return nil, err
 29336  	}
 29337  	defer googleapi.CloseBody(res)
 29338  	if err := googleapi.CheckResponse(res); err != nil {
 29339  		return nil, gensupport.WrapError(err)
 29340  	}
 29341  	ret := &Empty{
 29342  		ServerResponse: googleapi.ServerResponse{
 29343  			Header:         res.Header,
 29344  			HTTPStatusCode: res.StatusCode,
 29345  		},
 29346  	}
 29347  	target := &ret
 29348  	if err := gensupport.DecodeResponse(target, res); err != nil {
 29349  		return nil, err
 29350  	}
 29351  	return ret, nil
 29352  }
 29353  
 29354  type ProjectsMuteConfigsGetCall struct {
 29355  	s            *Service
 29356  	name         string
 29357  	urlParams_   gensupport.URLParams
 29358  	ifNoneMatch_ string
 29359  	ctx_         context.Context
 29360  	header_      http.Header
 29361  }
 29362  
 29363  // Get: Gets a mute config.
 29364  //
 29365  //   - name: Name of the mute config to retrieve. Its format is
 29366  //     organizations/{organization}/muteConfigs/{config_id},
 29367  //     folders/{folder}/muteConfigs/{config_id},
 29368  //     projects/{project}/muteConfigs/{config_id},
 29369  //     organizations/{organization}/locations/global/muteConfigs/{config_id},
 29370  //     folders/{folder}/locations/global/muteConfigs/{config_id}, or
 29371  //     projects/{project}/locations/global/muteConfigs/{config_id}.
 29372  func (r *ProjectsMuteConfigsService) Get(name string) *ProjectsMuteConfigsGetCall {
 29373  	c := &ProjectsMuteConfigsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 29374  	c.name = name
 29375  	return c
 29376  }
 29377  
 29378  // Fields allows partial responses to be retrieved. See
 29379  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 29380  // details.
 29381  func (c *ProjectsMuteConfigsGetCall) Fields(s ...googleapi.Field) *ProjectsMuteConfigsGetCall {
 29382  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 29383  	return c
 29384  }
 29385  
 29386  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 29387  // object's ETag matches the given value. This is useful for getting updates
 29388  // only after the object has changed since the last request.
 29389  func (c *ProjectsMuteConfigsGetCall) IfNoneMatch(entityTag string) *ProjectsMuteConfigsGetCall {
 29390  	c.ifNoneMatch_ = entityTag
 29391  	return c
 29392  }
 29393  
 29394  // Context sets the context to be used in this call's Do method.
 29395  func (c *ProjectsMuteConfigsGetCall) Context(ctx context.Context) *ProjectsMuteConfigsGetCall {
 29396  	c.ctx_ = ctx
 29397  	return c
 29398  }
 29399  
 29400  // Header returns a http.Header that can be modified by the caller to add
 29401  // headers to the request.
 29402  func (c *ProjectsMuteConfigsGetCall) Header() http.Header {
 29403  	if c.header_ == nil {
 29404  		c.header_ = make(http.Header)
 29405  	}
 29406  	return c.header_
 29407  }
 29408  
 29409  func (c *ProjectsMuteConfigsGetCall) doRequest(alt string) (*http.Response, error) {
 29410  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 29411  	if c.ifNoneMatch_ != "" {
 29412  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 29413  	}
 29414  	var body io.Reader = nil
 29415  	c.urlParams_.Set("alt", alt)
 29416  	c.urlParams_.Set("prettyPrint", "false")
 29417  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 29418  	urls += "?" + c.urlParams_.Encode()
 29419  	req, err := http.NewRequest("GET", urls, body)
 29420  	if err != nil {
 29421  		return nil, err
 29422  	}
 29423  	req.Header = reqHeaders
 29424  	googleapi.Expand(req.URL, map[string]string{
 29425  		"name": c.name,
 29426  	})
 29427  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 29428  }
 29429  
 29430  // Do executes the "securitycenter.projects.muteConfigs.get" call.
 29431  // Any non-2xx status code is an error. Response headers are in either
 29432  // *GoogleCloudSecuritycenterV1MuteConfig.ServerResponse.Header or (if a
 29433  // response was returned at all) in error.(*googleapi.Error).Header. Use
 29434  // googleapi.IsNotModified to check whether the returned error was because
 29435  // http.StatusNotModified was returned.
 29436  func (c *ProjectsMuteConfigsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1MuteConfig, error) {
 29437  	gensupport.SetOptions(c.urlParams_, opts...)
 29438  	res, err := c.doRequest("json")
 29439  	if res != nil && res.StatusCode == http.StatusNotModified {
 29440  		if res.Body != nil {
 29441  			res.Body.Close()
 29442  		}
 29443  		return nil, gensupport.WrapError(&googleapi.Error{
 29444  			Code:   res.StatusCode,
 29445  			Header: res.Header,
 29446  		})
 29447  	}
 29448  	if err != nil {
 29449  		return nil, err
 29450  	}
 29451  	defer googleapi.CloseBody(res)
 29452  	if err := googleapi.CheckResponse(res); err != nil {
 29453  		return nil, gensupport.WrapError(err)
 29454  	}
 29455  	ret := &GoogleCloudSecuritycenterV1MuteConfig{
 29456  		ServerResponse: googleapi.ServerResponse{
 29457  			Header:         res.Header,
 29458  			HTTPStatusCode: res.StatusCode,
 29459  		},
 29460  	}
 29461  	target := &ret
 29462  	if err := gensupport.DecodeResponse(target, res); err != nil {
 29463  		return nil, err
 29464  	}
 29465  	return ret, nil
 29466  }
 29467  
 29468  type ProjectsMuteConfigsListCall struct {
 29469  	s            *Service
 29470  	parent       string
 29471  	urlParams_   gensupport.URLParams
 29472  	ifNoneMatch_ string
 29473  	ctx_         context.Context
 29474  	header_      http.Header
 29475  }
 29476  
 29477  // List: Lists mute configs.
 29478  //
 29479  //   - parent: The parent, which owns the collection of mute configs. Its format
 29480  //     is "organizations/[organization_id]", "folders/[folder_id]",
 29481  //     "projects/[project_id]".
 29482  func (r *ProjectsMuteConfigsService) List(parent string) *ProjectsMuteConfigsListCall {
 29483  	c := &ProjectsMuteConfigsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 29484  	c.parent = parent
 29485  	return c
 29486  }
 29487  
 29488  // PageSize sets the optional parameter "pageSize": The maximum number of
 29489  // configs to return. The service may return fewer than this value. If
 29490  // unspecified, at most 10 configs will be returned. The maximum value is 1000;
 29491  // values above 1000 will be coerced to 1000.
 29492  func (c *ProjectsMuteConfigsListCall) PageSize(pageSize int64) *ProjectsMuteConfigsListCall {
 29493  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 29494  	return c
 29495  }
 29496  
 29497  // PageToken sets the optional parameter "pageToken": A page token, received
 29498  // from a previous `ListMuteConfigs` call. Provide this to retrieve the
 29499  // subsequent page. When paginating, all other parameters provided to
 29500  // `ListMuteConfigs` must match the call that provided the page token.
 29501  func (c *ProjectsMuteConfigsListCall) PageToken(pageToken string) *ProjectsMuteConfigsListCall {
 29502  	c.urlParams_.Set("pageToken", pageToken)
 29503  	return c
 29504  }
 29505  
 29506  // Fields allows partial responses to be retrieved. See
 29507  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 29508  // details.
 29509  func (c *ProjectsMuteConfigsListCall) Fields(s ...googleapi.Field) *ProjectsMuteConfigsListCall {
 29510  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 29511  	return c
 29512  }
 29513  
 29514  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 29515  // object's ETag matches the given value. This is useful for getting updates
 29516  // only after the object has changed since the last request.
 29517  func (c *ProjectsMuteConfigsListCall) IfNoneMatch(entityTag string) *ProjectsMuteConfigsListCall {
 29518  	c.ifNoneMatch_ = entityTag
 29519  	return c
 29520  }
 29521  
 29522  // Context sets the context to be used in this call's Do method.
 29523  func (c *ProjectsMuteConfigsListCall) Context(ctx context.Context) *ProjectsMuteConfigsListCall {
 29524  	c.ctx_ = ctx
 29525  	return c
 29526  }
 29527  
 29528  // Header returns a http.Header that can be modified by the caller to add
 29529  // headers to the request.
 29530  func (c *ProjectsMuteConfigsListCall) Header() http.Header {
 29531  	if c.header_ == nil {
 29532  		c.header_ = make(http.Header)
 29533  	}
 29534  	return c.header_
 29535  }
 29536  
 29537  func (c *ProjectsMuteConfigsListCall) doRequest(alt string) (*http.Response, error) {
 29538  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 29539  	if c.ifNoneMatch_ != "" {
 29540  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 29541  	}
 29542  	var body io.Reader = nil
 29543  	c.urlParams_.Set("alt", alt)
 29544  	c.urlParams_.Set("prettyPrint", "false")
 29545  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/muteConfigs")
 29546  	urls += "?" + c.urlParams_.Encode()
 29547  	req, err := http.NewRequest("GET", urls, body)
 29548  	if err != nil {
 29549  		return nil, err
 29550  	}
 29551  	req.Header = reqHeaders
 29552  	googleapi.Expand(req.URL, map[string]string{
 29553  		"parent": c.parent,
 29554  	})
 29555  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 29556  }
 29557  
 29558  // Do executes the "securitycenter.projects.muteConfigs.list" call.
 29559  // Any non-2xx status code is an error. Response headers are in either
 29560  // *ListMuteConfigsResponse.ServerResponse.Header or (if a response was
 29561  // returned at all) in error.(*googleapi.Error).Header. Use
 29562  // googleapi.IsNotModified to check whether the returned error was because
 29563  // http.StatusNotModified was returned.
 29564  func (c *ProjectsMuteConfigsListCall) Do(opts ...googleapi.CallOption) (*ListMuteConfigsResponse, error) {
 29565  	gensupport.SetOptions(c.urlParams_, opts...)
 29566  	res, err := c.doRequest("json")
 29567  	if res != nil && res.StatusCode == http.StatusNotModified {
 29568  		if res.Body != nil {
 29569  			res.Body.Close()
 29570  		}
 29571  		return nil, gensupport.WrapError(&googleapi.Error{
 29572  			Code:   res.StatusCode,
 29573  			Header: res.Header,
 29574  		})
 29575  	}
 29576  	if err != nil {
 29577  		return nil, err
 29578  	}
 29579  	defer googleapi.CloseBody(res)
 29580  	if err := googleapi.CheckResponse(res); err != nil {
 29581  		return nil, gensupport.WrapError(err)
 29582  	}
 29583  	ret := &ListMuteConfigsResponse{
 29584  		ServerResponse: googleapi.ServerResponse{
 29585  			Header:         res.Header,
 29586  			HTTPStatusCode: res.StatusCode,
 29587  		},
 29588  	}
 29589  	target := &ret
 29590  	if err := gensupport.DecodeResponse(target, res); err != nil {
 29591  		return nil, err
 29592  	}
 29593  	return ret, nil
 29594  }
 29595  
 29596  // Pages invokes f for each page of results.
 29597  // A non-nil error returned from f will halt the iteration.
 29598  // The provided context supersedes any context provided to the Context method.
 29599  func (c *ProjectsMuteConfigsListCall) Pages(ctx context.Context, f func(*ListMuteConfigsResponse) error) error {
 29600  	c.ctx_ = ctx
 29601  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 29602  	for {
 29603  		x, err := c.Do()
 29604  		if err != nil {
 29605  			return err
 29606  		}
 29607  		if err := f(x); err != nil {
 29608  			return err
 29609  		}
 29610  		if x.NextPageToken == "" {
 29611  			return nil
 29612  		}
 29613  		c.PageToken(x.NextPageToken)
 29614  	}
 29615  }
 29616  
 29617  type ProjectsMuteConfigsPatchCall struct {
 29618  	s                                     *Service
 29619  	name                                  string
 29620  	googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig
 29621  	urlParams_                            gensupport.URLParams
 29622  	ctx_                                  context.Context
 29623  	header_                               http.Header
 29624  }
 29625  
 29626  // Patch: Updates a mute config.
 29627  //
 29628  //   - name: This field will be ignored if provided on config creation. Format
 29629  //     "organizations/{organization}/muteConfigs/{mute_config}"
 29630  //     "folders/{folder}/muteConfigs/{mute_config}"
 29631  //     "projects/{project}/muteConfigs/{mute_config}"
 29632  //     "organizations/{organization}/locations/global/muteConfigs/{mute_config}"
 29633  //     "folders/{folder}/locations/global/muteConfigs/{mute_config}"
 29634  //     "projects/{project}/locations/global/muteConfigs/{mute_config}".
 29635  func (r *ProjectsMuteConfigsService) Patch(name string, googlecloudsecuritycenterv1muteconfig *GoogleCloudSecuritycenterV1MuteConfig) *ProjectsMuteConfigsPatchCall {
 29636  	c := &ProjectsMuteConfigsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 29637  	c.name = name
 29638  	c.googlecloudsecuritycenterv1muteconfig = googlecloudsecuritycenterv1muteconfig
 29639  	return c
 29640  }
 29641  
 29642  // UpdateMask sets the optional parameter "updateMask": The list of fields to
 29643  // be updated. If empty all mutable fields will be updated.
 29644  func (c *ProjectsMuteConfigsPatchCall) UpdateMask(updateMask string) *ProjectsMuteConfigsPatchCall {
 29645  	c.urlParams_.Set("updateMask", updateMask)
 29646  	return c
 29647  }
 29648  
 29649  // Fields allows partial responses to be retrieved. See
 29650  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 29651  // details.
 29652  func (c *ProjectsMuteConfigsPatchCall) Fields(s ...googleapi.Field) *ProjectsMuteConfigsPatchCall {
 29653  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 29654  	return c
 29655  }
 29656  
 29657  // Context sets the context to be used in this call's Do method.
 29658  func (c *ProjectsMuteConfigsPatchCall) Context(ctx context.Context) *ProjectsMuteConfigsPatchCall {
 29659  	c.ctx_ = ctx
 29660  	return c
 29661  }
 29662  
 29663  // Header returns a http.Header that can be modified by the caller to add
 29664  // headers to the request.
 29665  func (c *ProjectsMuteConfigsPatchCall) Header() http.Header {
 29666  	if c.header_ == nil {
 29667  		c.header_ = make(http.Header)
 29668  	}
 29669  	return c.header_
 29670  }
 29671  
 29672  func (c *ProjectsMuteConfigsPatchCall) doRequest(alt string) (*http.Response, error) {
 29673  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 29674  	var body io.Reader = nil
 29675  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1muteconfig)
 29676  	if err != nil {
 29677  		return nil, err
 29678  	}
 29679  	c.urlParams_.Set("alt", alt)
 29680  	c.urlParams_.Set("prettyPrint", "false")
 29681  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 29682  	urls += "?" + c.urlParams_.Encode()
 29683  	req, err := http.NewRequest("PATCH", urls, body)
 29684  	if err != nil {
 29685  		return nil, err
 29686  	}
 29687  	req.Header = reqHeaders
 29688  	googleapi.Expand(req.URL, map[string]string{
 29689  		"name": c.name,
 29690  	})
 29691  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 29692  }
 29693  
 29694  // Do executes the "securitycenter.projects.muteConfigs.patch" call.
 29695  // Any non-2xx status code is an error. Response headers are in either
 29696  // *GoogleCloudSecuritycenterV1MuteConfig.ServerResponse.Header or (if a
 29697  // response was returned at all) in error.(*googleapi.Error).Header. Use
 29698  // googleapi.IsNotModified to check whether the returned error was because
 29699  // http.StatusNotModified was returned.
 29700  func (c *ProjectsMuteConfigsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1MuteConfig, error) {
 29701  	gensupport.SetOptions(c.urlParams_, opts...)
 29702  	res, err := c.doRequest("json")
 29703  	if res != nil && res.StatusCode == http.StatusNotModified {
 29704  		if res.Body != nil {
 29705  			res.Body.Close()
 29706  		}
 29707  		return nil, gensupport.WrapError(&googleapi.Error{
 29708  			Code:   res.StatusCode,
 29709  			Header: res.Header,
 29710  		})
 29711  	}
 29712  	if err != nil {
 29713  		return nil, err
 29714  	}
 29715  	defer googleapi.CloseBody(res)
 29716  	if err := googleapi.CheckResponse(res); err != nil {
 29717  		return nil, gensupport.WrapError(err)
 29718  	}
 29719  	ret := &GoogleCloudSecuritycenterV1MuteConfig{
 29720  		ServerResponse: googleapi.ServerResponse{
 29721  			Header:         res.Header,
 29722  			HTTPStatusCode: res.StatusCode,
 29723  		},
 29724  	}
 29725  	target := &ret
 29726  	if err := gensupport.DecodeResponse(target, res); err != nil {
 29727  		return nil, err
 29728  	}
 29729  	return ret, nil
 29730  }
 29731  
 29732  type ProjectsNotificationConfigsCreateCall struct {
 29733  	s                  *Service
 29734  	parent             string
 29735  	notificationconfig *NotificationConfig
 29736  	urlParams_         gensupport.URLParams
 29737  	ctx_               context.Context
 29738  	header_            http.Header
 29739  }
 29740  
 29741  // Create: Creates a notification config.
 29742  //
 29743  //   - parent: Resource name of the new notification config's parent. Its format
 29744  //     is "organizations/[organization_id]", "folders/[folder_id]", or
 29745  //     "projects/[project_id]".
 29746  func (r *ProjectsNotificationConfigsService) Create(parent string, notificationconfig *NotificationConfig) *ProjectsNotificationConfigsCreateCall {
 29747  	c := &ProjectsNotificationConfigsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 29748  	c.parent = parent
 29749  	c.notificationconfig = notificationconfig
 29750  	return c
 29751  }
 29752  
 29753  // ConfigId sets the optional parameter "configId": Required. Unique identifier
 29754  // provided by the client within the parent scope. It must be between 1 and 128
 29755  // characters and contain alphanumeric characters, underscores, or hyphens
 29756  // only.
 29757  func (c *ProjectsNotificationConfigsCreateCall) ConfigId(configId string) *ProjectsNotificationConfigsCreateCall {
 29758  	c.urlParams_.Set("configId", configId)
 29759  	return c
 29760  }
 29761  
 29762  // Fields allows partial responses to be retrieved. See
 29763  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 29764  // details.
 29765  func (c *ProjectsNotificationConfigsCreateCall) Fields(s ...googleapi.Field) *ProjectsNotificationConfigsCreateCall {
 29766  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 29767  	return c
 29768  }
 29769  
 29770  // Context sets the context to be used in this call's Do method.
 29771  func (c *ProjectsNotificationConfigsCreateCall) Context(ctx context.Context) *ProjectsNotificationConfigsCreateCall {
 29772  	c.ctx_ = ctx
 29773  	return c
 29774  }
 29775  
 29776  // Header returns a http.Header that can be modified by the caller to add
 29777  // headers to the request.
 29778  func (c *ProjectsNotificationConfigsCreateCall) Header() http.Header {
 29779  	if c.header_ == nil {
 29780  		c.header_ = make(http.Header)
 29781  	}
 29782  	return c.header_
 29783  }
 29784  
 29785  func (c *ProjectsNotificationConfigsCreateCall) doRequest(alt string) (*http.Response, error) {
 29786  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 29787  	var body io.Reader = nil
 29788  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.notificationconfig)
 29789  	if err != nil {
 29790  		return nil, err
 29791  	}
 29792  	c.urlParams_.Set("alt", alt)
 29793  	c.urlParams_.Set("prettyPrint", "false")
 29794  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/notificationConfigs")
 29795  	urls += "?" + c.urlParams_.Encode()
 29796  	req, err := http.NewRequest("POST", urls, body)
 29797  	if err != nil {
 29798  		return nil, err
 29799  	}
 29800  	req.Header = reqHeaders
 29801  	googleapi.Expand(req.URL, map[string]string{
 29802  		"parent": c.parent,
 29803  	})
 29804  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 29805  }
 29806  
 29807  // Do executes the "securitycenter.projects.notificationConfigs.create" call.
 29808  // Any non-2xx status code is an error. Response headers are in either
 29809  // *NotificationConfig.ServerResponse.Header or (if a response was returned at
 29810  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 29811  // check whether the returned error was because http.StatusNotModified was
 29812  // returned.
 29813  func (c *ProjectsNotificationConfigsCreateCall) Do(opts ...googleapi.CallOption) (*NotificationConfig, error) {
 29814  	gensupport.SetOptions(c.urlParams_, opts...)
 29815  	res, err := c.doRequest("json")
 29816  	if res != nil && res.StatusCode == http.StatusNotModified {
 29817  		if res.Body != nil {
 29818  			res.Body.Close()
 29819  		}
 29820  		return nil, gensupport.WrapError(&googleapi.Error{
 29821  			Code:   res.StatusCode,
 29822  			Header: res.Header,
 29823  		})
 29824  	}
 29825  	if err != nil {
 29826  		return nil, err
 29827  	}
 29828  	defer googleapi.CloseBody(res)
 29829  	if err := googleapi.CheckResponse(res); err != nil {
 29830  		return nil, gensupport.WrapError(err)
 29831  	}
 29832  	ret := &NotificationConfig{
 29833  		ServerResponse: googleapi.ServerResponse{
 29834  			Header:         res.Header,
 29835  			HTTPStatusCode: res.StatusCode,
 29836  		},
 29837  	}
 29838  	target := &ret
 29839  	if err := gensupport.DecodeResponse(target, res); err != nil {
 29840  		return nil, err
 29841  	}
 29842  	return ret, nil
 29843  }
 29844  
 29845  type ProjectsNotificationConfigsDeleteCall struct {
 29846  	s          *Service
 29847  	name       string
 29848  	urlParams_ gensupport.URLParams
 29849  	ctx_       context.Context
 29850  	header_    http.Header
 29851  }
 29852  
 29853  // Delete: Deletes a notification config.
 29854  //
 29855  //   - name: Name of the notification config to delete. Its format is
 29856  //     "organizations/[organization_id]/notificationConfigs/[config_id]",
 29857  //     "folders/[folder_id]/notificationConfigs/[config_id]", or
 29858  //     "projects/[project_id]/notificationConfigs/[config_id]".
 29859  func (r *ProjectsNotificationConfigsService) Delete(name string) *ProjectsNotificationConfigsDeleteCall {
 29860  	c := &ProjectsNotificationConfigsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 29861  	c.name = name
 29862  	return c
 29863  }
 29864  
 29865  // Fields allows partial responses to be retrieved. See
 29866  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 29867  // details.
 29868  func (c *ProjectsNotificationConfigsDeleteCall) Fields(s ...googleapi.Field) *ProjectsNotificationConfigsDeleteCall {
 29869  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 29870  	return c
 29871  }
 29872  
 29873  // Context sets the context to be used in this call's Do method.
 29874  func (c *ProjectsNotificationConfigsDeleteCall) Context(ctx context.Context) *ProjectsNotificationConfigsDeleteCall {
 29875  	c.ctx_ = ctx
 29876  	return c
 29877  }
 29878  
 29879  // Header returns a http.Header that can be modified by the caller to add
 29880  // headers to the request.
 29881  func (c *ProjectsNotificationConfigsDeleteCall) Header() http.Header {
 29882  	if c.header_ == nil {
 29883  		c.header_ = make(http.Header)
 29884  	}
 29885  	return c.header_
 29886  }
 29887  
 29888  func (c *ProjectsNotificationConfigsDeleteCall) doRequest(alt string) (*http.Response, error) {
 29889  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 29890  	var body io.Reader = nil
 29891  	c.urlParams_.Set("alt", alt)
 29892  	c.urlParams_.Set("prettyPrint", "false")
 29893  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 29894  	urls += "?" + c.urlParams_.Encode()
 29895  	req, err := http.NewRequest("DELETE", urls, body)
 29896  	if err != nil {
 29897  		return nil, err
 29898  	}
 29899  	req.Header = reqHeaders
 29900  	googleapi.Expand(req.URL, map[string]string{
 29901  		"name": c.name,
 29902  	})
 29903  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 29904  }
 29905  
 29906  // Do executes the "securitycenter.projects.notificationConfigs.delete" call.
 29907  // Any non-2xx status code is an error. Response headers are in either
 29908  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 29909  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 29910  // whether the returned error was because http.StatusNotModified was returned.
 29911  func (c *ProjectsNotificationConfigsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 29912  	gensupport.SetOptions(c.urlParams_, opts...)
 29913  	res, err := c.doRequest("json")
 29914  	if res != nil && res.StatusCode == http.StatusNotModified {
 29915  		if res.Body != nil {
 29916  			res.Body.Close()
 29917  		}
 29918  		return nil, gensupport.WrapError(&googleapi.Error{
 29919  			Code:   res.StatusCode,
 29920  			Header: res.Header,
 29921  		})
 29922  	}
 29923  	if err != nil {
 29924  		return nil, err
 29925  	}
 29926  	defer googleapi.CloseBody(res)
 29927  	if err := googleapi.CheckResponse(res); err != nil {
 29928  		return nil, gensupport.WrapError(err)
 29929  	}
 29930  	ret := &Empty{
 29931  		ServerResponse: googleapi.ServerResponse{
 29932  			Header:         res.Header,
 29933  			HTTPStatusCode: res.StatusCode,
 29934  		},
 29935  	}
 29936  	target := &ret
 29937  	if err := gensupport.DecodeResponse(target, res); err != nil {
 29938  		return nil, err
 29939  	}
 29940  	return ret, nil
 29941  }
 29942  
 29943  type ProjectsNotificationConfigsGetCall struct {
 29944  	s            *Service
 29945  	name         string
 29946  	urlParams_   gensupport.URLParams
 29947  	ifNoneMatch_ string
 29948  	ctx_         context.Context
 29949  	header_      http.Header
 29950  }
 29951  
 29952  // Get: Gets a notification config.
 29953  //
 29954  //   - name: Name of the notification config to get. Its format is
 29955  //     "organizations/[organization_id]/notificationConfigs/[config_id]",
 29956  //     "folders/[folder_id]/notificationConfigs/[config_id]", or
 29957  //     "projects/[project_id]/notificationConfigs/[config_id]".
 29958  func (r *ProjectsNotificationConfigsService) Get(name string) *ProjectsNotificationConfigsGetCall {
 29959  	c := &ProjectsNotificationConfigsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 29960  	c.name = name
 29961  	return c
 29962  }
 29963  
 29964  // Fields allows partial responses to be retrieved. See
 29965  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 29966  // details.
 29967  func (c *ProjectsNotificationConfigsGetCall) Fields(s ...googleapi.Field) *ProjectsNotificationConfigsGetCall {
 29968  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 29969  	return c
 29970  }
 29971  
 29972  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 29973  // object's ETag matches the given value. This is useful for getting updates
 29974  // only after the object has changed since the last request.
 29975  func (c *ProjectsNotificationConfigsGetCall) IfNoneMatch(entityTag string) *ProjectsNotificationConfigsGetCall {
 29976  	c.ifNoneMatch_ = entityTag
 29977  	return c
 29978  }
 29979  
 29980  // Context sets the context to be used in this call's Do method.
 29981  func (c *ProjectsNotificationConfigsGetCall) Context(ctx context.Context) *ProjectsNotificationConfigsGetCall {
 29982  	c.ctx_ = ctx
 29983  	return c
 29984  }
 29985  
 29986  // Header returns a http.Header that can be modified by the caller to add
 29987  // headers to the request.
 29988  func (c *ProjectsNotificationConfigsGetCall) Header() http.Header {
 29989  	if c.header_ == nil {
 29990  		c.header_ = make(http.Header)
 29991  	}
 29992  	return c.header_
 29993  }
 29994  
 29995  func (c *ProjectsNotificationConfigsGetCall) doRequest(alt string) (*http.Response, error) {
 29996  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 29997  	if c.ifNoneMatch_ != "" {
 29998  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 29999  	}
 30000  	var body io.Reader = nil
 30001  	c.urlParams_.Set("alt", alt)
 30002  	c.urlParams_.Set("prettyPrint", "false")
 30003  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 30004  	urls += "?" + c.urlParams_.Encode()
 30005  	req, err := http.NewRequest("GET", urls, body)
 30006  	if err != nil {
 30007  		return nil, err
 30008  	}
 30009  	req.Header = reqHeaders
 30010  	googleapi.Expand(req.URL, map[string]string{
 30011  		"name": c.name,
 30012  	})
 30013  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 30014  }
 30015  
 30016  // Do executes the "securitycenter.projects.notificationConfigs.get" call.
 30017  // Any non-2xx status code is an error. Response headers are in either
 30018  // *NotificationConfig.ServerResponse.Header or (if a response was returned at
 30019  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 30020  // check whether the returned error was because http.StatusNotModified was
 30021  // returned.
 30022  func (c *ProjectsNotificationConfigsGetCall) Do(opts ...googleapi.CallOption) (*NotificationConfig, error) {
 30023  	gensupport.SetOptions(c.urlParams_, opts...)
 30024  	res, err := c.doRequest("json")
 30025  	if res != nil && res.StatusCode == http.StatusNotModified {
 30026  		if res.Body != nil {
 30027  			res.Body.Close()
 30028  		}
 30029  		return nil, gensupport.WrapError(&googleapi.Error{
 30030  			Code:   res.StatusCode,
 30031  			Header: res.Header,
 30032  		})
 30033  	}
 30034  	if err != nil {
 30035  		return nil, err
 30036  	}
 30037  	defer googleapi.CloseBody(res)
 30038  	if err := googleapi.CheckResponse(res); err != nil {
 30039  		return nil, gensupport.WrapError(err)
 30040  	}
 30041  	ret := &NotificationConfig{
 30042  		ServerResponse: googleapi.ServerResponse{
 30043  			Header:         res.Header,
 30044  			HTTPStatusCode: res.StatusCode,
 30045  		},
 30046  	}
 30047  	target := &ret
 30048  	if err := gensupport.DecodeResponse(target, res); err != nil {
 30049  		return nil, err
 30050  	}
 30051  	return ret, nil
 30052  }
 30053  
 30054  type ProjectsNotificationConfigsListCall struct {
 30055  	s            *Service
 30056  	parent       string
 30057  	urlParams_   gensupport.URLParams
 30058  	ifNoneMatch_ string
 30059  	ctx_         context.Context
 30060  	header_      http.Header
 30061  }
 30062  
 30063  // List: Lists notification configs.
 30064  //
 30065  //   - parent: The name of the parent in which to list the notification
 30066  //     configurations. Its format is "organizations/[organization_id]",
 30067  //     "folders/[folder_id]", or "projects/[project_id]".
 30068  func (r *ProjectsNotificationConfigsService) List(parent string) *ProjectsNotificationConfigsListCall {
 30069  	c := &ProjectsNotificationConfigsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 30070  	c.parent = parent
 30071  	return c
 30072  }
 30073  
 30074  // PageSize sets the optional parameter "pageSize": The maximum number of
 30075  // results to return in a single response. Default is 10, minimum is 1, maximum
 30076  // is 1000.
 30077  func (c *ProjectsNotificationConfigsListCall) PageSize(pageSize int64) *ProjectsNotificationConfigsListCall {
 30078  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 30079  	return c
 30080  }
 30081  
 30082  // PageToken sets the optional parameter "pageToken": The value returned by the
 30083  // last `ListNotificationConfigsResponse`; indicates that this is a
 30084  // continuation of a prior `ListNotificationConfigs` call, and that the system
 30085  // should return the next page of data.
 30086  func (c *ProjectsNotificationConfigsListCall) PageToken(pageToken string) *ProjectsNotificationConfigsListCall {
 30087  	c.urlParams_.Set("pageToken", pageToken)
 30088  	return c
 30089  }
 30090  
 30091  // Fields allows partial responses to be retrieved. See
 30092  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 30093  // details.
 30094  func (c *ProjectsNotificationConfigsListCall) Fields(s ...googleapi.Field) *ProjectsNotificationConfigsListCall {
 30095  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 30096  	return c
 30097  }
 30098  
 30099  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 30100  // object's ETag matches the given value. This is useful for getting updates
 30101  // only after the object has changed since the last request.
 30102  func (c *ProjectsNotificationConfigsListCall) IfNoneMatch(entityTag string) *ProjectsNotificationConfigsListCall {
 30103  	c.ifNoneMatch_ = entityTag
 30104  	return c
 30105  }
 30106  
 30107  // Context sets the context to be used in this call's Do method.
 30108  func (c *ProjectsNotificationConfigsListCall) Context(ctx context.Context) *ProjectsNotificationConfigsListCall {
 30109  	c.ctx_ = ctx
 30110  	return c
 30111  }
 30112  
 30113  // Header returns a http.Header that can be modified by the caller to add
 30114  // headers to the request.
 30115  func (c *ProjectsNotificationConfigsListCall) Header() http.Header {
 30116  	if c.header_ == nil {
 30117  		c.header_ = make(http.Header)
 30118  	}
 30119  	return c.header_
 30120  }
 30121  
 30122  func (c *ProjectsNotificationConfigsListCall) doRequest(alt string) (*http.Response, error) {
 30123  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 30124  	if c.ifNoneMatch_ != "" {
 30125  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 30126  	}
 30127  	var body io.Reader = nil
 30128  	c.urlParams_.Set("alt", alt)
 30129  	c.urlParams_.Set("prettyPrint", "false")
 30130  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/notificationConfigs")
 30131  	urls += "?" + c.urlParams_.Encode()
 30132  	req, err := http.NewRequest("GET", urls, body)
 30133  	if err != nil {
 30134  		return nil, err
 30135  	}
 30136  	req.Header = reqHeaders
 30137  	googleapi.Expand(req.URL, map[string]string{
 30138  		"parent": c.parent,
 30139  	})
 30140  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 30141  }
 30142  
 30143  // Do executes the "securitycenter.projects.notificationConfigs.list" call.
 30144  // Any non-2xx status code is an error. Response headers are in either
 30145  // *ListNotificationConfigsResponse.ServerResponse.Header or (if a response was
 30146  // returned at all) in error.(*googleapi.Error).Header. Use
 30147  // googleapi.IsNotModified to check whether the returned error was because
 30148  // http.StatusNotModified was returned.
 30149  func (c *ProjectsNotificationConfigsListCall) Do(opts ...googleapi.CallOption) (*ListNotificationConfigsResponse, error) {
 30150  	gensupport.SetOptions(c.urlParams_, opts...)
 30151  	res, err := c.doRequest("json")
 30152  	if res != nil && res.StatusCode == http.StatusNotModified {
 30153  		if res.Body != nil {
 30154  			res.Body.Close()
 30155  		}
 30156  		return nil, gensupport.WrapError(&googleapi.Error{
 30157  			Code:   res.StatusCode,
 30158  			Header: res.Header,
 30159  		})
 30160  	}
 30161  	if err != nil {
 30162  		return nil, err
 30163  	}
 30164  	defer googleapi.CloseBody(res)
 30165  	if err := googleapi.CheckResponse(res); err != nil {
 30166  		return nil, gensupport.WrapError(err)
 30167  	}
 30168  	ret := &ListNotificationConfigsResponse{
 30169  		ServerResponse: googleapi.ServerResponse{
 30170  			Header:         res.Header,
 30171  			HTTPStatusCode: res.StatusCode,
 30172  		},
 30173  	}
 30174  	target := &ret
 30175  	if err := gensupport.DecodeResponse(target, res); err != nil {
 30176  		return nil, err
 30177  	}
 30178  	return ret, nil
 30179  }
 30180  
 30181  // Pages invokes f for each page of results.
 30182  // A non-nil error returned from f will halt the iteration.
 30183  // The provided context supersedes any context provided to the Context method.
 30184  func (c *ProjectsNotificationConfigsListCall) Pages(ctx context.Context, f func(*ListNotificationConfigsResponse) error) error {
 30185  	c.ctx_ = ctx
 30186  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 30187  	for {
 30188  		x, err := c.Do()
 30189  		if err != nil {
 30190  			return err
 30191  		}
 30192  		if err := f(x); err != nil {
 30193  			return err
 30194  		}
 30195  		if x.NextPageToken == "" {
 30196  			return nil
 30197  		}
 30198  		c.PageToken(x.NextPageToken)
 30199  	}
 30200  }
 30201  
 30202  type ProjectsNotificationConfigsPatchCall struct {
 30203  	s                  *Service
 30204  	name               string
 30205  	notificationconfig *NotificationConfig
 30206  	urlParams_         gensupport.URLParams
 30207  	ctx_               context.Context
 30208  	header_            http.Header
 30209  }
 30210  
 30211  // Patch:  Updates a notification config. The following update fields are
 30212  // allowed: description, pubsub_topic, streaming_config.filter
 30213  //
 30214  //   - name: The relative resource name of this notification config. See:
 30215  //     https://cloud.google.com/apis/design/resource_names#relative_resource_name
 30216  //     Example:
 30217  //     "organizations/{organization_id}/notificationConfigs/notify_public_bucket",
 30218  //     "folders/{folder_id}/notificationConfigs/notify_public_bucket", or
 30219  //     "projects/{project_id}/notificationConfigs/notify_public_bucket".
 30220  func (r *ProjectsNotificationConfigsService) Patch(name string, notificationconfig *NotificationConfig) *ProjectsNotificationConfigsPatchCall {
 30221  	c := &ProjectsNotificationConfigsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 30222  	c.name = name
 30223  	c.notificationconfig = notificationconfig
 30224  	return c
 30225  }
 30226  
 30227  // UpdateMask sets the optional parameter "updateMask": The FieldMask to use
 30228  // when updating the notification config. If empty all mutable fields will be
 30229  // updated.
 30230  func (c *ProjectsNotificationConfigsPatchCall) UpdateMask(updateMask string) *ProjectsNotificationConfigsPatchCall {
 30231  	c.urlParams_.Set("updateMask", updateMask)
 30232  	return c
 30233  }
 30234  
 30235  // Fields allows partial responses to be retrieved. See
 30236  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 30237  // details.
 30238  func (c *ProjectsNotificationConfigsPatchCall) Fields(s ...googleapi.Field) *ProjectsNotificationConfigsPatchCall {
 30239  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 30240  	return c
 30241  }
 30242  
 30243  // Context sets the context to be used in this call's Do method.
 30244  func (c *ProjectsNotificationConfigsPatchCall) Context(ctx context.Context) *ProjectsNotificationConfigsPatchCall {
 30245  	c.ctx_ = ctx
 30246  	return c
 30247  }
 30248  
 30249  // Header returns a http.Header that can be modified by the caller to add
 30250  // headers to the request.
 30251  func (c *ProjectsNotificationConfigsPatchCall) Header() http.Header {
 30252  	if c.header_ == nil {
 30253  		c.header_ = make(http.Header)
 30254  	}
 30255  	return c.header_
 30256  }
 30257  
 30258  func (c *ProjectsNotificationConfigsPatchCall) doRequest(alt string) (*http.Response, error) {
 30259  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 30260  	var body io.Reader = nil
 30261  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.notificationconfig)
 30262  	if err != nil {
 30263  		return nil, err
 30264  	}
 30265  	c.urlParams_.Set("alt", alt)
 30266  	c.urlParams_.Set("prettyPrint", "false")
 30267  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 30268  	urls += "?" + c.urlParams_.Encode()
 30269  	req, err := http.NewRequest("PATCH", urls, body)
 30270  	if err != nil {
 30271  		return nil, err
 30272  	}
 30273  	req.Header = reqHeaders
 30274  	googleapi.Expand(req.URL, map[string]string{
 30275  		"name": c.name,
 30276  	})
 30277  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 30278  }
 30279  
 30280  // Do executes the "securitycenter.projects.notificationConfigs.patch" call.
 30281  // Any non-2xx status code is an error. Response headers are in either
 30282  // *NotificationConfig.ServerResponse.Header or (if a response was returned at
 30283  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 30284  // check whether the returned error was because http.StatusNotModified was
 30285  // returned.
 30286  func (c *ProjectsNotificationConfigsPatchCall) Do(opts ...googleapi.CallOption) (*NotificationConfig, error) {
 30287  	gensupport.SetOptions(c.urlParams_, opts...)
 30288  	res, err := c.doRequest("json")
 30289  	if res != nil && res.StatusCode == http.StatusNotModified {
 30290  		if res.Body != nil {
 30291  			res.Body.Close()
 30292  		}
 30293  		return nil, gensupport.WrapError(&googleapi.Error{
 30294  			Code:   res.StatusCode,
 30295  			Header: res.Header,
 30296  		})
 30297  	}
 30298  	if err != nil {
 30299  		return nil, err
 30300  	}
 30301  	defer googleapi.CloseBody(res)
 30302  	if err := googleapi.CheckResponse(res); err != nil {
 30303  		return nil, gensupport.WrapError(err)
 30304  	}
 30305  	ret := &NotificationConfig{
 30306  		ServerResponse: googleapi.ServerResponse{
 30307  			Header:         res.Header,
 30308  			HTTPStatusCode: res.StatusCode,
 30309  		},
 30310  	}
 30311  	target := &ret
 30312  	if err := gensupport.DecodeResponse(target, res); err != nil {
 30313  		return nil, err
 30314  	}
 30315  	return ret, nil
 30316  }
 30317  
 30318  type ProjectsSecurityHealthAnalyticsSettingsCustomModulesCreateCall struct {
 30319  	s                                                              *Service
 30320  	parent                                                         string
 30321  	googlecloudsecuritycenterv1securityhealthanalyticscustommodule *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule
 30322  	urlParams_                                                     gensupport.URLParams
 30323  	ctx_                                                           context.Context
 30324  	header_                                                        http.Header
 30325  }
 30326  
 30327  // Create: Creates a resident SecurityHealthAnalyticsCustomModule at the scope
 30328  // of the given CRM parent, and also creates inherited
 30329  // SecurityHealthAnalyticsCustomModules for all CRM descendants of the given
 30330  // parent. These modules are enabled by default.
 30331  //
 30332  //   - parent: Resource name of the new custom module's parent. Its format is
 30333  //     "organizations/{organization}/securityHealthAnalyticsSettings",
 30334  //     "folders/{folder}/securityHealthAnalyticsSettings", or
 30335  //     "projects/{project}/securityHealthAnalyticsSettings".
 30336  func (r *ProjectsSecurityHealthAnalyticsSettingsCustomModulesService) Create(parent string, googlecloudsecuritycenterv1securityhealthanalyticscustommodule *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesCreateCall {
 30337  	c := &ProjectsSecurityHealthAnalyticsSettingsCustomModulesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 30338  	c.parent = parent
 30339  	c.googlecloudsecuritycenterv1securityhealthanalyticscustommodule = googlecloudsecuritycenterv1securityhealthanalyticscustommodule
 30340  	return c
 30341  }
 30342  
 30343  // Fields allows partial responses to be retrieved. See
 30344  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 30345  // details.
 30346  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesCreateCall) Fields(s ...googleapi.Field) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesCreateCall {
 30347  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 30348  	return c
 30349  }
 30350  
 30351  // Context sets the context to be used in this call's Do method.
 30352  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesCreateCall) Context(ctx context.Context) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesCreateCall {
 30353  	c.ctx_ = ctx
 30354  	return c
 30355  }
 30356  
 30357  // Header returns a http.Header that can be modified by the caller to add
 30358  // headers to the request.
 30359  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesCreateCall) Header() http.Header {
 30360  	if c.header_ == nil {
 30361  		c.header_ = make(http.Header)
 30362  	}
 30363  	return c.header_
 30364  }
 30365  
 30366  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesCreateCall) doRequest(alt string) (*http.Response, error) {
 30367  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 30368  	var body io.Reader = nil
 30369  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1securityhealthanalyticscustommodule)
 30370  	if err != nil {
 30371  		return nil, err
 30372  	}
 30373  	c.urlParams_.Set("alt", alt)
 30374  	c.urlParams_.Set("prettyPrint", "false")
 30375  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules")
 30376  	urls += "?" + c.urlParams_.Encode()
 30377  	req, err := http.NewRequest("POST", urls, body)
 30378  	if err != nil {
 30379  		return nil, err
 30380  	}
 30381  	req.Header = reqHeaders
 30382  	googleapi.Expand(req.URL, map[string]string{
 30383  		"parent": c.parent,
 30384  	})
 30385  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 30386  }
 30387  
 30388  // Do executes the "securitycenter.projects.securityHealthAnalyticsSettings.customModules.create" call.
 30389  // Any non-2xx status code is an error. Response headers are in either
 30390  // *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.ServerRespons
 30391  // e.Header or (if a response was returned at all) in
 30392  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 30393  // whether the returned error was because http.StatusNotModified was returned.
 30394  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule, error) {
 30395  	gensupport.SetOptions(c.urlParams_, opts...)
 30396  	res, err := c.doRequest("json")
 30397  	if res != nil && res.StatusCode == http.StatusNotModified {
 30398  		if res.Body != nil {
 30399  			res.Body.Close()
 30400  		}
 30401  		return nil, gensupport.WrapError(&googleapi.Error{
 30402  			Code:   res.StatusCode,
 30403  			Header: res.Header,
 30404  		})
 30405  	}
 30406  	if err != nil {
 30407  		return nil, err
 30408  	}
 30409  	defer googleapi.CloseBody(res)
 30410  	if err := googleapi.CheckResponse(res); err != nil {
 30411  		return nil, gensupport.WrapError(err)
 30412  	}
 30413  	ret := &GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule{
 30414  		ServerResponse: googleapi.ServerResponse{
 30415  			Header:         res.Header,
 30416  			HTTPStatusCode: res.StatusCode,
 30417  		},
 30418  	}
 30419  	target := &ret
 30420  	if err := gensupport.DecodeResponse(target, res); err != nil {
 30421  		return nil, err
 30422  	}
 30423  	return ret, nil
 30424  }
 30425  
 30426  type ProjectsSecurityHealthAnalyticsSettingsCustomModulesDeleteCall struct {
 30427  	s          *Service
 30428  	name       string
 30429  	urlParams_ gensupport.URLParams
 30430  	ctx_       context.Context
 30431  	header_    http.Header
 30432  }
 30433  
 30434  // Delete: Deletes the specified SecurityHealthAnalyticsCustomModule and all of
 30435  // its descendants in the CRM hierarchy. This method is only supported for
 30436  // resident custom modules.
 30437  //
 30438  //   - name: Name of the custom module to delete. Its format is
 30439  //     "organizations/{organization}/securityHealthAnalyticsSettings/customModules
 30440  //     /{customModule}",
 30441  //     "folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModu
 30442  //     le}", or
 30443  //     "projects/{project}/securityHealthAnalyticsSettings/customModules/{customMo
 30444  //     dule}".
 30445  func (r *ProjectsSecurityHealthAnalyticsSettingsCustomModulesService) Delete(name string) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesDeleteCall {
 30446  	c := &ProjectsSecurityHealthAnalyticsSettingsCustomModulesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 30447  	c.name = name
 30448  	return c
 30449  }
 30450  
 30451  // Fields allows partial responses to be retrieved. See
 30452  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 30453  // details.
 30454  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesDeleteCall) Fields(s ...googleapi.Field) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesDeleteCall {
 30455  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 30456  	return c
 30457  }
 30458  
 30459  // Context sets the context to be used in this call's Do method.
 30460  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesDeleteCall) Context(ctx context.Context) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesDeleteCall {
 30461  	c.ctx_ = ctx
 30462  	return c
 30463  }
 30464  
 30465  // Header returns a http.Header that can be modified by the caller to add
 30466  // headers to the request.
 30467  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesDeleteCall) Header() http.Header {
 30468  	if c.header_ == nil {
 30469  		c.header_ = make(http.Header)
 30470  	}
 30471  	return c.header_
 30472  }
 30473  
 30474  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesDeleteCall) doRequest(alt string) (*http.Response, error) {
 30475  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 30476  	var body io.Reader = nil
 30477  	c.urlParams_.Set("alt", alt)
 30478  	c.urlParams_.Set("prettyPrint", "false")
 30479  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 30480  	urls += "?" + c.urlParams_.Encode()
 30481  	req, err := http.NewRequest("DELETE", urls, body)
 30482  	if err != nil {
 30483  		return nil, err
 30484  	}
 30485  	req.Header = reqHeaders
 30486  	googleapi.Expand(req.URL, map[string]string{
 30487  		"name": c.name,
 30488  	})
 30489  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 30490  }
 30491  
 30492  // Do executes the "securitycenter.projects.securityHealthAnalyticsSettings.customModules.delete" call.
 30493  // Any non-2xx status code is an error. Response headers are in either
 30494  // *Empty.ServerResponse.Header or (if a response was returned at all) in
 30495  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 30496  // whether the returned error was because http.StatusNotModified was returned.
 30497  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
 30498  	gensupport.SetOptions(c.urlParams_, opts...)
 30499  	res, err := c.doRequest("json")
 30500  	if res != nil && res.StatusCode == http.StatusNotModified {
 30501  		if res.Body != nil {
 30502  			res.Body.Close()
 30503  		}
 30504  		return nil, gensupport.WrapError(&googleapi.Error{
 30505  			Code:   res.StatusCode,
 30506  			Header: res.Header,
 30507  		})
 30508  	}
 30509  	if err != nil {
 30510  		return nil, err
 30511  	}
 30512  	defer googleapi.CloseBody(res)
 30513  	if err := googleapi.CheckResponse(res); err != nil {
 30514  		return nil, gensupport.WrapError(err)
 30515  	}
 30516  	ret := &Empty{
 30517  		ServerResponse: googleapi.ServerResponse{
 30518  			Header:         res.Header,
 30519  			HTTPStatusCode: res.StatusCode,
 30520  		},
 30521  	}
 30522  	target := &ret
 30523  	if err := gensupport.DecodeResponse(target, res); err != nil {
 30524  		return nil, err
 30525  	}
 30526  	return ret, nil
 30527  }
 30528  
 30529  type ProjectsSecurityHealthAnalyticsSettingsCustomModulesGetCall struct {
 30530  	s            *Service
 30531  	name         string
 30532  	urlParams_   gensupport.URLParams
 30533  	ifNoneMatch_ string
 30534  	ctx_         context.Context
 30535  	header_      http.Header
 30536  }
 30537  
 30538  // Get: Retrieves a SecurityHealthAnalyticsCustomModule.
 30539  //
 30540  //   - name: Name of the custom module to get. Its format is
 30541  //     "organizations/{organization}/securityHealthAnalyticsSettings/customModules
 30542  //     /{customModule}",
 30543  //     "folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModu
 30544  //     le}", or
 30545  //     "projects/{project}/securityHealthAnalyticsSettings/customModules/{customMo
 30546  //     dule}".
 30547  func (r *ProjectsSecurityHealthAnalyticsSettingsCustomModulesService) Get(name string) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesGetCall {
 30548  	c := &ProjectsSecurityHealthAnalyticsSettingsCustomModulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 30549  	c.name = name
 30550  	return c
 30551  }
 30552  
 30553  // Fields allows partial responses to be retrieved. See
 30554  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 30555  // details.
 30556  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesGetCall) Fields(s ...googleapi.Field) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesGetCall {
 30557  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 30558  	return c
 30559  }
 30560  
 30561  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 30562  // object's ETag matches the given value. This is useful for getting updates
 30563  // only after the object has changed since the last request.
 30564  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesGetCall) IfNoneMatch(entityTag string) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesGetCall {
 30565  	c.ifNoneMatch_ = entityTag
 30566  	return c
 30567  }
 30568  
 30569  // Context sets the context to be used in this call's Do method.
 30570  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesGetCall) Context(ctx context.Context) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesGetCall {
 30571  	c.ctx_ = ctx
 30572  	return c
 30573  }
 30574  
 30575  // Header returns a http.Header that can be modified by the caller to add
 30576  // headers to the request.
 30577  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesGetCall) Header() http.Header {
 30578  	if c.header_ == nil {
 30579  		c.header_ = make(http.Header)
 30580  	}
 30581  	return c.header_
 30582  }
 30583  
 30584  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesGetCall) doRequest(alt string) (*http.Response, error) {
 30585  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 30586  	if c.ifNoneMatch_ != "" {
 30587  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 30588  	}
 30589  	var body io.Reader = nil
 30590  	c.urlParams_.Set("alt", alt)
 30591  	c.urlParams_.Set("prettyPrint", "false")
 30592  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 30593  	urls += "?" + c.urlParams_.Encode()
 30594  	req, err := http.NewRequest("GET", urls, body)
 30595  	if err != nil {
 30596  		return nil, err
 30597  	}
 30598  	req.Header = reqHeaders
 30599  	googleapi.Expand(req.URL, map[string]string{
 30600  		"name": c.name,
 30601  	})
 30602  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 30603  }
 30604  
 30605  // Do executes the "securitycenter.projects.securityHealthAnalyticsSettings.customModules.get" call.
 30606  // Any non-2xx status code is an error. Response headers are in either
 30607  // *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.ServerRespons
 30608  // e.Header or (if a response was returned at all) in
 30609  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 30610  // whether the returned error was because http.StatusNotModified was returned.
 30611  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule, error) {
 30612  	gensupport.SetOptions(c.urlParams_, opts...)
 30613  	res, err := c.doRequest("json")
 30614  	if res != nil && res.StatusCode == http.StatusNotModified {
 30615  		if res.Body != nil {
 30616  			res.Body.Close()
 30617  		}
 30618  		return nil, gensupport.WrapError(&googleapi.Error{
 30619  			Code:   res.StatusCode,
 30620  			Header: res.Header,
 30621  		})
 30622  	}
 30623  	if err != nil {
 30624  		return nil, err
 30625  	}
 30626  	defer googleapi.CloseBody(res)
 30627  	if err := googleapi.CheckResponse(res); err != nil {
 30628  		return nil, gensupport.WrapError(err)
 30629  	}
 30630  	ret := &GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule{
 30631  		ServerResponse: googleapi.ServerResponse{
 30632  			Header:         res.Header,
 30633  			HTTPStatusCode: res.StatusCode,
 30634  		},
 30635  	}
 30636  	target := &ret
 30637  	if err := gensupport.DecodeResponse(target, res); err != nil {
 30638  		return nil, err
 30639  	}
 30640  	return ret, nil
 30641  }
 30642  
 30643  type ProjectsSecurityHealthAnalyticsSettingsCustomModulesListCall struct {
 30644  	s            *Service
 30645  	parent       string
 30646  	urlParams_   gensupport.URLParams
 30647  	ifNoneMatch_ string
 30648  	ctx_         context.Context
 30649  	header_      http.Header
 30650  }
 30651  
 30652  // List: Returns a list of all SecurityHealthAnalyticsCustomModules for the
 30653  // given parent. This includes resident modules defined at the scope of the
 30654  // parent, and inherited modules, inherited from CRM ancestors.
 30655  //
 30656  //   - parent: Name of parent to list custom modules. Its format is
 30657  //     "organizations/{organization}/securityHealthAnalyticsSettings",
 30658  //     "folders/{folder}/securityHealthAnalyticsSettings", or
 30659  //     "projects/{project}/securityHealthAnalyticsSettings".
 30660  func (r *ProjectsSecurityHealthAnalyticsSettingsCustomModulesService) List(parent string) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListCall {
 30661  	c := &ProjectsSecurityHealthAnalyticsSettingsCustomModulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 30662  	c.parent = parent
 30663  	return c
 30664  }
 30665  
 30666  // PageSize sets the optional parameter "pageSize": The maximum number of
 30667  // results to return in a single response. Default is 10, minimum is 1, maximum
 30668  // is 1000.
 30669  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListCall) PageSize(pageSize int64) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListCall {
 30670  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 30671  	return c
 30672  }
 30673  
 30674  // PageToken sets the optional parameter "pageToken": The value returned by the
 30675  // last call indicating a continuation
 30676  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListCall) PageToken(pageToken string) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListCall {
 30677  	c.urlParams_.Set("pageToken", pageToken)
 30678  	return c
 30679  }
 30680  
 30681  // Fields allows partial responses to be retrieved. See
 30682  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 30683  // details.
 30684  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListCall) Fields(s ...googleapi.Field) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListCall {
 30685  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 30686  	return c
 30687  }
 30688  
 30689  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 30690  // object's ETag matches the given value. This is useful for getting updates
 30691  // only after the object has changed since the last request.
 30692  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListCall) IfNoneMatch(entityTag string) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListCall {
 30693  	c.ifNoneMatch_ = entityTag
 30694  	return c
 30695  }
 30696  
 30697  // Context sets the context to be used in this call's Do method.
 30698  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListCall) Context(ctx context.Context) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListCall {
 30699  	c.ctx_ = ctx
 30700  	return c
 30701  }
 30702  
 30703  // Header returns a http.Header that can be modified by the caller to add
 30704  // headers to the request.
 30705  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListCall) Header() http.Header {
 30706  	if c.header_ == nil {
 30707  		c.header_ = make(http.Header)
 30708  	}
 30709  	return c.header_
 30710  }
 30711  
 30712  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListCall) doRequest(alt string) (*http.Response, error) {
 30713  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 30714  	if c.ifNoneMatch_ != "" {
 30715  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 30716  	}
 30717  	var body io.Reader = nil
 30718  	c.urlParams_.Set("alt", alt)
 30719  	c.urlParams_.Set("prettyPrint", "false")
 30720  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules")
 30721  	urls += "?" + c.urlParams_.Encode()
 30722  	req, err := http.NewRequest("GET", urls, body)
 30723  	if err != nil {
 30724  		return nil, err
 30725  	}
 30726  	req.Header = reqHeaders
 30727  	googleapi.Expand(req.URL, map[string]string{
 30728  		"parent": c.parent,
 30729  	})
 30730  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 30731  }
 30732  
 30733  // Do executes the "securitycenter.projects.securityHealthAnalyticsSettings.customModules.list" call.
 30734  // Any non-2xx status code is an error. Response headers are in either
 30735  // *ListSecurityHealthAnalyticsCustomModulesResponse.ServerResponse.Header or
 30736  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
 30737  // googleapi.IsNotModified to check whether the returned error was because
 30738  // http.StatusNotModified was returned.
 30739  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListCall) Do(opts ...googleapi.CallOption) (*ListSecurityHealthAnalyticsCustomModulesResponse, error) {
 30740  	gensupport.SetOptions(c.urlParams_, opts...)
 30741  	res, err := c.doRequest("json")
 30742  	if res != nil && res.StatusCode == http.StatusNotModified {
 30743  		if res.Body != nil {
 30744  			res.Body.Close()
 30745  		}
 30746  		return nil, gensupport.WrapError(&googleapi.Error{
 30747  			Code:   res.StatusCode,
 30748  			Header: res.Header,
 30749  		})
 30750  	}
 30751  	if err != nil {
 30752  		return nil, err
 30753  	}
 30754  	defer googleapi.CloseBody(res)
 30755  	if err := googleapi.CheckResponse(res); err != nil {
 30756  		return nil, gensupport.WrapError(err)
 30757  	}
 30758  	ret := &ListSecurityHealthAnalyticsCustomModulesResponse{
 30759  		ServerResponse: googleapi.ServerResponse{
 30760  			Header:         res.Header,
 30761  			HTTPStatusCode: res.StatusCode,
 30762  		},
 30763  	}
 30764  	target := &ret
 30765  	if err := gensupport.DecodeResponse(target, res); err != nil {
 30766  		return nil, err
 30767  	}
 30768  	return ret, nil
 30769  }
 30770  
 30771  // Pages invokes f for each page of results.
 30772  // A non-nil error returned from f will halt the iteration.
 30773  // The provided context supersedes any context provided to the Context method.
 30774  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListCall) Pages(ctx context.Context, f func(*ListSecurityHealthAnalyticsCustomModulesResponse) error) error {
 30775  	c.ctx_ = ctx
 30776  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 30777  	for {
 30778  		x, err := c.Do()
 30779  		if err != nil {
 30780  			return err
 30781  		}
 30782  		if err := f(x); err != nil {
 30783  			return err
 30784  		}
 30785  		if x.NextPageToken == "" {
 30786  			return nil
 30787  		}
 30788  		c.PageToken(x.NextPageToken)
 30789  	}
 30790  }
 30791  
 30792  type ProjectsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall struct {
 30793  	s            *Service
 30794  	parent       string
 30795  	urlParams_   gensupport.URLParams
 30796  	ifNoneMatch_ string
 30797  	ctx_         context.Context
 30798  	header_      http.Header
 30799  }
 30800  
 30801  // ListDescendant: Returns a list of all resident
 30802  // SecurityHealthAnalyticsCustomModules under the given CRM parent and all of
 30803  // the parent’s CRM descendants.
 30804  //
 30805  //   - parent: Name of parent to list descendant custom modules. Its format is
 30806  //     "organizations/{organization}/securityHealthAnalyticsSettings",
 30807  //     "folders/{folder}/securityHealthAnalyticsSettings", or
 30808  //     "projects/{project}/securityHealthAnalyticsSettings".
 30809  func (r *ProjectsSecurityHealthAnalyticsSettingsCustomModulesService) ListDescendant(parent string) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall {
 30810  	c := &ProjectsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 30811  	c.parent = parent
 30812  	return c
 30813  }
 30814  
 30815  // PageSize sets the optional parameter "pageSize": The maximum number of
 30816  // results to return in a single response. Default is 10, minimum is 1, maximum
 30817  // is 1000.
 30818  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) PageSize(pageSize int64) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall {
 30819  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 30820  	return c
 30821  }
 30822  
 30823  // PageToken sets the optional parameter "pageToken": The value returned by the
 30824  // last call indicating a continuation
 30825  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) PageToken(pageToken string) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall {
 30826  	c.urlParams_.Set("pageToken", pageToken)
 30827  	return c
 30828  }
 30829  
 30830  // Fields allows partial responses to be retrieved. See
 30831  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 30832  // details.
 30833  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) Fields(s ...googleapi.Field) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall {
 30834  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 30835  	return c
 30836  }
 30837  
 30838  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 30839  // object's ETag matches the given value. This is useful for getting updates
 30840  // only after the object has changed since the last request.
 30841  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) IfNoneMatch(entityTag string) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall {
 30842  	c.ifNoneMatch_ = entityTag
 30843  	return c
 30844  }
 30845  
 30846  // Context sets the context to be used in this call's Do method.
 30847  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) Context(ctx context.Context) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall {
 30848  	c.ctx_ = ctx
 30849  	return c
 30850  }
 30851  
 30852  // Header returns a http.Header that can be modified by the caller to add
 30853  // headers to the request.
 30854  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) Header() http.Header {
 30855  	if c.header_ == nil {
 30856  		c.header_ = make(http.Header)
 30857  	}
 30858  	return c.header_
 30859  }
 30860  
 30861  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) doRequest(alt string) (*http.Response, error) {
 30862  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 30863  	if c.ifNoneMatch_ != "" {
 30864  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 30865  	}
 30866  	var body io.Reader = nil
 30867  	c.urlParams_.Set("alt", alt)
 30868  	c.urlParams_.Set("prettyPrint", "false")
 30869  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules:listDescendant")
 30870  	urls += "?" + c.urlParams_.Encode()
 30871  	req, err := http.NewRequest("GET", urls, body)
 30872  	if err != nil {
 30873  		return nil, err
 30874  	}
 30875  	req.Header = reqHeaders
 30876  	googleapi.Expand(req.URL, map[string]string{
 30877  		"parent": c.parent,
 30878  	})
 30879  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 30880  }
 30881  
 30882  // Do executes the "securitycenter.projects.securityHealthAnalyticsSettings.customModules.listDescendant" call.
 30883  // Any non-2xx status code is an error. Response headers are in either
 30884  // *ListDescendantSecurityHealthAnalyticsCustomModulesResponse.ServerResponse.He
 30885  // ader or (if a response was returned at all) in
 30886  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 30887  // whether the returned error was because http.StatusNotModified was returned.
 30888  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) Do(opts ...googleapi.CallOption) (*ListDescendantSecurityHealthAnalyticsCustomModulesResponse, error) {
 30889  	gensupport.SetOptions(c.urlParams_, opts...)
 30890  	res, err := c.doRequest("json")
 30891  	if res != nil && res.StatusCode == http.StatusNotModified {
 30892  		if res.Body != nil {
 30893  			res.Body.Close()
 30894  		}
 30895  		return nil, gensupport.WrapError(&googleapi.Error{
 30896  			Code:   res.StatusCode,
 30897  			Header: res.Header,
 30898  		})
 30899  	}
 30900  	if err != nil {
 30901  		return nil, err
 30902  	}
 30903  	defer googleapi.CloseBody(res)
 30904  	if err := googleapi.CheckResponse(res); err != nil {
 30905  		return nil, gensupport.WrapError(err)
 30906  	}
 30907  	ret := &ListDescendantSecurityHealthAnalyticsCustomModulesResponse{
 30908  		ServerResponse: googleapi.ServerResponse{
 30909  			Header:         res.Header,
 30910  			HTTPStatusCode: res.StatusCode,
 30911  		},
 30912  	}
 30913  	target := &ret
 30914  	if err := gensupport.DecodeResponse(target, res); err != nil {
 30915  		return nil, err
 30916  	}
 30917  	return ret, nil
 30918  }
 30919  
 30920  // Pages invokes f for each page of results.
 30921  // A non-nil error returned from f will halt the iteration.
 30922  // The provided context supersedes any context provided to the Context method.
 30923  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesListDescendantCall) Pages(ctx context.Context, f func(*ListDescendantSecurityHealthAnalyticsCustomModulesResponse) error) error {
 30924  	c.ctx_ = ctx
 30925  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 30926  	for {
 30927  		x, err := c.Do()
 30928  		if err != nil {
 30929  			return err
 30930  		}
 30931  		if err := f(x); err != nil {
 30932  			return err
 30933  		}
 30934  		if x.NextPageToken == "" {
 30935  			return nil
 30936  		}
 30937  		c.PageToken(x.NextPageToken)
 30938  	}
 30939  }
 30940  
 30941  type ProjectsSecurityHealthAnalyticsSettingsCustomModulesPatchCall struct {
 30942  	s                                                              *Service
 30943  	name                                                           string
 30944  	googlecloudsecuritycenterv1securityhealthanalyticscustommodule *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule
 30945  	urlParams_                                                     gensupport.URLParams
 30946  	ctx_                                                           context.Context
 30947  	header_                                                        http.Header
 30948  }
 30949  
 30950  // Patch: Updates the SecurityHealthAnalyticsCustomModule under the given name
 30951  // based on the given update mask. Updating the enablement state is supported
 30952  // on both resident and inherited modules (though resident modules cannot have
 30953  // an enablement state of "inherited"). Updating the display name and custom
 30954  // config of a module is supported on resident modules only.
 30955  //
 30956  //   - name: Immutable. The resource name of the custom module. Its format is
 30957  //     "organizations/{organization}/securityHealthAnalyticsSettings/customModules
 30958  //     /{customModule}", or
 30959  //     "folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModu
 30960  //     le}", or
 30961  //     "projects/{project}/securityHealthAnalyticsSettings/customModules/{customMo
 30962  //     dule}" The id {customModule} is server-generated and is not user settable.
 30963  //     It will be a numeric id containing 1-20 digits.
 30964  func (r *ProjectsSecurityHealthAnalyticsSettingsCustomModulesService) Patch(name string, googlecloudsecuritycenterv1securityhealthanalyticscustommodule *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesPatchCall {
 30965  	c := &ProjectsSecurityHealthAnalyticsSettingsCustomModulesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 30966  	c.name = name
 30967  	c.googlecloudsecuritycenterv1securityhealthanalyticscustommodule = googlecloudsecuritycenterv1securityhealthanalyticscustommodule
 30968  	return c
 30969  }
 30970  
 30971  // UpdateMask sets the optional parameter "updateMask": The list of fields to
 30972  // be updated. The only fields that can be updated are `enablement_state` and
 30973  // `custom_config`. If empty or set to the wildcard value `*`, both
 30974  // `enablement_state` and `custom_config` are updated.
 30975  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesPatchCall) UpdateMask(updateMask string) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesPatchCall {
 30976  	c.urlParams_.Set("updateMask", updateMask)
 30977  	return c
 30978  }
 30979  
 30980  // Fields allows partial responses to be retrieved. See
 30981  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 30982  // details.
 30983  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesPatchCall) Fields(s ...googleapi.Field) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesPatchCall {
 30984  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 30985  	return c
 30986  }
 30987  
 30988  // Context sets the context to be used in this call's Do method.
 30989  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesPatchCall) Context(ctx context.Context) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesPatchCall {
 30990  	c.ctx_ = ctx
 30991  	return c
 30992  }
 30993  
 30994  // Header returns a http.Header that can be modified by the caller to add
 30995  // headers to the request.
 30996  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesPatchCall) Header() http.Header {
 30997  	if c.header_ == nil {
 30998  		c.header_ = make(http.Header)
 30999  	}
 31000  	return c.header_
 31001  }
 31002  
 31003  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesPatchCall) doRequest(alt string) (*http.Response, error) {
 31004  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 31005  	var body io.Reader = nil
 31006  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1securityhealthanalyticscustommodule)
 31007  	if err != nil {
 31008  		return nil, err
 31009  	}
 31010  	c.urlParams_.Set("alt", alt)
 31011  	c.urlParams_.Set("prettyPrint", "false")
 31012  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 31013  	urls += "?" + c.urlParams_.Encode()
 31014  	req, err := http.NewRequest("PATCH", urls, body)
 31015  	if err != nil {
 31016  		return nil, err
 31017  	}
 31018  	req.Header = reqHeaders
 31019  	googleapi.Expand(req.URL, map[string]string{
 31020  		"name": c.name,
 31021  	})
 31022  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 31023  }
 31024  
 31025  // Do executes the "securitycenter.projects.securityHealthAnalyticsSettings.customModules.patch" call.
 31026  // Any non-2xx status code is an error. Response headers are in either
 31027  // *GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.ServerRespons
 31028  // e.Header or (if a response was returned at all) in
 31029  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 31030  // whether the returned error was because http.StatusNotModified was returned.
 31031  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule, error) {
 31032  	gensupport.SetOptions(c.urlParams_, opts...)
 31033  	res, err := c.doRequest("json")
 31034  	if res != nil && res.StatusCode == http.StatusNotModified {
 31035  		if res.Body != nil {
 31036  			res.Body.Close()
 31037  		}
 31038  		return nil, gensupport.WrapError(&googleapi.Error{
 31039  			Code:   res.StatusCode,
 31040  			Header: res.Header,
 31041  		})
 31042  	}
 31043  	if err != nil {
 31044  		return nil, err
 31045  	}
 31046  	defer googleapi.CloseBody(res)
 31047  	if err := googleapi.CheckResponse(res); err != nil {
 31048  		return nil, gensupport.WrapError(err)
 31049  	}
 31050  	ret := &GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule{
 31051  		ServerResponse: googleapi.ServerResponse{
 31052  			Header:         res.Header,
 31053  			HTTPStatusCode: res.StatusCode,
 31054  		},
 31055  	}
 31056  	target := &ret
 31057  	if err := gensupport.DecodeResponse(target, res); err != nil {
 31058  		return nil, err
 31059  	}
 31060  	return ret, nil
 31061  }
 31062  
 31063  type ProjectsSecurityHealthAnalyticsSettingsCustomModulesSimulateCall struct {
 31064  	s                                                  *Service
 31065  	parent                                             string
 31066  	simulatesecurityhealthanalyticscustommodulerequest *SimulateSecurityHealthAnalyticsCustomModuleRequest
 31067  	urlParams_                                         gensupport.URLParams
 31068  	ctx_                                               context.Context
 31069  	header_                                            http.Header
 31070  }
 31071  
 31072  // Simulate: Simulates a given SecurityHealthAnalyticsCustomModule and
 31073  // Resource.
 31074  //
 31075  //   - parent: The relative resource name of the organization, project, or
 31076  //     folder. For more information about relative resource names, see Relative
 31077  //     Resource Name
 31078  //     (https://cloud.google.com/apis/design/resource_names#relative_resource_name)
 31079  //     Example: `organizations/{organization_id}`.
 31080  func (r *ProjectsSecurityHealthAnalyticsSettingsCustomModulesService) Simulate(parent string, simulatesecurityhealthanalyticscustommodulerequest *SimulateSecurityHealthAnalyticsCustomModuleRequest) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesSimulateCall {
 31081  	c := &ProjectsSecurityHealthAnalyticsSettingsCustomModulesSimulateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 31082  	c.parent = parent
 31083  	c.simulatesecurityhealthanalyticscustommodulerequest = simulatesecurityhealthanalyticscustommodulerequest
 31084  	return c
 31085  }
 31086  
 31087  // Fields allows partial responses to be retrieved. See
 31088  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 31089  // details.
 31090  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesSimulateCall) Fields(s ...googleapi.Field) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesSimulateCall {
 31091  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 31092  	return c
 31093  }
 31094  
 31095  // Context sets the context to be used in this call's Do method.
 31096  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesSimulateCall) Context(ctx context.Context) *ProjectsSecurityHealthAnalyticsSettingsCustomModulesSimulateCall {
 31097  	c.ctx_ = ctx
 31098  	return c
 31099  }
 31100  
 31101  // Header returns a http.Header that can be modified by the caller to add
 31102  // headers to the request.
 31103  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesSimulateCall) Header() http.Header {
 31104  	if c.header_ == nil {
 31105  		c.header_ = make(http.Header)
 31106  	}
 31107  	return c.header_
 31108  }
 31109  
 31110  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesSimulateCall) doRequest(alt string) (*http.Response, error) {
 31111  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 31112  	var body io.Reader = nil
 31113  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.simulatesecurityhealthanalyticscustommodulerequest)
 31114  	if err != nil {
 31115  		return nil, err
 31116  	}
 31117  	c.urlParams_.Set("alt", alt)
 31118  	c.urlParams_.Set("prettyPrint", "false")
 31119  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customModules:simulate")
 31120  	urls += "?" + c.urlParams_.Encode()
 31121  	req, err := http.NewRequest("POST", urls, body)
 31122  	if err != nil {
 31123  		return nil, err
 31124  	}
 31125  	req.Header = reqHeaders
 31126  	googleapi.Expand(req.URL, map[string]string{
 31127  		"parent": c.parent,
 31128  	})
 31129  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 31130  }
 31131  
 31132  // Do executes the "securitycenter.projects.securityHealthAnalyticsSettings.customModules.simulate" call.
 31133  // Any non-2xx status code is an error. Response headers are in either
 31134  // *SimulateSecurityHealthAnalyticsCustomModuleResponse.ServerResponse.Header
 31135  // or (if a response was returned at all) in error.(*googleapi.Error).Header.
 31136  // Use googleapi.IsNotModified to check whether the returned error was because
 31137  // http.StatusNotModified was returned.
 31138  func (c *ProjectsSecurityHealthAnalyticsSettingsCustomModulesSimulateCall) Do(opts ...googleapi.CallOption) (*SimulateSecurityHealthAnalyticsCustomModuleResponse, error) {
 31139  	gensupport.SetOptions(c.urlParams_, opts...)
 31140  	res, err := c.doRequest("json")
 31141  	if res != nil && res.StatusCode == http.StatusNotModified {
 31142  		if res.Body != nil {
 31143  			res.Body.Close()
 31144  		}
 31145  		return nil, gensupport.WrapError(&googleapi.Error{
 31146  			Code:   res.StatusCode,
 31147  			Header: res.Header,
 31148  		})
 31149  	}
 31150  	if err != nil {
 31151  		return nil, err
 31152  	}
 31153  	defer googleapi.CloseBody(res)
 31154  	if err := googleapi.CheckResponse(res); err != nil {
 31155  		return nil, gensupport.WrapError(err)
 31156  	}
 31157  	ret := &SimulateSecurityHealthAnalyticsCustomModuleResponse{
 31158  		ServerResponse: googleapi.ServerResponse{
 31159  			Header:         res.Header,
 31160  			HTTPStatusCode: res.StatusCode,
 31161  		},
 31162  	}
 31163  	target := &ret
 31164  	if err := gensupport.DecodeResponse(target, res); err != nil {
 31165  		return nil, err
 31166  	}
 31167  	return ret, nil
 31168  }
 31169  
 31170  type ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall struct {
 31171  	s            *Service
 31172  	name         string
 31173  	urlParams_   gensupport.URLParams
 31174  	ifNoneMatch_ string
 31175  	ctx_         context.Context
 31176  	header_      http.Header
 31177  }
 31178  
 31179  // Get: Retrieves an EffectiveSecurityHealthAnalyticsCustomModule.
 31180  //
 31181  //   - name: Name of the effective custom module to get. Its format is
 31182  //     "organizations/{organization}/securityHealthAnalyticsSettings/effectiveCust
 31183  //     omModules/{customModule}",
 31184  //     "folders/{folder}/securityHealthAnalyticsSettings/effectiveCustomModules/{c
 31185  //     ustomModule}", or
 31186  //     "projects/{project}/securityHealthAnalyticsSettings/effectiveCustomModules/
 31187  //     {customModule}".
 31188  func (r *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesService) Get(name string) *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall {
 31189  	c := &ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 31190  	c.name = name
 31191  	return c
 31192  }
 31193  
 31194  // Fields allows partial responses to be retrieved. See
 31195  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 31196  // details.
 31197  func (c *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall) Fields(s ...googleapi.Field) *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall {
 31198  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 31199  	return c
 31200  }
 31201  
 31202  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 31203  // object's ETag matches the given value. This is useful for getting updates
 31204  // only after the object has changed since the last request.
 31205  func (c *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall) IfNoneMatch(entityTag string) *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall {
 31206  	c.ifNoneMatch_ = entityTag
 31207  	return c
 31208  }
 31209  
 31210  // Context sets the context to be used in this call's Do method.
 31211  func (c *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall) Context(ctx context.Context) *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall {
 31212  	c.ctx_ = ctx
 31213  	return c
 31214  }
 31215  
 31216  // Header returns a http.Header that can be modified by the caller to add
 31217  // headers to the request.
 31218  func (c *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall) Header() http.Header {
 31219  	if c.header_ == nil {
 31220  		c.header_ = make(http.Header)
 31221  	}
 31222  	return c.header_
 31223  }
 31224  
 31225  func (c *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall) doRequest(alt string) (*http.Response, error) {
 31226  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 31227  	if c.ifNoneMatch_ != "" {
 31228  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 31229  	}
 31230  	var body io.Reader = nil
 31231  	c.urlParams_.Set("alt", alt)
 31232  	c.urlParams_.Set("prettyPrint", "false")
 31233  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 31234  	urls += "?" + c.urlParams_.Encode()
 31235  	req, err := http.NewRequest("GET", urls, body)
 31236  	if err != nil {
 31237  		return nil, err
 31238  	}
 31239  	req.Header = reqHeaders
 31240  	googleapi.Expand(req.URL, map[string]string{
 31241  		"name": c.name,
 31242  	})
 31243  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 31244  }
 31245  
 31246  // Do executes the "securitycenter.projects.securityHealthAnalyticsSettings.effectiveCustomModules.get" call.
 31247  // Any non-2xx status code is an error. Response headers are in either
 31248  // *GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.Serv
 31249  // erResponse.Header or (if a response was returned at all) in
 31250  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 31251  // whether the returned error was because http.StatusNotModified was returned.
 31252  func (c *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule, error) {
 31253  	gensupport.SetOptions(c.urlParams_, opts...)
 31254  	res, err := c.doRequest("json")
 31255  	if res != nil && res.StatusCode == http.StatusNotModified {
 31256  		if res.Body != nil {
 31257  			res.Body.Close()
 31258  		}
 31259  		return nil, gensupport.WrapError(&googleapi.Error{
 31260  			Code:   res.StatusCode,
 31261  			Header: res.Header,
 31262  		})
 31263  	}
 31264  	if err != nil {
 31265  		return nil, err
 31266  	}
 31267  	defer googleapi.CloseBody(res)
 31268  	if err := googleapi.CheckResponse(res); err != nil {
 31269  		return nil, gensupport.WrapError(err)
 31270  	}
 31271  	ret := &GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule{
 31272  		ServerResponse: googleapi.ServerResponse{
 31273  			Header:         res.Header,
 31274  			HTTPStatusCode: res.StatusCode,
 31275  		},
 31276  	}
 31277  	target := &ret
 31278  	if err := gensupport.DecodeResponse(target, res); err != nil {
 31279  		return nil, err
 31280  	}
 31281  	return ret, nil
 31282  }
 31283  
 31284  type ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall struct {
 31285  	s            *Service
 31286  	parent       string
 31287  	urlParams_   gensupport.URLParams
 31288  	ifNoneMatch_ string
 31289  	ctx_         context.Context
 31290  	header_      http.Header
 31291  }
 31292  
 31293  // List: Returns a list of all EffectiveSecurityHealthAnalyticsCustomModules
 31294  // for the given parent. This includes resident modules defined at the scope of
 31295  // the parent, and inherited modules, inherited from CRM ancestors.
 31296  //
 31297  //   - parent: Name of parent to list effective custom modules. Its format is
 31298  //     "organizations/{organization}/securityHealthAnalyticsSettings",
 31299  //     "folders/{folder}/securityHealthAnalyticsSettings", or
 31300  //     "projects/{project}/securityHealthAnalyticsSettings".
 31301  func (r *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesService) List(parent string) *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall {
 31302  	c := &ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 31303  	c.parent = parent
 31304  	return c
 31305  }
 31306  
 31307  // PageSize sets the optional parameter "pageSize": The maximum number of
 31308  // results to return in a single response. Default is 10, minimum is 1, maximum
 31309  // is 1000.
 31310  func (c *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) PageSize(pageSize int64) *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall {
 31311  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 31312  	return c
 31313  }
 31314  
 31315  // PageToken sets the optional parameter "pageToken": The value returned by the
 31316  // last call indicating a continuation
 31317  func (c *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) PageToken(pageToken string) *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall {
 31318  	c.urlParams_.Set("pageToken", pageToken)
 31319  	return c
 31320  }
 31321  
 31322  // Fields allows partial responses to be retrieved. See
 31323  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 31324  // details.
 31325  func (c *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) Fields(s ...googleapi.Field) *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall {
 31326  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 31327  	return c
 31328  }
 31329  
 31330  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 31331  // object's ETag matches the given value. This is useful for getting updates
 31332  // only after the object has changed since the last request.
 31333  func (c *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) IfNoneMatch(entityTag string) *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall {
 31334  	c.ifNoneMatch_ = entityTag
 31335  	return c
 31336  }
 31337  
 31338  // Context sets the context to be used in this call's Do method.
 31339  func (c *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) Context(ctx context.Context) *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall {
 31340  	c.ctx_ = ctx
 31341  	return c
 31342  }
 31343  
 31344  // Header returns a http.Header that can be modified by the caller to add
 31345  // headers to the request.
 31346  func (c *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) Header() http.Header {
 31347  	if c.header_ == nil {
 31348  		c.header_ = make(http.Header)
 31349  	}
 31350  	return c.header_
 31351  }
 31352  
 31353  func (c *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) doRequest(alt string) (*http.Response, error) {
 31354  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 31355  	if c.ifNoneMatch_ != "" {
 31356  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 31357  	}
 31358  	var body io.Reader = nil
 31359  	c.urlParams_.Set("alt", alt)
 31360  	c.urlParams_.Set("prettyPrint", "false")
 31361  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/effectiveCustomModules")
 31362  	urls += "?" + c.urlParams_.Encode()
 31363  	req, err := http.NewRequest("GET", urls, body)
 31364  	if err != nil {
 31365  		return nil, err
 31366  	}
 31367  	req.Header = reqHeaders
 31368  	googleapi.Expand(req.URL, map[string]string{
 31369  		"parent": c.parent,
 31370  	})
 31371  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 31372  }
 31373  
 31374  // Do executes the "securitycenter.projects.securityHealthAnalyticsSettings.effectiveCustomModules.list" call.
 31375  // Any non-2xx status code is an error. Response headers are in either
 31376  // *ListEffectiveSecurityHealthAnalyticsCustomModulesResponse.ServerResponse.Hea
 31377  // der or (if a response was returned at all) in
 31378  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 31379  // whether the returned error was because http.StatusNotModified was returned.
 31380  func (c *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) Do(opts ...googleapi.CallOption) (*ListEffectiveSecurityHealthAnalyticsCustomModulesResponse, error) {
 31381  	gensupport.SetOptions(c.urlParams_, opts...)
 31382  	res, err := c.doRequest("json")
 31383  	if res != nil && res.StatusCode == http.StatusNotModified {
 31384  		if res.Body != nil {
 31385  			res.Body.Close()
 31386  		}
 31387  		return nil, gensupport.WrapError(&googleapi.Error{
 31388  			Code:   res.StatusCode,
 31389  			Header: res.Header,
 31390  		})
 31391  	}
 31392  	if err != nil {
 31393  		return nil, err
 31394  	}
 31395  	defer googleapi.CloseBody(res)
 31396  	if err := googleapi.CheckResponse(res); err != nil {
 31397  		return nil, gensupport.WrapError(err)
 31398  	}
 31399  	ret := &ListEffectiveSecurityHealthAnalyticsCustomModulesResponse{
 31400  		ServerResponse: googleapi.ServerResponse{
 31401  			Header:         res.Header,
 31402  			HTTPStatusCode: res.StatusCode,
 31403  		},
 31404  	}
 31405  	target := &ret
 31406  	if err := gensupport.DecodeResponse(target, res); err != nil {
 31407  		return nil, err
 31408  	}
 31409  	return ret, nil
 31410  }
 31411  
 31412  // Pages invokes f for each page of results.
 31413  // A non-nil error returned from f will halt the iteration.
 31414  // The provided context supersedes any context provided to the Context method.
 31415  func (c *ProjectsSecurityHealthAnalyticsSettingsEffectiveCustomModulesListCall) Pages(ctx context.Context, f func(*ListEffectiveSecurityHealthAnalyticsCustomModulesResponse) error) error {
 31416  	c.ctx_ = ctx
 31417  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 31418  	for {
 31419  		x, err := c.Do()
 31420  		if err != nil {
 31421  			return err
 31422  		}
 31423  		if err := f(x); err != nil {
 31424  			return err
 31425  		}
 31426  		if x.NextPageToken == "" {
 31427  			return nil
 31428  		}
 31429  		c.PageToken(x.NextPageToken)
 31430  	}
 31431  }
 31432  
 31433  type ProjectsSourcesListCall struct {
 31434  	s            *Service
 31435  	parent       string
 31436  	urlParams_   gensupport.URLParams
 31437  	ifNoneMatch_ string
 31438  	ctx_         context.Context
 31439  	header_      http.Header
 31440  }
 31441  
 31442  // List: Lists all sources belonging to an organization.
 31443  //
 31444  //   - parent: Resource name of the parent of sources to list. Its format should
 31445  //     be "organizations/[organization_id]", "folders/[folder_id]", or
 31446  //     "projects/[project_id]".
 31447  func (r *ProjectsSourcesService) List(parent string) *ProjectsSourcesListCall {
 31448  	c := &ProjectsSourcesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 31449  	c.parent = parent
 31450  	return c
 31451  }
 31452  
 31453  // PageSize sets the optional parameter "pageSize": The maximum number of
 31454  // results to return in a single response. Default is 10, minimum is 1, maximum
 31455  // is 1000.
 31456  func (c *ProjectsSourcesListCall) PageSize(pageSize int64) *ProjectsSourcesListCall {
 31457  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 31458  	return c
 31459  }
 31460  
 31461  // PageToken sets the optional parameter "pageToken": The value returned by the
 31462  // last `ListSourcesResponse`; indicates that this is a continuation of a prior
 31463  // `ListSources` call, and that the system should return the next page of data.
 31464  func (c *ProjectsSourcesListCall) PageToken(pageToken string) *ProjectsSourcesListCall {
 31465  	c.urlParams_.Set("pageToken", pageToken)
 31466  	return c
 31467  }
 31468  
 31469  // Fields allows partial responses to be retrieved. See
 31470  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 31471  // details.
 31472  func (c *ProjectsSourcesListCall) Fields(s ...googleapi.Field) *ProjectsSourcesListCall {
 31473  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 31474  	return c
 31475  }
 31476  
 31477  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 31478  // object's ETag matches the given value. This is useful for getting updates
 31479  // only after the object has changed since the last request.
 31480  func (c *ProjectsSourcesListCall) IfNoneMatch(entityTag string) *ProjectsSourcesListCall {
 31481  	c.ifNoneMatch_ = entityTag
 31482  	return c
 31483  }
 31484  
 31485  // Context sets the context to be used in this call's Do method.
 31486  func (c *ProjectsSourcesListCall) Context(ctx context.Context) *ProjectsSourcesListCall {
 31487  	c.ctx_ = ctx
 31488  	return c
 31489  }
 31490  
 31491  // Header returns a http.Header that can be modified by the caller to add
 31492  // headers to the request.
 31493  func (c *ProjectsSourcesListCall) Header() http.Header {
 31494  	if c.header_ == nil {
 31495  		c.header_ = make(http.Header)
 31496  	}
 31497  	return c.header_
 31498  }
 31499  
 31500  func (c *ProjectsSourcesListCall) doRequest(alt string) (*http.Response, error) {
 31501  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 31502  	if c.ifNoneMatch_ != "" {
 31503  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 31504  	}
 31505  	var body io.Reader = nil
 31506  	c.urlParams_.Set("alt", alt)
 31507  	c.urlParams_.Set("prettyPrint", "false")
 31508  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/sources")
 31509  	urls += "?" + c.urlParams_.Encode()
 31510  	req, err := http.NewRequest("GET", urls, body)
 31511  	if err != nil {
 31512  		return nil, err
 31513  	}
 31514  	req.Header = reqHeaders
 31515  	googleapi.Expand(req.URL, map[string]string{
 31516  		"parent": c.parent,
 31517  	})
 31518  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 31519  }
 31520  
 31521  // Do executes the "securitycenter.projects.sources.list" call.
 31522  // Any non-2xx status code is an error. Response headers are in either
 31523  // *ListSourcesResponse.ServerResponse.Header or (if a response was returned at
 31524  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 31525  // check whether the returned error was because http.StatusNotModified was
 31526  // returned.
 31527  func (c *ProjectsSourcesListCall) Do(opts ...googleapi.CallOption) (*ListSourcesResponse, error) {
 31528  	gensupport.SetOptions(c.urlParams_, opts...)
 31529  	res, err := c.doRequest("json")
 31530  	if res != nil && res.StatusCode == http.StatusNotModified {
 31531  		if res.Body != nil {
 31532  			res.Body.Close()
 31533  		}
 31534  		return nil, gensupport.WrapError(&googleapi.Error{
 31535  			Code:   res.StatusCode,
 31536  			Header: res.Header,
 31537  		})
 31538  	}
 31539  	if err != nil {
 31540  		return nil, err
 31541  	}
 31542  	defer googleapi.CloseBody(res)
 31543  	if err := googleapi.CheckResponse(res); err != nil {
 31544  		return nil, gensupport.WrapError(err)
 31545  	}
 31546  	ret := &ListSourcesResponse{
 31547  		ServerResponse: googleapi.ServerResponse{
 31548  			Header:         res.Header,
 31549  			HTTPStatusCode: res.StatusCode,
 31550  		},
 31551  	}
 31552  	target := &ret
 31553  	if err := gensupport.DecodeResponse(target, res); err != nil {
 31554  		return nil, err
 31555  	}
 31556  	return ret, nil
 31557  }
 31558  
 31559  // Pages invokes f for each page of results.
 31560  // A non-nil error returned from f will halt the iteration.
 31561  // The provided context supersedes any context provided to the Context method.
 31562  func (c *ProjectsSourcesListCall) Pages(ctx context.Context, f func(*ListSourcesResponse) error) error {
 31563  	c.ctx_ = ctx
 31564  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 31565  	for {
 31566  		x, err := c.Do()
 31567  		if err != nil {
 31568  			return err
 31569  		}
 31570  		if err := f(x); err != nil {
 31571  			return err
 31572  		}
 31573  		if x.NextPageToken == "" {
 31574  			return nil
 31575  		}
 31576  		c.PageToken(x.NextPageToken)
 31577  	}
 31578  }
 31579  
 31580  type ProjectsSourcesFindingsGroupCall struct {
 31581  	s                    *Service
 31582  	parent               string
 31583  	groupfindingsrequest *GroupFindingsRequest
 31584  	urlParams_           gensupport.URLParams
 31585  	ctx_                 context.Context
 31586  	header_              http.Header
 31587  }
 31588  
 31589  // Group: Filters an organization or source's findings and groups them by their
 31590  // specified properties. To group across all sources provide a `-` as the
 31591  // source id. Example: /v1/organizations/{organization_id}/sources/-/findings,
 31592  // /v1/folders/{folder_id}/sources/-/findings,
 31593  // /v1/projects/{project_id}/sources/-/findings
 31594  //
 31595  //   - parent: Name of the source to groupBy. Its format is
 31596  //     "organizations/[organization_id]/sources/[source_id]",
 31597  //     folders/[folder_id]/sources/[source_id], or
 31598  //     projects/[project_id]/sources/[source_id]. To groupBy across all sources
 31599  //     provide a source_id of `-`. For example:
 31600  //     organizations/{organization_id}/sources/-, folders/{folder_id}/sources/-,
 31601  //     or projects/{project_id}/sources/-.
 31602  func (r *ProjectsSourcesFindingsService) Group(parent string, groupfindingsrequest *GroupFindingsRequest) *ProjectsSourcesFindingsGroupCall {
 31603  	c := &ProjectsSourcesFindingsGroupCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 31604  	c.parent = parent
 31605  	c.groupfindingsrequest = groupfindingsrequest
 31606  	return c
 31607  }
 31608  
 31609  // Fields allows partial responses to be retrieved. See
 31610  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 31611  // details.
 31612  func (c *ProjectsSourcesFindingsGroupCall) Fields(s ...googleapi.Field) *ProjectsSourcesFindingsGroupCall {
 31613  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 31614  	return c
 31615  }
 31616  
 31617  // Context sets the context to be used in this call's Do method.
 31618  func (c *ProjectsSourcesFindingsGroupCall) Context(ctx context.Context) *ProjectsSourcesFindingsGroupCall {
 31619  	c.ctx_ = ctx
 31620  	return c
 31621  }
 31622  
 31623  // Header returns a http.Header that can be modified by the caller to add
 31624  // headers to the request.
 31625  func (c *ProjectsSourcesFindingsGroupCall) Header() http.Header {
 31626  	if c.header_ == nil {
 31627  		c.header_ = make(http.Header)
 31628  	}
 31629  	return c.header_
 31630  }
 31631  
 31632  func (c *ProjectsSourcesFindingsGroupCall) doRequest(alt string) (*http.Response, error) {
 31633  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 31634  	var body io.Reader = nil
 31635  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.groupfindingsrequest)
 31636  	if err != nil {
 31637  		return nil, err
 31638  	}
 31639  	c.urlParams_.Set("alt", alt)
 31640  	c.urlParams_.Set("prettyPrint", "false")
 31641  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/findings:group")
 31642  	urls += "?" + c.urlParams_.Encode()
 31643  	req, err := http.NewRequest("POST", urls, body)
 31644  	if err != nil {
 31645  		return nil, err
 31646  	}
 31647  	req.Header = reqHeaders
 31648  	googleapi.Expand(req.URL, map[string]string{
 31649  		"parent": c.parent,
 31650  	})
 31651  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 31652  }
 31653  
 31654  // Do executes the "securitycenter.projects.sources.findings.group" call.
 31655  // Any non-2xx status code is an error. Response headers are in either
 31656  // *GroupFindingsResponse.ServerResponse.Header or (if a response was returned
 31657  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 31658  // check whether the returned error was because http.StatusNotModified was
 31659  // returned.
 31660  func (c *ProjectsSourcesFindingsGroupCall) Do(opts ...googleapi.CallOption) (*GroupFindingsResponse, error) {
 31661  	gensupport.SetOptions(c.urlParams_, opts...)
 31662  	res, err := c.doRequest("json")
 31663  	if res != nil && res.StatusCode == http.StatusNotModified {
 31664  		if res.Body != nil {
 31665  			res.Body.Close()
 31666  		}
 31667  		return nil, gensupport.WrapError(&googleapi.Error{
 31668  			Code:   res.StatusCode,
 31669  			Header: res.Header,
 31670  		})
 31671  	}
 31672  	if err != nil {
 31673  		return nil, err
 31674  	}
 31675  	defer googleapi.CloseBody(res)
 31676  	if err := googleapi.CheckResponse(res); err != nil {
 31677  		return nil, gensupport.WrapError(err)
 31678  	}
 31679  	ret := &GroupFindingsResponse{
 31680  		ServerResponse: googleapi.ServerResponse{
 31681  			Header:         res.Header,
 31682  			HTTPStatusCode: res.StatusCode,
 31683  		},
 31684  	}
 31685  	target := &ret
 31686  	if err := gensupport.DecodeResponse(target, res); err != nil {
 31687  		return nil, err
 31688  	}
 31689  	return ret, nil
 31690  }
 31691  
 31692  // Pages invokes f for each page of results.
 31693  // A non-nil error returned from f will halt the iteration.
 31694  // The provided context supersedes any context provided to the Context method.
 31695  func (c *ProjectsSourcesFindingsGroupCall) Pages(ctx context.Context, f func(*GroupFindingsResponse) error) error {
 31696  	c.ctx_ = ctx
 31697  	defer func(pt string) { c.groupfindingsrequest.PageToken = pt }(c.groupfindingsrequest.PageToken)
 31698  	for {
 31699  		x, err := c.Do()
 31700  		if err != nil {
 31701  			return err
 31702  		}
 31703  		if err := f(x); err != nil {
 31704  			return err
 31705  		}
 31706  		if x.NextPageToken == "" {
 31707  			return nil
 31708  		}
 31709  		c.groupfindingsrequest.PageToken = x.NextPageToken
 31710  	}
 31711  }
 31712  
 31713  type ProjectsSourcesFindingsListCall struct {
 31714  	s            *Service
 31715  	parent       string
 31716  	urlParams_   gensupport.URLParams
 31717  	ifNoneMatch_ string
 31718  	ctx_         context.Context
 31719  	header_      http.Header
 31720  }
 31721  
 31722  // List: Lists an organization or source's findings. To list across all sources
 31723  // provide a `-` as the source id. Example:
 31724  // /v1/organizations/{organization_id}/sources/-/findings
 31725  //
 31726  //   - parent: Name of the source the findings belong to. Its format is
 31727  //     "organizations/[organization_id]/sources/[source_id],
 31728  //     folders/[folder_id]/sources/[source_id], or
 31729  //     projects/[project_id]/sources/[source_id]". To list across all sources
 31730  //     provide a source_id of `-`. For example:
 31731  //     organizations/{organization_id}/sources/-, folders/{folder_id}/sources/-
 31732  //     or projects/{projects_id}/sources/-.
 31733  func (r *ProjectsSourcesFindingsService) List(parent string) *ProjectsSourcesFindingsListCall {
 31734  	c := &ProjectsSourcesFindingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 31735  	c.parent = parent
 31736  	return c
 31737  }
 31738  
 31739  // CompareDuration sets the optional parameter "compareDuration": When
 31740  // compare_duration is set, the ListFindingsResult's "state_change" attribute
 31741  // is updated to indicate whether the finding had its state changed, the
 31742  // finding's state remained unchanged, or if the finding was added in any state
 31743  // during the compare_duration period of time that precedes the read_time. This
 31744  // is the time between (read_time - compare_duration) and read_time. The
 31745  // state_change value is derived based on the presence and state of the finding
 31746  // at the two points in time. Intermediate state changes between the two times
 31747  // don't affect the result. For example, the results aren't affected if the
 31748  // finding is made inactive and then active again. Possible "state_change"
 31749  // values when compare_duration is specified: * "CHANGED": indicates that the
 31750  // finding was present and matched the given filter at the start of
 31751  // compare_duration, but changed its state at read_time. * "UNCHANGED":
 31752  // indicates that the finding was present and matched the given filter at the
 31753  // start of compare_duration and did not change state at read_time. * "ADDED":
 31754  // indicates that the finding did not match the given filter or was not present
 31755  // at the start of compare_duration, but was present at read_time. * "REMOVED":
 31756  // indicates that the finding was present and matched the filter at the start
 31757  // of compare_duration, but did not match the filter at read_time. If
 31758  // compare_duration is not specified, then the only possible state_change is
 31759  // "UNUSED", which will be the state_change set for all findings present at
 31760  // read_time.
 31761  func (c *ProjectsSourcesFindingsListCall) CompareDuration(compareDuration string) *ProjectsSourcesFindingsListCall {
 31762  	c.urlParams_.Set("compareDuration", compareDuration)
 31763  	return c
 31764  }
 31765  
 31766  // FieldMask sets the optional parameter "fieldMask": A field mask to specify
 31767  // the Finding fields to be listed in the response. An empty field mask will
 31768  // list all fields.
 31769  func (c *ProjectsSourcesFindingsListCall) FieldMask(fieldMask string) *ProjectsSourcesFindingsListCall {
 31770  	c.urlParams_.Set("fieldMask", fieldMask)
 31771  	return c
 31772  }
 31773  
 31774  // Filter sets the optional parameter "filter": Expression that defines the
 31775  // filter to apply across findings. The expression is a list of one or more
 31776  // restrictions combined via logical operators `AND` and `OR`. Parentheses are
 31777  // supported, and `OR` has higher precedence than `AND`. Restrictions have the
 31778  // form ` ` and may have a `-` character in front of them to indicate negation.
 31779  // Examples include: * name * source_properties.a_property *
 31780  // security_marks.marks.marka The supported operators are: * `=` for all value
 31781  // types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring
 31782  // matching, for strings. The supported value types are: * string literals in
 31783  // quotes. * integer literals without quotes. * boolean literals `true` and
 31784  // `false` without quotes. The following field and operator combinations are
 31785  // supported: * name: `=` * parent: `=`, `:` * resource_name: `=`, `:` * state:
 31786  // `=`, `:` * category: `=`, `:` * external_uri: `=`, `:` * event_time: `=`,
 31787  // `>`, `<`, `>=`, `<=` Usage: This should be milliseconds since epoch or an
 31788  // RFC3339 string. Examples: `event_time = "2019-06-10T16:07:18-07:00"
 31789  // `event_time = 1560208038000` * severity: `=`, `:` * workflow_state: `=`, `:`
 31790  // * security_marks.marks: `=`, `:` * source_properties: `=`, `:`, `>`, `<`,
 31791  // `>=`, `<=` For example, `source_properties.size = 100` is a valid filter
 31792  // string. Use a partial match on the empty string to filter based on a
 31793  // property existing: `source_properties.my_property : "" Use a negated
 31794  // partial match on the empty string to filter based on a property not
 31795  // existing: `-source_properties.my_property : "" * resource: * resource.name:
 31796  // `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name:
 31797  // `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name:
 31798  // `=`, `:` * resource.type: `=`, `:` * resource.folders.resource_folder: `=`,
 31799  // `:` * resource.display_name: `=`, `:`
 31800  func (c *ProjectsSourcesFindingsListCall) Filter(filter string) *ProjectsSourcesFindingsListCall {
 31801  	c.urlParams_.Set("filter", filter)
 31802  	return c
 31803  }
 31804  
 31805  // OrderBy sets the optional parameter "orderBy": Expression that defines what
 31806  // fields and order to use for sorting. The string value should follow SQL
 31807  // syntax: comma separated list of fields. For example:
 31808  // "name,resource_properties.a_property". The default sorting order is
 31809  // ascending. To specify descending order for a field, a suffix " desc" should
 31810  // be appended to the field name. For example: "name
 31811  // desc,source_properties.a_property". Redundant space characters in the syntax
 31812  // are insignificant. "name desc,source_properties.a_property" and " name desc
 31813  // , source_properties.a_property " are equivalent. The following fields are
 31814  // supported: name parent state category resource_name event_time
 31815  // source_properties security_marks.marks
 31816  func (c *ProjectsSourcesFindingsListCall) OrderBy(orderBy string) *ProjectsSourcesFindingsListCall {
 31817  	c.urlParams_.Set("orderBy", orderBy)
 31818  	return c
 31819  }
 31820  
 31821  // PageSize sets the optional parameter "pageSize": The maximum number of
 31822  // results to return in a single response. Default is 10, minimum is 1, maximum
 31823  // is 1000.
 31824  func (c *ProjectsSourcesFindingsListCall) PageSize(pageSize int64) *ProjectsSourcesFindingsListCall {
 31825  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 31826  	return c
 31827  }
 31828  
 31829  // PageToken sets the optional parameter "pageToken": The value returned by the
 31830  // last `ListFindingsResponse`; indicates that this is a continuation of a
 31831  // prior `ListFindings` call, and that the system should return the next page
 31832  // of data.
 31833  func (c *ProjectsSourcesFindingsListCall) PageToken(pageToken string) *ProjectsSourcesFindingsListCall {
 31834  	c.urlParams_.Set("pageToken", pageToken)
 31835  	return c
 31836  }
 31837  
 31838  // ReadTime sets the optional parameter "readTime": Time used as a reference
 31839  // point when filtering findings. The filter is limited to findings existing at
 31840  // the supplied time and their values are those at that specific time. Absence
 31841  // of this field will default to the API's version of NOW.
 31842  func (c *ProjectsSourcesFindingsListCall) ReadTime(readTime string) *ProjectsSourcesFindingsListCall {
 31843  	c.urlParams_.Set("readTime", readTime)
 31844  	return c
 31845  }
 31846  
 31847  // Fields allows partial responses to be retrieved. See
 31848  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 31849  // details.
 31850  func (c *ProjectsSourcesFindingsListCall) Fields(s ...googleapi.Field) *ProjectsSourcesFindingsListCall {
 31851  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 31852  	return c
 31853  }
 31854  
 31855  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 31856  // object's ETag matches the given value. This is useful for getting updates
 31857  // only after the object has changed since the last request.
 31858  func (c *ProjectsSourcesFindingsListCall) IfNoneMatch(entityTag string) *ProjectsSourcesFindingsListCall {
 31859  	c.ifNoneMatch_ = entityTag
 31860  	return c
 31861  }
 31862  
 31863  // Context sets the context to be used in this call's Do method.
 31864  func (c *ProjectsSourcesFindingsListCall) Context(ctx context.Context) *ProjectsSourcesFindingsListCall {
 31865  	c.ctx_ = ctx
 31866  	return c
 31867  }
 31868  
 31869  // Header returns a http.Header that can be modified by the caller to add
 31870  // headers to the request.
 31871  func (c *ProjectsSourcesFindingsListCall) Header() http.Header {
 31872  	if c.header_ == nil {
 31873  		c.header_ = make(http.Header)
 31874  	}
 31875  	return c.header_
 31876  }
 31877  
 31878  func (c *ProjectsSourcesFindingsListCall) doRequest(alt string) (*http.Response, error) {
 31879  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 31880  	if c.ifNoneMatch_ != "" {
 31881  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 31882  	}
 31883  	var body io.Reader = nil
 31884  	c.urlParams_.Set("alt", alt)
 31885  	c.urlParams_.Set("prettyPrint", "false")
 31886  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/findings")
 31887  	urls += "?" + c.urlParams_.Encode()
 31888  	req, err := http.NewRequest("GET", urls, body)
 31889  	if err != nil {
 31890  		return nil, err
 31891  	}
 31892  	req.Header = reqHeaders
 31893  	googleapi.Expand(req.URL, map[string]string{
 31894  		"parent": c.parent,
 31895  	})
 31896  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 31897  }
 31898  
 31899  // Do executes the "securitycenter.projects.sources.findings.list" call.
 31900  // Any non-2xx status code is an error. Response headers are in either
 31901  // *ListFindingsResponse.ServerResponse.Header or (if a response was returned
 31902  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 31903  // check whether the returned error was because http.StatusNotModified was
 31904  // returned.
 31905  func (c *ProjectsSourcesFindingsListCall) Do(opts ...googleapi.CallOption) (*ListFindingsResponse, error) {
 31906  	gensupport.SetOptions(c.urlParams_, opts...)
 31907  	res, err := c.doRequest("json")
 31908  	if res != nil && res.StatusCode == http.StatusNotModified {
 31909  		if res.Body != nil {
 31910  			res.Body.Close()
 31911  		}
 31912  		return nil, gensupport.WrapError(&googleapi.Error{
 31913  			Code:   res.StatusCode,
 31914  			Header: res.Header,
 31915  		})
 31916  	}
 31917  	if err != nil {
 31918  		return nil, err
 31919  	}
 31920  	defer googleapi.CloseBody(res)
 31921  	if err := googleapi.CheckResponse(res); err != nil {
 31922  		return nil, gensupport.WrapError(err)
 31923  	}
 31924  	ret := &ListFindingsResponse{
 31925  		ServerResponse: googleapi.ServerResponse{
 31926  			Header:         res.Header,
 31927  			HTTPStatusCode: res.StatusCode,
 31928  		},
 31929  	}
 31930  	target := &ret
 31931  	if err := gensupport.DecodeResponse(target, res); err != nil {
 31932  		return nil, err
 31933  	}
 31934  	return ret, nil
 31935  }
 31936  
 31937  // Pages invokes f for each page of results.
 31938  // A non-nil error returned from f will halt the iteration.
 31939  // The provided context supersedes any context provided to the Context method.
 31940  func (c *ProjectsSourcesFindingsListCall) Pages(ctx context.Context, f func(*ListFindingsResponse) error) error {
 31941  	c.ctx_ = ctx
 31942  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 31943  	for {
 31944  		x, err := c.Do()
 31945  		if err != nil {
 31946  			return err
 31947  		}
 31948  		if err := f(x); err != nil {
 31949  			return err
 31950  		}
 31951  		if x.NextPageToken == "" {
 31952  			return nil
 31953  		}
 31954  		c.PageToken(x.NextPageToken)
 31955  	}
 31956  }
 31957  
 31958  type ProjectsSourcesFindingsPatchCall struct {
 31959  	s          *Service
 31960  	name       string
 31961  	finding    *Finding
 31962  	urlParams_ gensupport.URLParams
 31963  	ctx_       context.Context
 31964  	header_    http.Header
 31965  }
 31966  
 31967  // Patch: Creates or updates a finding. The corresponding source must exist for
 31968  // a finding creation to succeed.
 31969  //
 31970  //   - name: The relative resource name
 31971  //     (https://cloud.google.com/apis/design/resource_names#relative_resource_name)
 31972  //     of the finding. Example:
 31973  //     "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}"
 31974  //     , "folders/{folder_id}/sources/{source_id}/findings/{finding_id}",
 31975  //     "projects/{project_id}/sources/{source_id}/findings/{finding_id}".
 31976  func (r *ProjectsSourcesFindingsService) Patch(name string, finding *Finding) *ProjectsSourcesFindingsPatchCall {
 31977  	c := &ProjectsSourcesFindingsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 31978  	c.name = name
 31979  	c.finding = finding
 31980  	return c
 31981  }
 31982  
 31983  // UpdateMask sets the optional parameter "updateMask": The FieldMask to use
 31984  // when updating the finding resource. This field should not be specified when
 31985  // creating a finding. When updating a finding, an empty mask is treated as
 31986  // updating all mutable fields and replacing source_properties. Individual
 31987  // source_properties can be added/updated by using "source_properties." in the
 31988  // field mask.
 31989  func (c *ProjectsSourcesFindingsPatchCall) UpdateMask(updateMask string) *ProjectsSourcesFindingsPatchCall {
 31990  	c.urlParams_.Set("updateMask", updateMask)
 31991  	return c
 31992  }
 31993  
 31994  // Fields allows partial responses to be retrieved. See
 31995  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 31996  // details.
 31997  func (c *ProjectsSourcesFindingsPatchCall) Fields(s ...googleapi.Field) *ProjectsSourcesFindingsPatchCall {
 31998  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 31999  	return c
 32000  }
 32001  
 32002  // Context sets the context to be used in this call's Do method.
 32003  func (c *ProjectsSourcesFindingsPatchCall) Context(ctx context.Context) *ProjectsSourcesFindingsPatchCall {
 32004  	c.ctx_ = ctx
 32005  	return c
 32006  }
 32007  
 32008  // Header returns a http.Header that can be modified by the caller to add
 32009  // headers to the request.
 32010  func (c *ProjectsSourcesFindingsPatchCall) Header() http.Header {
 32011  	if c.header_ == nil {
 32012  		c.header_ = make(http.Header)
 32013  	}
 32014  	return c.header_
 32015  }
 32016  
 32017  func (c *ProjectsSourcesFindingsPatchCall) doRequest(alt string) (*http.Response, error) {
 32018  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 32019  	var body io.Reader = nil
 32020  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.finding)
 32021  	if err != nil {
 32022  		return nil, err
 32023  	}
 32024  	c.urlParams_.Set("alt", alt)
 32025  	c.urlParams_.Set("prettyPrint", "false")
 32026  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 32027  	urls += "?" + c.urlParams_.Encode()
 32028  	req, err := http.NewRequest("PATCH", urls, body)
 32029  	if err != nil {
 32030  		return nil, err
 32031  	}
 32032  	req.Header = reqHeaders
 32033  	googleapi.Expand(req.URL, map[string]string{
 32034  		"name": c.name,
 32035  	})
 32036  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 32037  }
 32038  
 32039  // Do executes the "securitycenter.projects.sources.findings.patch" call.
 32040  // Any non-2xx status code is an error. Response headers are in either
 32041  // *Finding.ServerResponse.Header or (if a response was returned at all) in
 32042  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 32043  // whether the returned error was because http.StatusNotModified was returned.
 32044  func (c *ProjectsSourcesFindingsPatchCall) Do(opts ...googleapi.CallOption) (*Finding, error) {
 32045  	gensupport.SetOptions(c.urlParams_, opts...)
 32046  	res, err := c.doRequest("json")
 32047  	if res != nil && res.StatusCode == http.StatusNotModified {
 32048  		if res.Body != nil {
 32049  			res.Body.Close()
 32050  		}
 32051  		return nil, gensupport.WrapError(&googleapi.Error{
 32052  			Code:   res.StatusCode,
 32053  			Header: res.Header,
 32054  		})
 32055  	}
 32056  	if err != nil {
 32057  		return nil, err
 32058  	}
 32059  	defer googleapi.CloseBody(res)
 32060  	if err := googleapi.CheckResponse(res); err != nil {
 32061  		return nil, gensupport.WrapError(err)
 32062  	}
 32063  	ret := &Finding{
 32064  		ServerResponse: googleapi.ServerResponse{
 32065  			Header:         res.Header,
 32066  			HTTPStatusCode: res.StatusCode,
 32067  		},
 32068  	}
 32069  	target := &ret
 32070  	if err := gensupport.DecodeResponse(target, res); err != nil {
 32071  		return nil, err
 32072  	}
 32073  	return ret, nil
 32074  }
 32075  
 32076  type ProjectsSourcesFindingsSetMuteCall struct {
 32077  	s              *Service
 32078  	name           string
 32079  	setmuterequest *SetMuteRequest
 32080  	urlParams_     gensupport.URLParams
 32081  	ctx_           context.Context
 32082  	header_        http.Header
 32083  }
 32084  
 32085  // SetMute: Updates the mute state of a finding.
 32086  //
 32087  //   - name: The relative resource name
 32088  //     (https://cloud.google.com/apis/design/resource_names#relative_resource_name)
 32089  //     of the finding. Example:
 32090  //     "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}"
 32091  //     , "folders/{folder_id}/sources/{source_id}/findings/{finding_id}",
 32092  //     "projects/{project_id}/sources/{source_id}/findings/{finding_id}".
 32093  func (r *ProjectsSourcesFindingsService) SetMute(name string, setmuterequest *SetMuteRequest) *ProjectsSourcesFindingsSetMuteCall {
 32094  	c := &ProjectsSourcesFindingsSetMuteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 32095  	c.name = name
 32096  	c.setmuterequest = setmuterequest
 32097  	return c
 32098  }
 32099  
 32100  // Fields allows partial responses to be retrieved. See
 32101  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 32102  // details.
 32103  func (c *ProjectsSourcesFindingsSetMuteCall) Fields(s ...googleapi.Field) *ProjectsSourcesFindingsSetMuteCall {
 32104  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 32105  	return c
 32106  }
 32107  
 32108  // Context sets the context to be used in this call's Do method.
 32109  func (c *ProjectsSourcesFindingsSetMuteCall) Context(ctx context.Context) *ProjectsSourcesFindingsSetMuteCall {
 32110  	c.ctx_ = ctx
 32111  	return c
 32112  }
 32113  
 32114  // Header returns a http.Header that can be modified by the caller to add
 32115  // headers to the request.
 32116  func (c *ProjectsSourcesFindingsSetMuteCall) Header() http.Header {
 32117  	if c.header_ == nil {
 32118  		c.header_ = make(http.Header)
 32119  	}
 32120  	return c.header_
 32121  }
 32122  
 32123  func (c *ProjectsSourcesFindingsSetMuteCall) doRequest(alt string) (*http.Response, error) {
 32124  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 32125  	var body io.Reader = nil
 32126  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setmuterequest)
 32127  	if err != nil {
 32128  		return nil, err
 32129  	}
 32130  	c.urlParams_.Set("alt", alt)
 32131  	c.urlParams_.Set("prettyPrint", "false")
 32132  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:setMute")
 32133  	urls += "?" + c.urlParams_.Encode()
 32134  	req, err := http.NewRequest("POST", urls, body)
 32135  	if err != nil {
 32136  		return nil, err
 32137  	}
 32138  	req.Header = reqHeaders
 32139  	googleapi.Expand(req.URL, map[string]string{
 32140  		"name": c.name,
 32141  	})
 32142  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 32143  }
 32144  
 32145  // Do executes the "securitycenter.projects.sources.findings.setMute" call.
 32146  // Any non-2xx status code is an error. Response headers are in either
 32147  // *Finding.ServerResponse.Header or (if a response was returned at all) in
 32148  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 32149  // whether the returned error was because http.StatusNotModified was returned.
 32150  func (c *ProjectsSourcesFindingsSetMuteCall) Do(opts ...googleapi.CallOption) (*Finding, error) {
 32151  	gensupport.SetOptions(c.urlParams_, opts...)
 32152  	res, err := c.doRequest("json")
 32153  	if res != nil && res.StatusCode == http.StatusNotModified {
 32154  		if res.Body != nil {
 32155  			res.Body.Close()
 32156  		}
 32157  		return nil, gensupport.WrapError(&googleapi.Error{
 32158  			Code:   res.StatusCode,
 32159  			Header: res.Header,
 32160  		})
 32161  	}
 32162  	if err != nil {
 32163  		return nil, err
 32164  	}
 32165  	defer googleapi.CloseBody(res)
 32166  	if err := googleapi.CheckResponse(res); err != nil {
 32167  		return nil, gensupport.WrapError(err)
 32168  	}
 32169  	ret := &Finding{
 32170  		ServerResponse: googleapi.ServerResponse{
 32171  			Header:         res.Header,
 32172  			HTTPStatusCode: res.StatusCode,
 32173  		},
 32174  	}
 32175  	target := &ret
 32176  	if err := gensupport.DecodeResponse(target, res); err != nil {
 32177  		return nil, err
 32178  	}
 32179  	return ret, nil
 32180  }
 32181  
 32182  type ProjectsSourcesFindingsSetStateCall struct {
 32183  	s                      *Service
 32184  	name                   string
 32185  	setfindingstaterequest *SetFindingStateRequest
 32186  	urlParams_             gensupport.URLParams
 32187  	ctx_                   context.Context
 32188  	header_                http.Header
 32189  }
 32190  
 32191  // SetState: Updates the state of a finding.
 32192  //
 32193  //   - name: The relative resource name
 32194  //     (https://cloud.google.com/apis/design/resource_names#relative_resource_name)
 32195  //     of the finding. Example:
 32196  //     "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}"
 32197  //     , "folders/{folder_id}/sources/{source_id}/findings/{finding_id}",
 32198  //     "projects/{project_id}/sources/{source_id}/findings/{finding_id}".
 32199  func (r *ProjectsSourcesFindingsService) SetState(name string, setfindingstaterequest *SetFindingStateRequest) *ProjectsSourcesFindingsSetStateCall {
 32200  	c := &ProjectsSourcesFindingsSetStateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 32201  	c.name = name
 32202  	c.setfindingstaterequest = setfindingstaterequest
 32203  	return c
 32204  }
 32205  
 32206  // Fields allows partial responses to be retrieved. See
 32207  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 32208  // details.
 32209  func (c *ProjectsSourcesFindingsSetStateCall) Fields(s ...googleapi.Field) *ProjectsSourcesFindingsSetStateCall {
 32210  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 32211  	return c
 32212  }
 32213  
 32214  // Context sets the context to be used in this call's Do method.
 32215  func (c *ProjectsSourcesFindingsSetStateCall) Context(ctx context.Context) *ProjectsSourcesFindingsSetStateCall {
 32216  	c.ctx_ = ctx
 32217  	return c
 32218  }
 32219  
 32220  // Header returns a http.Header that can be modified by the caller to add
 32221  // headers to the request.
 32222  func (c *ProjectsSourcesFindingsSetStateCall) Header() http.Header {
 32223  	if c.header_ == nil {
 32224  		c.header_ = make(http.Header)
 32225  	}
 32226  	return c.header_
 32227  }
 32228  
 32229  func (c *ProjectsSourcesFindingsSetStateCall) doRequest(alt string) (*http.Response, error) {
 32230  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 32231  	var body io.Reader = nil
 32232  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setfindingstaterequest)
 32233  	if err != nil {
 32234  		return nil, err
 32235  	}
 32236  	c.urlParams_.Set("alt", alt)
 32237  	c.urlParams_.Set("prettyPrint", "false")
 32238  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:setState")
 32239  	urls += "?" + c.urlParams_.Encode()
 32240  	req, err := http.NewRequest("POST", urls, body)
 32241  	if err != nil {
 32242  		return nil, err
 32243  	}
 32244  	req.Header = reqHeaders
 32245  	googleapi.Expand(req.URL, map[string]string{
 32246  		"name": c.name,
 32247  	})
 32248  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 32249  }
 32250  
 32251  // Do executes the "securitycenter.projects.sources.findings.setState" call.
 32252  // Any non-2xx status code is an error. Response headers are in either
 32253  // *Finding.ServerResponse.Header or (if a response was returned at all) in
 32254  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 32255  // whether the returned error was because http.StatusNotModified was returned.
 32256  func (c *ProjectsSourcesFindingsSetStateCall) Do(opts ...googleapi.CallOption) (*Finding, error) {
 32257  	gensupport.SetOptions(c.urlParams_, opts...)
 32258  	res, err := c.doRequest("json")
 32259  	if res != nil && res.StatusCode == http.StatusNotModified {
 32260  		if res.Body != nil {
 32261  			res.Body.Close()
 32262  		}
 32263  		return nil, gensupport.WrapError(&googleapi.Error{
 32264  			Code:   res.StatusCode,
 32265  			Header: res.Header,
 32266  		})
 32267  	}
 32268  	if err != nil {
 32269  		return nil, err
 32270  	}
 32271  	defer googleapi.CloseBody(res)
 32272  	if err := googleapi.CheckResponse(res); err != nil {
 32273  		return nil, gensupport.WrapError(err)
 32274  	}
 32275  	ret := &Finding{
 32276  		ServerResponse: googleapi.ServerResponse{
 32277  			Header:         res.Header,
 32278  			HTTPStatusCode: res.StatusCode,
 32279  		},
 32280  	}
 32281  	target := &ret
 32282  	if err := gensupport.DecodeResponse(target, res); err != nil {
 32283  		return nil, err
 32284  	}
 32285  	return ret, nil
 32286  }
 32287  
 32288  type ProjectsSourcesFindingsUpdateSecurityMarksCall struct {
 32289  	s             *Service
 32290  	name          string
 32291  	securitymarks *SecurityMarks
 32292  	urlParams_    gensupport.URLParams
 32293  	ctx_          context.Context
 32294  	header_       http.Header
 32295  }
 32296  
 32297  // UpdateSecurityMarks: Updates security marks.
 32298  //
 32299  //   - name: The relative resource name of the SecurityMarks. See:
 32300  //     https://cloud.google.com/apis/design/resource_names#relative_resource_name
 32301  //     Examples:
 32302  //     "organizations/{organization_id}/assets/{asset_id}/securityMarks"
 32303  //     "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/
 32304  //     securityMarks".
 32305  func (r *ProjectsSourcesFindingsService) UpdateSecurityMarks(name string, securitymarks *SecurityMarks) *ProjectsSourcesFindingsUpdateSecurityMarksCall {
 32306  	c := &ProjectsSourcesFindingsUpdateSecurityMarksCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 32307  	c.name = name
 32308  	c.securitymarks = securitymarks
 32309  	return c
 32310  }
 32311  
 32312  // StartTime sets the optional parameter "startTime": The time at which the
 32313  // updated SecurityMarks take effect. If not set uses current server time.
 32314  // Updates will be applied to the SecurityMarks that are active immediately
 32315  // preceding this time. Must be earlier or equal to the server time.
 32316  func (c *ProjectsSourcesFindingsUpdateSecurityMarksCall) StartTime(startTime string) *ProjectsSourcesFindingsUpdateSecurityMarksCall {
 32317  	c.urlParams_.Set("startTime", startTime)
 32318  	return c
 32319  }
 32320  
 32321  // UpdateMask sets the optional parameter "updateMask": The FieldMask to use
 32322  // when updating the security marks resource. The field mask must not contain
 32323  // duplicate fields. If empty or set to "marks", all marks will be replaced.
 32324  // Individual marks can be updated using "marks.".
 32325  func (c *ProjectsSourcesFindingsUpdateSecurityMarksCall) UpdateMask(updateMask string) *ProjectsSourcesFindingsUpdateSecurityMarksCall {
 32326  	c.urlParams_.Set("updateMask", updateMask)
 32327  	return c
 32328  }
 32329  
 32330  // Fields allows partial responses to be retrieved. See
 32331  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 32332  // details.
 32333  func (c *ProjectsSourcesFindingsUpdateSecurityMarksCall) Fields(s ...googleapi.Field) *ProjectsSourcesFindingsUpdateSecurityMarksCall {
 32334  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 32335  	return c
 32336  }
 32337  
 32338  // Context sets the context to be used in this call's Do method.
 32339  func (c *ProjectsSourcesFindingsUpdateSecurityMarksCall) Context(ctx context.Context) *ProjectsSourcesFindingsUpdateSecurityMarksCall {
 32340  	c.ctx_ = ctx
 32341  	return c
 32342  }
 32343  
 32344  // Header returns a http.Header that can be modified by the caller to add
 32345  // headers to the request.
 32346  func (c *ProjectsSourcesFindingsUpdateSecurityMarksCall) Header() http.Header {
 32347  	if c.header_ == nil {
 32348  		c.header_ = make(http.Header)
 32349  	}
 32350  	return c.header_
 32351  }
 32352  
 32353  func (c *ProjectsSourcesFindingsUpdateSecurityMarksCall) doRequest(alt string) (*http.Response, error) {
 32354  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 32355  	var body io.Reader = nil
 32356  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.securitymarks)
 32357  	if err != nil {
 32358  		return nil, err
 32359  	}
 32360  	c.urlParams_.Set("alt", alt)
 32361  	c.urlParams_.Set("prettyPrint", "false")
 32362  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 32363  	urls += "?" + c.urlParams_.Encode()
 32364  	req, err := http.NewRequest("PATCH", urls, body)
 32365  	if err != nil {
 32366  		return nil, err
 32367  	}
 32368  	req.Header = reqHeaders
 32369  	googleapi.Expand(req.URL, map[string]string{
 32370  		"name": c.name,
 32371  	})
 32372  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 32373  }
 32374  
 32375  // Do executes the "securitycenter.projects.sources.findings.updateSecurityMarks" call.
 32376  // Any non-2xx status code is an error. Response headers are in either
 32377  // *SecurityMarks.ServerResponse.Header or (if a response was returned at all)
 32378  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 32379  // whether the returned error was because http.StatusNotModified was returned.
 32380  func (c *ProjectsSourcesFindingsUpdateSecurityMarksCall) Do(opts ...googleapi.CallOption) (*SecurityMarks, error) {
 32381  	gensupport.SetOptions(c.urlParams_, opts...)
 32382  	res, err := c.doRequest("json")
 32383  	if res != nil && res.StatusCode == http.StatusNotModified {
 32384  		if res.Body != nil {
 32385  			res.Body.Close()
 32386  		}
 32387  		return nil, gensupport.WrapError(&googleapi.Error{
 32388  			Code:   res.StatusCode,
 32389  			Header: res.Header,
 32390  		})
 32391  	}
 32392  	if err != nil {
 32393  		return nil, err
 32394  	}
 32395  	defer googleapi.CloseBody(res)
 32396  	if err := googleapi.CheckResponse(res); err != nil {
 32397  		return nil, gensupport.WrapError(err)
 32398  	}
 32399  	ret := &SecurityMarks{
 32400  		ServerResponse: googleapi.ServerResponse{
 32401  			Header:         res.Header,
 32402  			HTTPStatusCode: res.StatusCode,
 32403  		},
 32404  	}
 32405  	target := &ret
 32406  	if err := gensupport.DecodeResponse(target, res); err != nil {
 32407  		return nil, err
 32408  	}
 32409  	return ret, nil
 32410  }
 32411  
 32412  type ProjectsSourcesFindingsExternalSystemsPatchCall struct {
 32413  	s                                         *Service
 32414  	name                                      string
 32415  	googlecloudsecuritycenterv1externalsystem *GoogleCloudSecuritycenterV1ExternalSystem
 32416  	urlParams_                                gensupport.URLParams
 32417  	ctx_                                      context.Context
 32418  	header_                                   http.Header
 32419  }
 32420  
 32421  // Patch: Updates external system. This is for a given finding.
 32422  //
 32423  //   - name: Full resource name of the external system, for example:
 32424  //     "organizations/1234/sources/5678/findings/123456/externalSystems/jira",
 32425  //     "folders/1234/sources/5678/findings/123456/externalSystems/jira",
 32426  //     "projects/1234/sources/5678/findings/123456/externalSystems/jira".
 32427  func (r *ProjectsSourcesFindingsExternalSystemsService) Patch(name string, googlecloudsecuritycenterv1externalsystem *GoogleCloudSecuritycenterV1ExternalSystem) *ProjectsSourcesFindingsExternalSystemsPatchCall {
 32428  	c := &ProjectsSourcesFindingsExternalSystemsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 32429  	c.name = name
 32430  	c.googlecloudsecuritycenterv1externalsystem = googlecloudsecuritycenterv1externalsystem
 32431  	return c
 32432  }
 32433  
 32434  // UpdateMask sets the optional parameter "updateMask": The FieldMask to use
 32435  // when updating the external system resource. If empty all mutable fields will
 32436  // be updated.
 32437  func (c *ProjectsSourcesFindingsExternalSystemsPatchCall) UpdateMask(updateMask string) *ProjectsSourcesFindingsExternalSystemsPatchCall {
 32438  	c.urlParams_.Set("updateMask", updateMask)
 32439  	return c
 32440  }
 32441  
 32442  // Fields allows partial responses to be retrieved. See
 32443  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 32444  // details.
 32445  func (c *ProjectsSourcesFindingsExternalSystemsPatchCall) Fields(s ...googleapi.Field) *ProjectsSourcesFindingsExternalSystemsPatchCall {
 32446  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 32447  	return c
 32448  }
 32449  
 32450  // Context sets the context to be used in this call's Do method.
 32451  func (c *ProjectsSourcesFindingsExternalSystemsPatchCall) Context(ctx context.Context) *ProjectsSourcesFindingsExternalSystemsPatchCall {
 32452  	c.ctx_ = ctx
 32453  	return c
 32454  }
 32455  
 32456  // Header returns a http.Header that can be modified by the caller to add
 32457  // headers to the request.
 32458  func (c *ProjectsSourcesFindingsExternalSystemsPatchCall) Header() http.Header {
 32459  	if c.header_ == nil {
 32460  		c.header_ = make(http.Header)
 32461  	}
 32462  	return c.header_
 32463  }
 32464  
 32465  func (c *ProjectsSourcesFindingsExternalSystemsPatchCall) doRequest(alt string) (*http.Response, error) {
 32466  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 32467  	var body io.Reader = nil
 32468  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudsecuritycenterv1externalsystem)
 32469  	if err != nil {
 32470  		return nil, err
 32471  	}
 32472  	c.urlParams_.Set("alt", alt)
 32473  	c.urlParams_.Set("prettyPrint", "false")
 32474  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 32475  	urls += "?" + c.urlParams_.Encode()
 32476  	req, err := http.NewRequest("PATCH", urls, body)
 32477  	if err != nil {
 32478  		return nil, err
 32479  	}
 32480  	req.Header = reqHeaders
 32481  	googleapi.Expand(req.URL, map[string]string{
 32482  		"name": c.name,
 32483  	})
 32484  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 32485  }
 32486  
 32487  // Do executes the "securitycenter.projects.sources.findings.externalSystems.patch" call.
 32488  // Any non-2xx status code is an error. Response headers are in either
 32489  // *GoogleCloudSecuritycenterV1ExternalSystem.ServerResponse.Header or (if a
 32490  // response was returned at all) in error.(*googleapi.Error).Header. Use
 32491  // googleapi.IsNotModified to check whether the returned error was because
 32492  // http.StatusNotModified was returned.
 32493  func (c *ProjectsSourcesFindingsExternalSystemsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudSecuritycenterV1ExternalSystem, error) {
 32494  	gensupport.SetOptions(c.urlParams_, opts...)
 32495  	res, err := c.doRequest("json")
 32496  	if res != nil && res.StatusCode == http.StatusNotModified {
 32497  		if res.Body != nil {
 32498  			res.Body.Close()
 32499  		}
 32500  		return nil, gensupport.WrapError(&googleapi.Error{
 32501  			Code:   res.StatusCode,
 32502  			Header: res.Header,
 32503  		})
 32504  	}
 32505  	if err != nil {
 32506  		return nil, err
 32507  	}
 32508  	defer googleapi.CloseBody(res)
 32509  	if err := googleapi.CheckResponse(res); err != nil {
 32510  		return nil, gensupport.WrapError(err)
 32511  	}
 32512  	ret := &GoogleCloudSecuritycenterV1ExternalSystem{
 32513  		ServerResponse: googleapi.ServerResponse{
 32514  			Header:         res.Header,
 32515  			HTTPStatusCode: res.StatusCode,
 32516  		},
 32517  	}
 32518  	target := &ret
 32519  	if err := gensupport.DecodeResponse(target, res); err != nil {
 32520  		return nil, err
 32521  	}
 32522  	return ret, nil
 32523  }
 32524  

View as plain text