| // Copyright 2026 Google LLC. | |
| // Use of this source code is governed by a BSD-style | |
| // license that can be found in the LICENSE file. | |
| // Code generated file. DO NOT EDIT. | |
| // Package threatintelligence provides access to the Threat Intelligence API. | |
| // | |
| // For product documentation, see: https://docs.cloud.google.com/threatintelligence/ | |
| // | |
| // # Library status | |
| // | |
| // These client libraries are officially supported by Google. However, this | |
| // library is considered complete and is in maintenance mode. This means | |
| // that we will address critical bugs and security issues but will not add | |
| // any new features. | |
| // | |
| // When possible, we recommend using our newer | |
| // [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go) | |
| // that are still actively being worked and iterated on. | |
| // | |
| // # Creating a client | |
| // | |
| // Usage example: | |
| // | |
| // import "google.golang.org/api/threatintelligence/v1beta" | |
| // ... | |
| // ctx := context.Background() | |
| // threatintelligenceService, err := threatintelligence.NewService(ctx) | |
| // | |
| // In this example, Google Application Default Credentials are used for | |
| // authentication. For information on how to create and obtain Application | |
| // Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials. | |
| // | |
| // # Other authentication options | |
| // | |
| // To use an API key for authentication (note: some APIs do not support API | |
| // keys), use [google.golang.org/api/option.WithAPIKey]: | |
| // | |
| // threatintelligenceService, err := threatintelligence.NewService(ctx, option.WithAPIKey("AIza...")) | |
| // | |
| // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth | |
| // flow, use [google.golang.org/api/option.WithTokenSource]: | |
| // | |
| // config := &oauth2.Config{...} | |
| // // ... | |
| // token, err := config.Exchange(ctx, ...) | |
| // threatintelligenceService, err := threatintelligence.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) | |
| // | |
| // See [google.golang.org/api/option.ClientOption] for details on options. | |
| package threatintelligence // import "google.golang.org/api/threatintelligence/v1beta" | |
| import ( | |
| "bytes" | |
| "context" | |
| "encoding/json" | |
| "errors" | |
| "fmt" | |
| "io" | |
| "log/slog" | |
| "net/http" | |
| "net/url" | |
| "strconv" | |
| "strings" | |
| "github.com/googleapis/gax-go/v2/internallog" | |
| googleapi "google.golang.org/api/googleapi" | |
| internal "google.golang.org/api/internal" | |
| gensupport "google.golang.org/api/internal/gensupport" | |
| option "google.golang.org/api/option" | |
| internaloption "google.golang.org/api/option/internaloption" | |
| htransport "google.golang.org/api/transport/http" | |
| ) | |
| // Always reference these packages, just in case the auto-generated code | |
| // below doesn't. | |
| var _ = bytes.NewBuffer | |
| var _ = strconv.Itoa | |
| var _ = fmt.Sprintf | |
| var _ = json.NewDecoder | |
| var _ = io.Copy | |
| var _ = url.Parse | |
| var _ = gensupport.MarshalJSON | |
| var _ = googleapi.Version | |
| var _ = errors.New | |
| var _ = strings.Replace | |
| var _ = context.Canceled | |
| var _ = internaloption.WithDefaultEndpoint | |
| var _ = internal.Version | |
| var _ = internallog.New | |
| const apiId = "threatintelligence:v1beta" | |
| const apiName = "threatintelligence" | |
| const apiVersion = "v1beta" | |
| const basePath = "https://threatintelligence.googleapis.com/" | |
| const basePathTemplate = "https://threatintelligence.UNIVERSE_DOMAIN/" | |
| const mtlsBasePath = "https://threatintelligence.mtls.googleapis.com/" | |
| // OAuth2 scopes used by this API. | |
| const ( | |
| // See, edit, configure, and delete your Google Cloud data and see the email | |
| // address for your Google Account. | |
| CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" | |
| ) | |
| // NewService creates a new Service. | |
| func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { | |
| scopesOption := internaloption.WithDefaultScopes( | |
| "https://www.googleapis.com/auth/cloud-platform", | |
| ) | |
| // NOTE: prepend, so we don't override user-specified scopes. | |
| opts = append([]option.ClientOption{scopesOption}, opts...) | |
| opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) | |
| opts = append(opts, internaloption.WithDefaultEndpointTemplate(basePathTemplate)) | |
| opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) | |
| opts = append(opts, internaloption.EnableNewAuthLibrary()) | |
| client, endpoint, err := htransport.NewClient(ctx, opts...) | |
| if err != nil { | |
| return nil, err | |
| } | |
| s := &Service{client: client, BasePath: basePath, logger: internaloption.GetLogger(opts)} | |
| s.Projects = NewProjectsService(s) | |
| if endpoint != "" { | |
| s.BasePath = endpoint | |
| } | |
| return s, nil | |
| } | |
| // New creates a new Service. It uses the provided http.Client for requests. | |
| // | |
| // Deprecated: please use NewService instead. | |
| // To provide a custom HTTP client, use option.WithHTTPClient. | |
| // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. | |
| func New(client *http.Client) (*Service, error) { | |
| if client == nil { | |
| return nil, errors.New("client is nil") | |
| } | |
| return NewService(context.TODO(), option.WithHTTPClient(client)) | |
| } | |
| type Service struct { | |
| client *http.Client | |
| logger *slog.Logger | |
| BasePath string // API endpoint base URL | |
| UserAgent string // optional additional User-Agent fragment | |
| Projects *ProjectsService | |
| } | |
| func (s *Service) userAgent() string { | |
| if s.UserAgent == "" { | |
| return googleapi.UserAgent | |
| } | |
| return googleapi.UserAgent + " " + s.UserAgent | |
| } | |
| func NewProjectsService(s *Service) *ProjectsService { | |
| rs := &ProjectsService{s: s} | |
| rs.Alerts = NewProjectsAlertsService(s) | |
| rs.Configurations = NewProjectsConfigurationsService(s) | |
| rs.Findings = NewProjectsFindingsService(s) | |
| return rs | |
| } | |
| type ProjectsService struct { | |
| s *Service | |
| Alerts *ProjectsAlertsService | |
| Configurations *ProjectsConfigurationsService | |
| Findings *ProjectsFindingsService | |
| } | |
| func NewProjectsAlertsService(s *Service) *ProjectsAlertsService { | |
| rs := &ProjectsAlertsService{s: s} | |
| rs.Documents = NewProjectsAlertsDocumentsService(s) | |
| return rs | |
| } | |
| type ProjectsAlertsService struct { | |
| s *Service | |
| Documents *ProjectsAlertsDocumentsService | |
| } | |
| func NewProjectsAlertsDocumentsService(s *Service) *ProjectsAlertsDocumentsService { | |
| rs := &ProjectsAlertsDocumentsService{s: s} | |
| return rs | |
| } | |
| type ProjectsAlertsDocumentsService struct { | |
| s *Service | |
| } | |
| func NewProjectsConfigurationsService(s *Service) *ProjectsConfigurationsService { | |
| rs := &ProjectsConfigurationsService{s: s} | |
| rs.Revisions = NewProjectsConfigurationsRevisionsService(s) | |
| return rs | |
| } | |
| type ProjectsConfigurationsService struct { | |
| s *Service | |
| Revisions *ProjectsConfigurationsRevisionsService | |
| } | |
| func NewProjectsConfigurationsRevisionsService(s *Service) *ProjectsConfigurationsRevisionsService { | |
| rs := &ProjectsConfigurationsRevisionsService{s: s} | |
| return rs | |
| } | |
| type ProjectsConfigurationsRevisionsService struct { | |
| s *Service | |
| } | |
| func NewProjectsFindingsService(s *Service) *ProjectsFindingsService { | |
| rs := &ProjectsFindingsService{s: s} | |
| return rs | |
| } | |
| type ProjectsFindingsService struct { | |
| s *Service | |
| } | |
| // Alert: Stateful object representing a group of Findings. Key feature to an | |
| // Alert is that it expresses the user's intent towards the findings of that | |
| // group, even those that haven't occurred yet. | |
| type Alert struct { | |
| // AiSummary: Optional. AI summary of the alert. | |
| AiSummary string `json:"aiSummary,omitempty"` | |
| // Audit: Output only. Audit information for the alert. | |
| Audit *Audit `json:"audit,omitempty"` | |
| // Configurations: Output only. The resource names of the Configurations bound | |
| // to this alert. Format: projects/{project}/configurations/{configuration} | |
| Configurations []string `json:"configurations,omitempty"` | |
| // Detail: Output only. Details object for the alert, not all alerts will have | |
| // a details object. | |
| Detail *AlertDetail `json:"detail,omitempty"` | |
| // DisplayName: Output only. A short title for the alert. | |
| DisplayName string `json:"displayName,omitempty"` | |
| // DuplicateOf: Output only. alert name of the alert this alert is a duplicate | |
| // of. Format: projects/{project}/alerts/{alert} | |
| DuplicateOf string `json:"duplicateOf,omitempty"` | |
| // DuplicatedBy: Output only. alert names of the alerts that are duplicates of | |
| // this alert. Format: projects/{project}/alerts/{alert} | |
| DuplicatedBy []string `json:"duplicatedBy,omitempty"` | |
| // Etag: Optional. If included when updating an alert, this should be set to | |
| // the current etag of the alert. If the etags do not match, the update will be | |
| // rejected and an ABORTED error will be returned. | |
| Etag string `json:"etag,omitempty"` | |
| // ExternalId: Output only. External ID for the alert. This is used internally | |
| // to provide protection against out of order updates. | |
| ExternalId string `json:"externalId,omitempty"` | |
| // FindingCount: Output only. The number of findings associated with this | |
| // alert. | |
| FindingCount int64 `json:"findingCount,omitempty,string"` | |
| // Findings: Output only. Findings that are covered by this alert. | |
| Findings []string `json:"findings,omitempty"` | |
| // Name: Identifier. Server generated name for the alert. format is | |
| // projects/{project}/alerts/{alert} | |
| Name string `json:"name,omitempty"` | |
| // PriorityAnalysis: Output only. High-Precision Priority Analysis for the | |
| // alert. | |
| PriorityAnalysis *PriorityAnalysis `json:"priorityAnalysis,omitempty"` | |
| // RelevanceAnalysis: Output only. High-Precision Relevance Analysis verdict | |
| // for the alert. | |
| RelevanceAnalysis *RelevanceAnalysis `json:"relevanceAnalysis,omitempty"` | |
| // SeverityAnalysis: Output only. High-Precision Severity Analysis for the | |
| // alert. | |
| SeverityAnalysis *SeverityAnalysis `json:"severityAnalysis,omitempty"` | |
| // State: Output only. State of the alert. | |
| // | |
| // Possible values: | |
| // "STATE_UNSPECIFIED" - Default value, should never be set. | |
| // "NEW" - alert is new. | |
| // "READ" - alert was read by a human. | |
| // "TRIAGED" - alert has been triaged. | |
| // "ESCALATED" - alert has been escalated. | |
| // "RESOLVED" - alert has been resolved. | |
| // "DUPLICATE" - alert is a duplicate of another alert. | |
| // "FALSE_POSITIVE" - alert is a false positive and should be ignored. | |
| // "NOT_ACTIONABLE" - alert is not actionable. | |
| // "BENIGN" - alert is benign. | |
| // "TRACKED_EXTERNALLY" - alert is tracked externally. | |
| State string `json:"state,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "AiSummary") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "AiSummary") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Alert) MarshalJSON() ([]byte, error) { | |
| type NoMethod Alert | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // AlertDetail: Container for different types of alert details. | |
| type AlertDetail struct { | |
| // DataLeak: Data Leak alert detail type. | |
| DataLeak *DataLeakAlertDetail `json:"dataLeak,omitempty"` | |
| // DetailType: Output only. Name of the detail type. Will be set by the server | |
| // during creation to the name of the field that is set in the detail union. | |
| DetailType string `json:"detailType,omitempty"` | |
| // InitialAccessBroker: Initial Access Broker alert detail type. | |
| InitialAccessBroker *InitialAccessBrokerAlertDetail `json:"initialAccessBroker,omitempty"` | |
| // InsiderThreat: Insider Threat alert detail type. | |
| InsiderThreat *InsiderThreatAlertDetail `json:"insiderThreat,omitempty"` | |
| // TargetTechnology: Technology Watchlist alert detail type. | |
| TargetTechnology *TargetTechnologyAlertDetail `json:"targetTechnology,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "DataLeak") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "DataLeak") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s AlertDetail) MarshalJSON() ([]byte, error) { | |
| type NoMethod AlertDetail | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // AlertDocument: A document that is associated with an alert. | |
| type AlertDocument struct { | |
| // AiSummary: Output only. AI summary of the document. | |
| AiSummary string `json:"aiSummary,omitempty"` | |
| // Author: Output only. The author of the document. | |
| Author string `json:"author,omitempty"` | |
| // CollectionTime: Output only. Time when the origin source collected the | |
| // intel. | |
| CollectionTime string `json:"collectionTime,omitempty"` | |
| // Content: Output only. The content of the document. | |
| Content string `json:"content,omitempty"` | |
| // CreateTime: Output only. The timestamp of the original external publication | |
| // of the document. | |
| CreateTime string `json:"createTime,omitempty"` | |
| // IngestTime: Output only. Time when GTI received the intel. | |
| IngestTime string `json:"ingestTime,omitempty"` | |
| // LanguageCode: Output only. The language code of the document. | |
| LanguageCode string `json:"languageCode,omitempty"` | |
| // Name: Identifier. Server generated name for the alert document. format is | |
| // projects/{project}/alerts/{alert}/documents/{document} | |
| Name string `json:"name,omitempty"` | |
| // Source: Output only. Source of the intel item, e.g. DarkMarket. | |
| Source string `json:"source,omitempty"` | |
| // SourceUpdateTime: Output only. Time when the intel was last updated by the | |
| // source. | |
| SourceUpdateTime string `json:"sourceUpdateTime,omitempty"` | |
| // SourceUri: Output only. URI of the intel item from the source. | |
| SourceUri string `json:"sourceUri,omitempty"` | |
| // Title: Output only. The title of the document, if available. | |
| Title string `json:"title,omitempty"` | |
| // Translation: Output only. The translation of the document, if available. | |
| Translation *AlertDocumentTranslation `json:"translation,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "AiSummary") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "AiSummary") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s AlertDocument) MarshalJSON() ([]byte, error) { | |
| type NoMethod AlertDocument | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // AlertDocumentTranslation: The translation of an alert document. | |
| type AlertDocumentTranslation struct { | |
| // TranslatedContent: Output only. The translated content of the document. | |
| TranslatedContent string `json:"translatedContent,omitempty"` | |
| // TranslatedTitle: Output only. The translated title of the document. | |
| TranslatedTitle string `json:"translatedTitle,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "TranslatedContent") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "TranslatedContent") to include in | |
| // API requests with the JSON null value. By default, fields with empty values | |
| // are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s AlertDocumentTranslation) MarshalJSON() ([]byte, error) { | |
| type NoMethod AlertDocumentTranslation | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Association: Represents an association with a vulnerability. | |
| type Association struct { | |
| // Id: Required. The ID of the association. | |
| Id string `json:"id,omitempty"` | |
| // Type: Required. The type of the association. | |
| // | |
| // Possible values: | |
| // "THREAT_INTEL_OBJECT_TYPE_UNSPECIFIED" - Unspecified object type. | |
| // "THREAT_INTEL_OBJECT_TYPE_THREAT_ACTOR" - Threat actor object type. | |
| // "THREAT_INTEL_OBJECT_TYPE_MALWARE" - Malware object type. | |
| // "THREAT_INTEL_OBJECT_TYPE_REPORT" - Report object type. | |
| // "THREAT_INTEL_OBJECT_TYPE_CAMPAIGN" - Campaign object type. | |
| // "THREAT_INTEL_OBJECT_TYPE_IOC_COLLECTION" - IoC Collection object type. | |
| // "THREAT_INTEL_OBJECT_TYPE_SOFTWARE_AND_TOOLKITS" - Software and toolkits | |
| // object type. | |
| // "THREAT_INTEL_OBJECT_TYPE_VULNERABILITY" - Vulnerability object type. | |
| Type string `json:"type,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Id") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Id") to include in API requests | |
| // with the JSON null value. By default, fields with empty values are omitted | |
| // from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Association) MarshalJSON() ([]byte, error) { | |
| type NoMethod Association | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Audit: Tracks basic CRUD facts. | |
| type Audit struct { | |
| // CreateTime: Output only. Time of creation. | |
| CreateTime string `json:"createTime,omitempty"` | |
| // Creator: Output only. Agent that created or updated the record, could be a | |
| // UserId or a JobId. | |
| Creator string `json:"creator,omitempty"` | |
| // UpdateTime: Output only. Time of creation or last update. | |
| UpdateTime string `json:"updateTime,omitempty"` | |
| // Updater: Output only. Agent that last updated the record, could be a UserId | |
| // or a JobId. | |
| Updater string `json:"updater,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "CreateTime") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "CreateTime") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Audit) MarshalJSON() ([]byte, error) { | |
| type NoMethod Audit | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Configuration: A configuration represents a behavior an engine should follow | |
| // when producing new findings. | |
| type Configuration struct { | |
| // Audit: Output only. Audit information for the configuration. | |
| Audit *Audit `json:"audit,omitempty"` | |
| // Description: Optional. A description of the configuration. | |
| Description string `json:"description,omitempty"` | |
| // Detail: Required. Domain specific details for the configuration. | |
| Detail *ConfigurationDetail `json:"detail,omitempty"` | |
| // DisplayName: Output only. Human readable name for the configuration. | |
| DisplayName string `json:"displayName,omitempty"` | |
| // Etag: If included when updating a configuration, this should be set to the | |
| // current etag of the configuration. If the etags do not match, the update | |
| // will be rejected and an ABORTED error will be returned. | |
| Etag string `json:"etag,omitempty"` | |
| // Name: Identifier. Server generated name for the configuration. format is | |
| // projects/{project}/configurations/{configuration} | |
| Name string `json:"name,omitempty"` | |
| // Provider: Required. Name of the service that provides the configuration. | |
| Provider string `json:"provider,omitempty"` | |
| // State: Optional. State of the configuration. | |
| // | |
| // Possible values: | |
| // "STATE_UNSPECIFIED" - Configuration state is unspecified. This is not | |
| // expected to occur. | |
| // "ENABLED" - Configuration is enabled for the customer. | |
| // "DISABLED" - Configuration is disabled for the customer. | |
| // "DEPRECATED" - Configuration is deprecated, no new configs are allowed to | |
| // be created. | |
| State string `json:"state,omitempty"` | |
| // Version: Optional. A user-manipulatable version. Does not adhere to a | |
| // specific format | |
| Version string `json:"version,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "Audit") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Audit") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Configuration) MarshalJSON() ([]byte, error) { | |
| type NoMethod Configuration | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // ConfigurationDetail: Wrapper class that contains the union struct for all | |
| // the various configuration detail specific classes. | |
| type ConfigurationDetail struct { | |
| // CustomThreatScenario: Custom Threat Scenario detail config. | |
| CustomThreatScenario *CustomThreatScenarioConfig `json:"customThreatScenario,omitempty"` | |
| // CustomerProfile: Customer Profile detail config. | |
| CustomerProfile *CustomerProfileConfig `json:"customerProfile,omitempty"` | |
| // DetailType: Output only. Name of the detail type. Will be set by the server | |
| // during creation to the name of the field that is set in the detail union. | |
| DetailType string `json:"detailType,omitempty"` | |
| // DomainConfiguration: Domain Configuration detail config. | |
| DomainConfiguration *DomainConfiguration `json:"domainConfiguration,omitempty"` | |
| // TechnologyWatchlist: Technology Watchlist detail config. | |
| TechnologyWatchlist *TechnologyWatchListConfig `json:"technologyWatchlist,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "CustomThreatScenario") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "CustomThreatScenario") to include | |
| // in API requests with the JSON null value. By default, fields with empty | |
| // values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ConfigurationDetail) MarshalJSON() ([]byte, error) { | |
| type NoMethod ConfigurationDetail | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // ConfigurationRevision: A ConfigurationRevision is a snapshot of a | |
| // Configuration at a point in time. It is immutable. | |
| type ConfigurationRevision struct { | |
| // CreateTime: Output only. The time the Revision was created | |
| CreateTime string `json:"createTime,omitempty"` | |
| // Name: Identifier. The name of the ConfigurationRevision Format: | |
| // projects//configurations//revisions/ | |
| Name string `json:"name,omitempty"` | |
| // Snapshot: The snapshot of the configuration | |
| Snapshot *Configuration `json:"snapshot,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "CreateTime") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "CreateTime") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ConfigurationRevision) MarshalJSON() ([]byte, error) { | |
| type NoMethod ConfigurationRevision | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // CustomThreatScenarioConfig: CustomThreatScenarioConfig represents a | |
| // user-defined threat scenario configuration. | |
| type CustomThreatScenarioConfig struct { | |
| // CompiledLuceneQuery: Output only. The compiled Lucene query string. | |
| CompiledLuceneQuery string `json:"compiledLuceneQuery,omitempty"` | |
| // DocumentCondition: Required. The condition driving the scenario, stored as a | |
| // stringified JSON. This is used to query/filter documents. | |
| DocumentCondition string `json:"documentCondition,omitempty"` | |
| // DocumentQuery: Optional. The query used to match documents. | |
| DocumentQuery *DocumentQuery `json:"documentQuery,omitempty"` | |
| // LegacyMonitorMetadata: Output only. Legacy metadata associated with this | |
| // scenario/monitor. | |
| LegacyMonitorMetadata *LegacyMetadata `json:"legacyMonitorMetadata,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "CompiledLuceneQuery") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "CompiledLuceneQuery") to include | |
| // in API requests with the JSON null value. By default, fields with empty | |
| // values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s CustomThreatScenarioConfig) MarshalJSON() ([]byte, error) { | |
| type NoMethod CustomThreatScenarioConfig | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // CustomerProfileCitation: Citation information for the customer profile. | |
| type CustomerProfileCitation struct { | |
| // CitationId: Required. The citation id for the citation. Should be unique | |
| // within the profile. | |
| CitationId string `json:"citationId,omitempty"` | |
| // Document: Required. The name of the document the citation is from. | |
| Document string `json:"document,omitempty"` | |
| // RetrievalTime: The time the citation was retrieved. | |
| RetrievalTime string `json:"retrievalTime,omitempty"` | |
| // Source: Required. The source of the citation. | |
| Source string `json:"source,omitempty"` | |
| // Uri: Optional. The url of the citation. | |
| Uri string `json:"uri,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "CitationId") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "CitationId") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s CustomerProfileCitation) MarshalJSON() ([]byte, error) { | |
| type NoMethod CustomerProfileCitation | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // CustomerProfileCitedString: A string with citation ids. | |
| type CustomerProfileCitedString struct { | |
| // CitationIds: Optional. The citation ids for the string. | |
| CitationIds []string `json:"citationIds,omitempty"` | |
| // Value: Required. The value of the string. | |
| Value string `json:"value,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "CitationIds") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "CitationIds") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s CustomerProfileCitedString) MarshalJSON() ([]byte, error) { | |
| type NoMethod CustomerProfileCitedString | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // CustomerProfileCompany: Company information for the customer profile. | |
| type CustomerProfileCompany struct { | |
| // CitationIds: Optional. The citation ids for the company. | |
| CitationIds []string `json:"citationIds,omitempty"` | |
| // Company: Required. The name of the company. | |
| Company string `json:"company,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "CitationIds") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "CitationIds") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s CustomerProfileCompany) MarshalJSON() ([]byte, error) { | |
| type NoMethod CustomerProfileCompany | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // CustomerProfileConfig: CustomerProfileConfig is the configuration for the | |
| // customer profile. | |
| type CustomerProfileConfig struct { | |
| // Citations: Optional. Citations for the organization profile. | |
| Citations []*CustomerProfileCitation `json:"citations,omitempty"` | |
| // ContactInfo: Optional. Contact information for the organization. | |
| ContactInfo []*CustomerProfileContactInfo `json:"contactInfo,omitempty"` | |
| // Executives: Optional. Executives of the organization. | |
| Executives []*CustomerProfilePerson `json:"executives,omitempty"` | |
| // Industries: Optional. The industries the organization is involved in. | |
| Industries []*CustomerProfileIndustry `json:"industries,omitempty"` | |
| // Locations: Optional. Locations the organization is present or conducts | |
| // business in. | |
| Locations []*CustomerProfileLocation `json:"locations,omitempty"` | |
| // Org: Required. The name of the organization. | |
| Org string `json:"org,omitempty"` | |
| // OrgSummary: Optional. A summary of the organization. | |
| OrgSummary string `json:"orgSummary,omitempty"` | |
| // ParentCompanies: Optional. The parent companies of the organization. | |
| ParentCompanies []*CustomerProfileCompany `json:"parentCompanies,omitempty"` | |
| // Products: Optional. Product information for the organization. | |
| Products []*CustomerProfileProduct `json:"products,omitempty"` | |
| // SecurityConsiderations: Optional. Security considerations for the | |
| // organization. | |
| SecurityConsiderations *CustomerProfileSecurityConsiderations `json:"securityConsiderations,omitempty"` | |
| // Summary: Optional. A summarized version of the customer profile. | |
| Summary *CustomerProfileSummary `json:"summary,omitempty"` | |
| // TechnologyPresence: Optional. Technology presence of the organization. | |
| TechnologyPresence string `json:"technologyPresence,omitempty"` | |
| // WebPresences: Optional. Web presence of the organization. | |
| WebPresences []*CustomerProfileWebPresence `json:"webPresences,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Citations") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Citations") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s CustomerProfileConfig) MarshalJSON() ([]byte, error) { | |
| type NoMethod CustomerProfileConfig | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // CustomerProfileContactInfo: Contact information for the customer profile. | |
| type CustomerProfileContactInfo struct { | |
| // Address: The address of the contact. | |
| Address string `json:"address,omitempty"` | |
| // CitationIds: Optional. The citation ids for the contact information. | |
| CitationIds []string `json:"citationIds,omitempty"` | |
| // Email: The email address of the contact. | |
| Email string `json:"email,omitempty"` | |
| // Label: Optional. The name of the contact. | |
| Label string `json:"label,omitempty"` | |
| // Other: The other contact information. | |
| Other string `json:"other,omitempty"` | |
| // Phone: The phone number of the contact. | |
| Phone string `json:"phone,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Address") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Address") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s CustomerProfileContactInfo) MarshalJSON() ([]byte, error) { | |
| type NoMethod CustomerProfileContactInfo | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // CustomerProfileIndustry: Industry information for the customer profile. | |
| type CustomerProfileIndustry struct { | |
| // CitationIds: Optional. The citation ids for the industry. | |
| CitationIds []string `json:"citationIds,omitempty"` | |
| // Industry: Required. The name of the industry. | |
| Industry string `json:"industry,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "CitationIds") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "CitationIds") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s CustomerProfileIndustry) MarshalJSON() ([]byte, error) { | |
| type NoMethod CustomerProfileIndustry | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // CustomerProfileLocation: Location information for the customer profile. | |
| type CustomerProfileLocation struct { | |
| // Address: Required. The address of the location. | |
| Address string `json:"address,omitempty"` | |
| // Brand: Required. The brand of the location. | |
| Brand string `json:"brand,omitempty"` | |
| // CitationIds: Optional. The citation ids for the location. | |
| CitationIds []string `json:"citationIds,omitempty"` | |
| // FacilityType: Optional. The type of location. | |
| FacilityType string `json:"facilityType,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Address") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Address") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s CustomerProfileLocation) MarshalJSON() ([]byte, error) { | |
| type NoMethod CustomerProfileLocation | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // CustomerProfilePerson: Person information for the customer profile. | |
| type CustomerProfilePerson struct { | |
| // CitationIds: Optional. The citation ids for the person. | |
| CitationIds []string `json:"citationIds,omitempty"` | |
| // Name: Required. The name of the person. | |
| Name string `json:"name,omitempty"` | |
| // Title: Optional. The title of the person. | |
| Title string `json:"title,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "CitationIds") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "CitationIds") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s CustomerProfilePerson) MarshalJSON() ([]byte, error) { | |
| type NoMethod CustomerProfilePerson | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // CustomerProfileProduct: Product information for the customer profile. | |
| type CustomerProfileProduct struct { | |
| // Brand: Required. The brand of the product. | |
| Brand string `json:"brand,omitempty"` | |
| // CitationIds: Optional. The citation ids for the product. | |
| CitationIds []string `json:"citationIds,omitempty"` | |
| // Product: Required. The name of the product. | |
| Product string `json:"product,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Brand") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Brand") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s CustomerProfileProduct) MarshalJSON() ([]byte, error) { | |
| type NoMethod CustomerProfileProduct | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // CustomerProfileSecurityConsiderations: Security considerations for the | |
| // customer profile. | |
| type CustomerProfileSecurityConsiderations struct { | |
| // Considerations: Optional. A series of considerations for the security of the | |
| // organization, such as "high risk of compromise" or "vulnerable to | |
| // cyberbullying". | |
| Considerations []string `json:"considerations,omitempty"` | |
| // Note: Optional. A note about the security considerations. | |
| Note string `json:"note,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Considerations") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Considerations") to include in | |
| // API requests with the JSON null value. By default, fields with empty values | |
| // are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s CustomerProfileSecurityConsiderations) MarshalJSON() ([]byte, error) { | |
| type NoMethod CustomerProfileSecurityConsiderations | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // CustomerProfileSummary: A summarized version of the customer profile. | |
| // Generated by the backend. | |
| type CustomerProfileSummary struct { | |
| // AreaServed: Optional. The area the customer serves. | |
| AreaServed *CustomerProfileCitedString `json:"areaServed,omitempty"` | |
| // Brands: Optional. A narrative summary of brands. | |
| Brands *CustomerProfileCitedString `json:"brands,omitempty"` | |
| // EntityType: Optional. The entity type of the customer. | |
| EntityType *CustomerProfileCitedString `json:"entityType,omitempty"` | |
| // Founded: Optional. The date the customer was founded. | |
| Founded *CustomerProfileCitedString `json:"founded,omitempty"` | |
| // Headquarters: Optional. The headquarters of the customer. | |
| Headquarters *CustomerProfileCitedString `json:"headquarters,omitempty"` | |
| // Industry: Optional. The industry the customer is in. | |
| Industry *CustomerProfileCitedString `json:"industry,omitempty"` | |
| // KeyPeopleSummary: Optional. A narrative summary of key people. | |
| KeyPeopleSummary *CustomerProfileCitedString `json:"keyPeopleSummary,omitempty"` | |
| // ParentCompany: Optional. The parent company of the customer. | |
| ParentCompany *CustomerProfileCitedString `json:"parentCompany,omitempty"` | |
| // PrimaryWebsite: Optional. The primary website of the customer. | |
| PrimaryWebsite *CustomerProfileCitedString `json:"primaryWebsite,omitempty"` | |
| // ProductsSummary: Optional. A narrative summary of products. | |
| ProductsSummary *CustomerProfileCitedString `json:"productsSummary,omitempty"` | |
| // ServicesSummary: Optional. A narrative summary of services. | |
| ServicesSummary *CustomerProfileCitedString `json:"servicesSummary,omitempty"` | |
| // Title: Optional. The official name of the customer. | |
| Title *CustomerProfileCitedString `json:"title,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "AreaServed") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "AreaServed") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s CustomerProfileSummary) MarshalJSON() ([]byte, error) { | |
| type NoMethod CustomerProfileSummary | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // CustomerProfileWebPresence: Web presence information for the customer | |
| // profile. | |
| type CustomerProfileWebPresence struct { | |
| // CitationIds: Optional. The citation ids for the web presence. | |
| CitationIds []string `json:"citationIds,omitempty"` | |
| // Domain: Required. The domain name of the web presence. | |
| Domain string `json:"domain,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "CitationIds") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "CitationIds") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s CustomerProfileWebPresence) MarshalJSON() ([]byte, error) { | |
| type NoMethod CustomerProfileWebPresence | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // DataLeakAlertDetail: Captures the specific details of Data Leak alert. | |
| type DataLeakAlertDetail struct { | |
| // DiscoveryDocumentIds: Required. Array of ids to accommodate multiple | |
| // discovery documents | |
| DiscoveryDocumentIds []string `json:"discoveryDocumentIds,omitempty"` | |
| // Severity: Required. The severity of the Data Leak alert. Allowed values are: | |
| // * `LOW` * `MEDIUM` * `HIGH` * `CRITICAL` | |
| Severity string `json:"severity,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "DiscoveryDocumentIds") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "DiscoveryDocumentIds") to include | |
| // in API requests with the JSON null value. By default, fields with empty | |
| // values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s DataLeakAlertDetail) MarshalJSON() ([]byte, error) { | |
| type NoMethod DataLeakAlertDetail | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // DataLeakFindingDetail: A detail object for a Data Leak finding. | |
| type DataLeakFindingDetail struct { | |
| // DocumentId: Required. The unique identifier of the document that triggered | |
| // the Data Leak finding. This ID can be used to retrieve the content of the | |
| // document for further analysis. | |
| DocumentId string `json:"documentId,omitempty"` | |
| // MatchScore: Required. Reference to the match score of the Data Leak finding. | |
| // This is a float value greater than 0 and less than or equal to 1 calculated | |
| // by the matching engine based on the similarity of the document and the user | |
| // provided configurations. | |
| MatchScore float64 `json:"matchScore,omitempty"` | |
| // Severity: Required. The severity of the Data Leak finding. This indicates | |
| // the potential impact of the threat. | |
| // | |
| // Possible values: | |
| // "SEVERITY_UNSPECIFIED" - Default value, should never be set. | |
| // "LOW" - Low severity. | |
| // "MEDIUM" - Medium severity. | |
| // "HIGH" - High severity. | |
| // "CRITICAL" - Critical severity. | |
| Severity string `json:"severity,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "DocumentId") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "DocumentId") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s DataLeakFindingDetail) MarshalJSON() ([]byte, error) { | |
| type NoMethod DataLeakFindingDetail | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| func (s *DataLeakFindingDetail) UnmarshalJSON(data []byte) error { | |
| type NoMethod DataLeakFindingDetail | |
| var s1 struct { | |
| MatchScore gensupport.JSONFloat64 `json:"matchScore"` | |
| *NoMethod | |
| } | |
| s1.NoMethod = (*NoMethod)(s) | |
| if err := json.Unmarshal(data, &s1); err != nil { | |
| return err | |
| } | |
| s.MatchScore = float64(s1.MatchScore) | |
| return nil | |
| } | |
| // DocumentQuery: Represents a query to match documents. | |
| type DocumentQuery struct { | |
| // DataModel: Required. The data model to query against. | |
| // | |
| // Possible values: | |
| // "DATA_MODEL_UNSPECIFIED" - Default value, should never be set. | |
| // "DATA_MODEL_GTI" - GTI data model. | |
| DataModel string `json:"dataModel,omitempty"` | |
| // Query: Required. The query string. | |
| Query string `json:"query,omitempty"` | |
| // QueryType: Required. The type of query. | |
| // | |
| // Possible values: | |
| // "QUERY_TYPE_UNSPECIFIED" - Default value, should never be set. | |
| // "QUERY_TYPE_LUCENE" - Lucene query type. | |
| QueryType string `json:"queryType,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "DataModel") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "DataModel") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s DocumentQuery) MarshalJSON() ([]byte, error) { | |
| type NoMethod DocumentQuery | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // DomainConfiguration: Configuration holding settings for one or more | |
| // monitored domains. | |
| type DomainConfiguration struct { | |
| // DomainSettings: Optional. A list of settings for individual domains. | |
| DomainSettings []*DomainSetting `json:"domainSettings,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "DomainSettings") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "DomainSettings") to include in | |
| // API requests with the JSON null value. By default, fields with empty values | |
| // are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s DomainConfiguration) MarshalJSON() ([]byte, error) { | |
| type NoMethod DomainConfiguration | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // DomainMonitoringFeatureConfig: Specific configuration for the Domain | |
| // Monitoring feature. | |
| type DomainMonitoringFeatureConfig struct { | |
| // Disabled: Optional. Whether the Domain Monitoring feature is disabled for | |
| // the domain. | |
| Disabled bool `json:"disabled,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Disabled") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Disabled") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s DomainMonitoringFeatureConfig) MarshalJSON() ([]byte, error) { | |
| type NoMethod DomainMonitoringFeatureConfig | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // DomainSetting: Feature settings and toggles for a single specific domain. | |
| type DomainSetting struct { | |
| // Domain: Required. The domain name to match against. | |
| Domain string `json:"domain,omitempty"` | |
| // DomainMonitoringConfig: Optional. If not present, Domain Monitoring is | |
| // enabled. | |
| DomainMonitoringConfig *DomainMonitoringFeatureConfig `json:"domainMonitoringConfig,omitempty"` | |
| // State: Output only. The verification state of the domain. | |
| // | |
| // Possible values: | |
| // "STATE_UNSPECIFIED" - Default value. This value is unused. | |
| // "PENDING" - Verification is pending. The customer needs to add the TXT | |
| // record. | |
| // "VERIFIED" - Verification succeeded. | |
| State string `json:"state,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Domain") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Domain") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s DomainSetting) MarshalJSON() ([]byte, error) { | |
| type NoMethod DomainSetting | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // EnumerateAlertFacetsResponse: Response message for EnumerateAlertFacets. | |
| type EnumerateAlertFacetsResponse struct { | |
| // Facets: List of facets and the counts. | |
| Facets []*Facet `json:"facets,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "Facets") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Facets") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s EnumerateAlertFacetsResponse) MarshalJSON() ([]byte, error) { | |
| type NoMethod EnumerateAlertFacetsResponse | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Evidence: Details the evidence used to determine the relevance verdict. | |
| type Evidence struct { | |
| // CommonThemes: A list of semantic themes or concepts found to be common, | |
| // related, or aligned between the sources, supporting the verdict. | |
| CommonThemes []string `json:"commonThemes,omitempty"` | |
| // DistinctThemes: A list of semantic themes or descriptions unique to one | |
| // source or semantically distant. | |
| DistinctThemes []string `json:"distinctThemes,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "CommonThemes") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "CommonThemes") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Evidence) MarshalJSON() ([]byte, error) { | |
| type NoMethod Evidence | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Facet: Facet represents a sub element of a resource for filtering. The | |
| // results from this method are used to populate the filterable facets in the | |
| // UI. | |
| type Facet struct { | |
| // Facet: Name of the facet. This is also the string that needs to be used in | |
| // the filtering expression. | |
| Facet string `json:"facet,omitempty"` | |
| // FacetCounts: List of counts for the facet (if categorical). | |
| FacetCounts []*FacetCount `json:"facetCounts,omitempty"` | |
| // FacetType: The type of the facet. Options include "string", "int", "float", | |
| // "bool", "enum", "timestamp", "user" and are useful to show the right sort of | |
| // UI controls when building a AIP-160 style filtering string. | |
| FacetType string `json:"facetType,omitempty"` | |
| // MaxValue: Max value of the facet stringified based on type. Will be | |
| // populated and formatted the same as min_value. | |
| MaxValue string `json:"maxValue,omitempty"` | |
| // MinValue: Min value of the facet stringified based on type. This is only | |
| // populated for facets that have a clear ordering, for types like enum it will | |
| // be left empty. Timestamps will be formatted using RFC3339. | |
| MinValue string `json:"minValue,omitempty"` | |
| // TotalCount: Total number of records that contain this facet with ANY value. | |
| TotalCount int64 `json:"totalCount,omitempty,string"` | |
| // ForceSendFields is a list of field names (e.g. "Facet") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Facet") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Facet) MarshalJSON() ([]byte, error) { | |
| type NoMethod Facet | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // FacetCount: FacetCount represents a count of records with each facet value. | |
| type FacetCount struct { | |
| // Count: Count of records with the value. | |
| Count int64 `json:"count,omitempty"` | |
| // Value: Value of the facet stringified. Timestamps will be formatted using | |
| // RFC3339. | |
| Value string `json:"value,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Count") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Count") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s FacetCount) MarshalJSON() ([]byte, error) { | |
| type NoMethod FacetCount | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Finding: A ‘stateless’ and a point in time event that a check produced a | |
| // result of interest. | |
| type Finding struct { | |
| // AiSummary: Optional. AI summary of the finding. | |
| AiSummary string `json:"aiSummary,omitempty"` | |
| // Alert: Optional. Name of the alert that this finding is bound to. | |
| Alert string `json:"alert,omitempty"` | |
| // Audit: Output only. Audit data about the finding. | |
| Audit *Audit `json:"audit,omitempty"` | |
| // Configurations: Optional. Configuration names that are bound to this | |
| // finding. | |
| Configurations []string `json:"configurations,omitempty"` | |
| // Detail: Required. Holder of the domain specific details of the finding. | |
| Detail *FindingDetail `json:"detail,omitempty"` | |
| // DisplayName: Required. A short descriptive title for the finding <= 250 | |
| // chars. EX: "Actor 'baddy' offering $1000 for credentials of 'goodguy'". | |
| DisplayName string `json:"displayName,omitempty"` | |
| // Name: Identifier. Server generated name for the finding (leave clear during | |
| // creation). Format: projects/{project}/findings/{finding} | |
| Name string `json:"name,omitempty"` | |
| // Provider: Required. Logical source of this finding (name of the sub-engine). | |
| Provider string `json:"provider,omitempty"` | |
| // RelevanceAnalysis: Output only. High-Precision Relevance Analysis verdict | |
| // for the finding. | |
| RelevanceAnalysis *RelevanceAnalysis `json:"relevanceAnalysis,omitempty"` | |
| // ReoccurrenceTimes: Output only. When identical finding (same labels and same | |
| // details) has re-occurred. | |
| ReoccurrenceTimes []string `json:"reoccurrenceTimes,omitempty"` | |
| // Severity: Optional. Deprecated: Use the `severity_analysis` field instead. | |
| // Base severity score from the finding source. | |
| Severity float64 `json:"severity,omitempty"` | |
| // SeverityAnalysis: Output only. High-Precision Severity Analysis verdict for | |
| // the finding. | |
| SeverityAnalysis *SeverityAnalysis `json:"severityAnalysis,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "AiSummary") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "AiSummary") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Finding) MarshalJSON() ([]byte, error) { | |
| type NoMethod Finding | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| func (s *Finding) UnmarshalJSON(data []byte) error { | |
| type NoMethod Finding | |
| var s1 struct { | |
| Severity gensupport.JSONFloat64 `json:"severity"` | |
| *NoMethod | |
| } | |
| s1.NoMethod = (*NoMethod)(s) | |
| if err := json.Unmarshal(data, &s1); err != nil { | |
| return err | |
| } | |
| s.Severity = float64(s1.Severity) | |
| return nil | |
| } | |
| // FindingDetail: Wrapper class that contains the union struct for all the | |
| // various findings detail specific classes. | |
| type FindingDetail struct { | |
| // DataLeak: Data Leak finding detail type. | |
| DataLeak *DataLeakFindingDetail `json:"dataLeak,omitempty"` | |
| // DetailType: Output only. Name of the detail type. Will be set by the server | |
| // during creation to the name of the field that is set in the detail union. | |
| DetailType string `json:"detailType,omitempty"` | |
| // InitialAccessBroker: Initial Access Broker finding detail type. | |
| InitialAccessBroker *InitialAccessBrokerFindingDetail `json:"initialAccessBroker,omitempty"` | |
| // InsiderThreat: Insider Threat finding detail type. | |
| InsiderThreat *InsiderThreatFindingDetail `json:"insiderThreat,omitempty"` | |
| // TargetTechnology: Technology Watchlist finding detail type. | |
| TargetTechnology *TargetTechnologyFindingDetail `json:"targetTechnology,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "DataLeak") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "DataLeak") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s FindingDetail) MarshalJSON() ([]byte, error) { | |
| type NoMethod FindingDetail | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // GenerateOrgProfileConfigurationRequest: Request message for | |
| // GenerateOrgProfileConfiguration. | |
| type GenerateOrgProfileConfigurationRequest struct { | |
| // DisplayName: Required. The display name of the organization to generate the | |
| // profile for. | |
| DisplayName string `json:"displayName,omitempty"` | |
| // Domain: Required. The domain of the organization to generate the profile | |
| // for. | |
| Domain string `json:"domain,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "DisplayName") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "DisplayName") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s GenerateOrgProfileConfigurationRequest) MarshalJSON() ([]byte, error) { | |
| type NoMethod GenerateOrgProfileConfigurationRequest | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // GetPasswordResponse: Response message for GetPassword. | |
| type GetPasswordResponse struct { | |
| // Password: The decrypted cleartext password for the compromised credential. | |
| Password string `json:"password,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "Password") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Password") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s GetPasswordResponse) MarshalJSON() ([]byte, error) { | |
| type NoMethod GetPasswordResponse | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // InitialAccessBrokerAlertDetail: Captures the specific details of | |
| // InitialAccessBroker (IAB) alert. | |
| type InitialAccessBrokerAlertDetail struct { | |
| // DiscoveryDocumentIds: Required. Array of ids to accommodate multiple | |
| // discovery documents | |
| DiscoveryDocumentIds []string `json:"discoveryDocumentIds,omitempty"` | |
| // Severity: Required. The severity of the Initial Access Broker (IAB) alert. | |
| // Allowed values are: * `LOW` * `MEDIUM` * `HIGH` * `CRITICAL` | |
| Severity string `json:"severity,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "DiscoveryDocumentIds") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "DiscoveryDocumentIds") to include | |
| // in API requests with the JSON null value. By default, fields with empty | |
| // values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s InitialAccessBrokerAlertDetail) MarshalJSON() ([]byte, error) { | |
| type NoMethod InitialAccessBrokerAlertDetail | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // InitialAccessBrokerFindingDetail: A detail object for an Initial Access | |
| // Broker (IAB) finding. | |
| type InitialAccessBrokerFindingDetail struct { | |
| // DocumentId: Required. The unique identifier of the document that triggered | |
| // the IAB finding. This ID can be used to retrieve the content of the document | |
| // for further analysis. | |
| DocumentId string `json:"documentId,omitempty"` | |
| // MatchScore: Required. Reference to the match score of the IAB finding. This | |
| // is a float value between 0 and 1 calculated by the matching engine based on | |
| // the similarity of the document and the user provided configurations. | |
| MatchScore float64 `json:"matchScore,omitempty"` | |
| // Severity: Required. The severity of the IAB finding. This indicates the | |
| // potential impact of the threat. | |
| // | |
| // Possible values: | |
| // "SEVERITY_UNSPECIFIED" | |
| // "LOW" | |
| // "MEDIUM" | |
| // "HIGH" | |
| // "CRITICAL" | |
| Severity string `json:"severity,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "DocumentId") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "DocumentId") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s InitialAccessBrokerFindingDetail) MarshalJSON() ([]byte, error) { | |
| type NoMethod InitialAccessBrokerFindingDetail | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| func (s *InitialAccessBrokerFindingDetail) UnmarshalJSON(data []byte) error { | |
| type NoMethod InitialAccessBrokerFindingDetail | |
| var s1 struct { | |
| MatchScore gensupport.JSONFloat64 `json:"matchScore"` | |
| *NoMethod | |
| } | |
| s1.NoMethod = (*NoMethod)(s) | |
| if err := json.Unmarshal(data, &s1); err != nil { | |
| return err | |
| } | |
| s.MatchScore = float64(s1.MatchScore) | |
| return nil | |
| } | |
| // InsiderThreatAlertDetail: Captures the specific details of InsiderThreat | |
| // alert. | |
| type InsiderThreatAlertDetail struct { | |
| // DiscoveryDocumentIds: Required. Array of ids to accommodate multiple | |
| // discovery documents | |
| DiscoveryDocumentIds []string `json:"discoveryDocumentIds,omitempty"` | |
| // Severity: Required. The severity of the Insider Threat alert. Allowed values | |
| // are: * `LOW` * `MEDIUM` * `HIGH` * `CRITICAL` | |
| Severity string `json:"severity,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "DiscoveryDocumentIds") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "DiscoveryDocumentIds") to include | |
| // in API requests with the JSON null value. By default, fields with empty | |
| // values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s InsiderThreatAlertDetail) MarshalJSON() ([]byte, error) { | |
| type NoMethod InsiderThreatAlertDetail | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // InsiderThreatFindingDetail: A detail object for a InsiderThreat finding. | |
| type InsiderThreatFindingDetail struct { | |
| // DocumentId: Required. The unique identifier of the document that triggered | |
| // the InsiderThreat finding. This ID can be used to retrieve the content of | |
| // the document for further analysis. | |
| DocumentId string `json:"documentId,omitempty"` | |
| // MatchScore: Required. Reference to the match score of the InsiderThreat | |
| // finding. This is a float value greater than 0 and less than or equal to 1 | |
| // calculated by the matching engine based on the similarity of the document | |
| // and the user provided configurations. | |
| MatchScore float64 `json:"matchScore,omitempty"` | |
| // Severity: Required. The severity of the InsiderThreat finding. This | |
| // indicates the potential impact of the threat. | |
| // | |
| // Possible values: | |
| // "SEVERITY_UNSPECIFIED" - Default value, should never be set. | |
| // "LOW" - Low severity. | |
| // "MEDIUM" - Medium severity. | |
| // "HIGH" - High severity. | |
| // "CRITICAL" - Critical severity. | |
| Severity string `json:"severity,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "DocumentId") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "DocumentId") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s InsiderThreatFindingDetail) MarshalJSON() ([]byte, error) { | |
| type NoMethod InsiderThreatFindingDetail | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| func (s *InsiderThreatFindingDetail) UnmarshalJSON(data []byte) error { | |
| type NoMethod InsiderThreatFindingDetail | |
| var s1 struct { | |
| MatchScore gensupport.JSONFloat64 `json:"matchScore"` | |
| *NoMethod | |
| } | |
| s1.NoMethod = (*NoMethod)(s) | |
| if err := json.Unmarshal(data, &s1); err != nil { | |
| return err | |
| } | |
| s.MatchScore = float64(s1.MatchScore) | |
| return nil | |
| } | |
| // LegacyMetadata: Legacy metadata associated with this scenario/monitor. | |
| type LegacyMetadata struct { | |
| // AggregationEnabled: Output only. Whether aggregation is enabled for alerts | |
| // from this monitor. | |
| AggregationEnabled bool `json:"aggregationEnabled,omitempty"` | |
| // AggregationSimilarity: Output only. Similarity threshold for aggregation. | |
| AggregationSimilarity float64 `json:"aggregationSimilarity,omitempty"` | |
| // ConditionVersion: Output only. Version of the condition schema. | |
| ConditionVersion int64 `json:"conditionVersion,omitempty"` | |
| // CreatorUserId: Output only. User ID who created the monitor. | |
| CreatorUserId string `json:"creatorUserId,omitempty"` | |
| // Description: Output only. Description of the legacy monitor. | |
| Description string `json:"description,omitempty"` | |
| // DisabledCode: Output only. Code indicating why the monitor is disabled (if | |
| // applicable). | |
| DisabledCode string `json:"disabledCode,omitempty"` | |
| // DisabledReason: Output only. Reason why the monitor is disabled (if | |
| // applicable). | |
| DisabledReason string `json:"disabledReason,omitempty"` | |
| // DisplayName: Output only. Name of the legacy monitor. | |
| DisplayName string `json:"displayName,omitempty"` | |
| // EmailNotificationEnabled: Output only. Deprecated: Whether email | |
| // notifications are enabled. This field will not be used as email | |
| // notifications are handled through the GTI Mail Hub. | |
| EmailNotificationEnabled bool `json:"emailNotificationEnabled,omitempty"` | |
| // EmailNotificationImmediate: Output only. Deprecated: Whether email | |
| // notifications are intermediate/immediate. This field will not be used as | |
| // email notifications are handled through the GTI Mail Hub. | |
| EmailNotificationImmediate bool `json:"emailNotificationImmediate,omitempty"` | |
| // LegacyMonitorId: Output only. Unique identifier of the legacy monitor. | |
| LegacyMonitorId string `json:"legacyMonitorId,omitempty"` | |
| // StaleTime: Output only. Time the legacy monitor was considered stale. | |
| StaleTime string `json:"staleTime,omitempty"` | |
| // TemplateId: Output only. ID of the template this monitor was created from. | |
| TemplateId string `json:"templateId,omitempty"` | |
| // TenantId: Output only. ID of the tenant owning the monitor. | |
| TenantId string `json:"tenantId,omitempty"` | |
| // UpdaterUserId: Output only. User ID who last updated the monitor. | |
| UpdaterUserId string `json:"updaterUserId,omitempty"` | |
| // Version: Output only. Version of the monitor configuration. | |
| Version int64 `json:"version,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "AggregationEnabled") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "AggregationEnabled") to include | |
| // in API requests with the JSON null value. By default, fields with empty | |
| // values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s LegacyMetadata) MarshalJSON() ([]byte, error) { | |
| type NoMethod LegacyMetadata | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| func (s *LegacyMetadata) UnmarshalJSON(data []byte) error { | |
| type NoMethod LegacyMetadata | |
| var s1 struct { | |
| AggregationSimilarity gensupport.JSONFloat64 `json:"aggregationSimilarity"` | |
| *NoMethod | |
| } | |
| s1.NoMethod = (*NoMethod)(s) | |
| if err := json.Unmarshal(data, &s1); err != nil { | |
| return err | |
| } | |
| s.AggregationSimilarity = float64(s1.AggregationSimilarity) | |
| return nil | |
| } | |
| // ListAlertsResponse: Response message for ListAlerts. | |
| type ListAlertsResponse struct { | |
| // Alerts: List of alerts. | |
| Alerts []*Alert `json:"alerts,omitempty"` | |
| // NextPageToken: Page token. | |
| NextPageToken string `json:"nextPageToken,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "Alerts") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Alerts") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ListAlertsResponse) MarshalJSON() ([]byte, error) { | |
| type NoMethod ListAlertsResponse | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // ListConfigurationRevisionsResponse: Response message for | |
| // ListConfigurationRevisions. | |
| type ListConfigurationRevisionsResponse struct { | |
| // NextPageToken: A token, which can be sent as `page_token` to retrieve the | |
| // next page. If this field is omitted, there are no subsequent pages. | |
| NextPageToken string `json:"nextPageToken,omitempty"` | |
| // Revisions: The Configuration Revisions associated with the specified | |
| // Configuration | |
| Revisions []*ConfigurationRevision `json:"revisions,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "NextPageToken") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "NextPageToken") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ListConfigurationRevisionsResponse) MarshalJSON() ([]byte, error) { | |
| type NoMethod ListConfigurationRevisionsResponse | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // ListConfigurationsResponse: Response message for ListConfigurations. | |
| type ListConfigurationsResponse struct { | |
| // Configurations: List of configurations. | |
| Configurations []*Configuration `json:"configurations,omitempty"` | |
| // NextPageToken: Page token. | |
| NextPageToken string `json:"nextPageToken,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "Configurations") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Configurations") to include in | |
| // API requests with the JSON null value. By default, fields with empty values | |
| // are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ListConfigurationsResponse) MarshalJSON() ([]byte, error) { | |
| type NoMethod ListConfigurationsResponse | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // ListFindingsResponse: Response message for ListFindings. | |
| type ListFindingsResponse struct { | |
| // Findings: List of findings. | |
| Findings []*Finding `json:"findings,omitempty"` | |
| // NextPageToken: Page token. | |
| NextPageToken string `json:"nextPageToken,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "Findings") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Findings") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ListFindingsResponse) MarshalJSON() ([]byte, error) { | |
| type NoMethod ListFindingsResponse | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // MarkAlertAsBenignRequest: Request message for MarkAlertAsBenign. | |
| type MarkAlertAsBenignRequest struct { | |
| } | |
| // MarkAlertAsDuplicateRequest: Request message for MarkAlertAsDuplicate. | |
| type MarkAlertAsDuplicateRequest struct { | |
| // DuplicateOf: Optional. Name of the alert to mark as a duplicate of. Format: | |
| // projects/{project}/alerts/{alert} | |
| DuplicateOf string `json:"duplicateOf,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "DuplicateOf") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "DuplicateOf") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s MarkAlertAsDuplicateRequest) MarshalJSON() ([]byte, error) { | |
| type NoMethod MarkAlertAsDuplicateRequest | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // MarkAlertAsEscalatedRequest: Request message for MarkAlertAsEscalated. | |
| type MarkAlertAsEscalatedRequest struct { | |
| } | |
| // MarkAlertAsFalsePositiveRequest: Request message for | |
| // MarkAlertAsFalsePositive. | |
| type MarkAlertAsFalsePositiveRequest struct { | |
| } | |
| // MarkAlertAsNotActionableRequest: Request message for | |
| // MarkAlertAsNotActionable. | |
| type MarkAlertAsNotActionableRequest struct { | |
| } | |
| // MarkAlertAsReadRequest: Request message for MarkAlertAsRead. | |
| type MarkAlertAsReadRequest struct { | |
| } | |
| // MarkAlertAsResolvedRequest: Request message for MarkAlertAsResolved. | |
| type MarkAlertAsResolvedRequest struct { | |
| } | |
| // MarkAlertAsTrackedExternallyRequest: Request message for | |
| // MarkAlertAsTrackedExternally. | |
| type MarkAlertAsTrackedExternallyRequest struct { | |
| } | |
| // MarkAlertAsTriagedRequest: Request message for MarkAlertAsTriaged. | |
| type MarkAlertAsTriagedRequest struct { | |
| } | |
| // Operation: This resource represents a long-running operation that is the | |
| // result of a network API call. | |
| type Operation struct { | |
| // Done: If the value is `false`, it means the operation is still in progress. | |
| // If `true`, the operation is completed, and either `error` or `response` is | |
| // available. | |
| Done bool `json:"done,omitempty"` | |
| // Error: The error result of the operation in case of failure or cancellation. | |
| Error *Status `json:"error,omitempty"` | |
| // Metadata: Service-specific metadata associated with the operation. It | |
| // typically contains progress information and common metadata such as create | |
| // time. Some services might not provide such metadata. Any method that returns | |
| // a long-running operation should document the metadata type, if any. | |
| Metadata googleapi.RawMessage `json:"metadata,omitempty"` | |
| // Name: The server-assigned name, which is only unique within the same service | |
| // that originally returns it. If you use the default HTTP mapping, the `name` | |
| // should be a resource name ending with `operations/{unique_id}`. | |
| Name string `json:"name,omitempty"` | |
| // Response: The normal, successful response of the operation. If the original | |
| // method returns no data on success, such as `Delete`, the response is | |
| // `google.protobuf.Empty`. If the original method is standard | |
| // `Get`/`Create`/`Update`, the response should be the resource. For other | |
| // methods, the response should have the type `XxxResponse`, where `Xxx` is the | |
| // original method name. For example, if the original method name is | |
| // `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. | |
| Response googleapi.RawMessage `json:"response,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "Done") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Done") to include in API requests | |
| // with the JSON null value. By default, fields with empty values are omitted | |
| // from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Operation) MarshalJSON() ([]byte, error) { | |
| type NoMethod Operation | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // PriorityAnalysis: Structured priority analysis for a threat. | |
| type PriorityAnalysis struct { | |
| // Confidence: The level of confidence in the given verdict. | |
| // | |
| // Possible values: | |
| // "CONFIDENCE_LEVEL_UNSPECIFIED" - Default value. Confidence level is not | |
| // specified. | |
| // "CONFIDENCE_LEVEL_LOW" - Low confidence in the verdict. | |
| // "CONFIDENCE_LEVEL_MEDIUM" - Medium confidence in the verdict. | |
| // "CONFIDENCE_LEVEL_HIGH" - High confidence in the verdict. | |
| Confidence string `json:"confidence,omitempty"` | |
| // PriorityLevel: The level of Priority. | |
| // | |
| // Possible values: | |
| // "PRIORITY_LEVEL_UNSPECIFIED" - Default value, should never be set. | |
| // "PRIORITY_LEVEL_LOW" - Low Priority. | |
| // "PRIORITY_LEVEL_MEDIUM" - Medium Priority. | |
| // "PRIORITY_LEVEL_HIGH" - High Priority. | |
| // "PRIORITY_LEVEL_CRITICAL" - Critical Priority. | |
| PriorityLevel string `json:"priorityLevel,omitempty"` | |
| // Reasoning: Human-readable explanation from the model, detailing why a | |
| // particular result is considered to have a certain priority. | |
| Reasoning string `json:"reasoning,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Confidence") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Confidence") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s PriorityAnalysis) MarshalJSON() ([]byte, error) { | |
| type NoMethod PriorityAnalysis | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // ProductFix: Contains details about a product fix. | |
| type ProductFix struct { | |
| // DisplayName: Required. The name of the fix. Ex: "Magento". | |
| DisplayName string `json:"displayName,omitempty"` | |
| // PublishTime: Optional. The published time of the fix. | |
| PublishTime string `json:"publishTime,omitempty"` | |
| // SourceId: Required. The source ID of the fix. Ex: "APPSEC-1420". | |
| SourceId string `json:"sourceId,omitempty"` | |
| // Uri: Optional. The URI of the fix. | |
| Uri string `json:"uri,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "DisplayName") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "DisplayName") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s ProductFix) MarshalJSON() ([]byte, error) { | |
| type NoMethod ProductFix | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // PublicExploit: Contains details about a public exploit. | |
| type PublicExploit struct { | |
| // ExploitGrade: Optional. The grade of the exploit. Ex: "non-weaponized". | |
| // | |
| // Possible values: | |
| // "EXPLOIT_GRADE_UNSPECIFIED" - Unspecified exploit grade. | |
| // "UNEVALUATED" - Unevaluated exploit grade. | |
| // "PROOF_OF_CONCEPT" - Proof-of-concept exploit grade. | |
| // "NON_WEAPONIZED" - Non-weaponized exploit grade. | |
| // "WEAPONIZED" - Weaponized exploit grade. | |
| // "SCANNER" - Scanner exploit grade. | |
| // "FAKE" - Fake exploit grade. | |
| ExploitGrade string `json:"exploitGrade,omitempty"` | |
| // ExploitName: Required. The name of the exploit. Ex: "Magentounauth.php.txt". | |
| ExploitName string `json:"exploitName,omitempty"` | |
| // ExploitReliability: Optional. The reliability of the exploit. Ex: | |
| // "Unreviewed". | |
| // | |
| // Possible values: | |
| // "EXPLOIT_RELIABILITY_UNSPECIFIED" - Unspecified exploit reliability. | |
| // "UNREVIEWED" - Confirmed exploit reliability. | |
| // "REVIEWED" - Uncorroborated exploit reliability. | |
| // "TESTED" - Unconfirmed exploit reliability. | |
| ExploitReliability string `json:"exploitReliability,omitempty"` | |
| // ReleaseTime: Optional. The release time of the exploit. | |
| ReleaseTime string `json:"releaseTime,omitempty"` | |
| // SizeBytes: Optional. The size of the exploit. | |
| SizeBytes int64 `json:"sizeBytes,omitempty,string"` | |
| // Uri: Optional. The URI of the exploit. | |
| Uri string `json:"uri,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "ExploitGrade") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "ExploitGrade") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s PublicExploit) MarshalJSON() ([]byte, error) { | |
| type NoMethod PublicExploit | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // RelevanceAnalysis: Structured relevance analysis for a threat. | |
| type RelevanceAnalysis struct { | |
| // Confidence: The level of confidence in the given verdict. | |
| // | |
| // Possible values: | |
| // "CONFIDENCE_LEVEL_UNSPECIFIED" - Default value. Confidence level is not | |
| // specified. | |
| // "CONFIDENCE_LEVEL_LOW" - Low confidence in the verdict. | |
| // "CONFIDENCE_LEVEL_MEDIUM" - Medium confidence in the verdict. | |
| // "CONFIDENCE_LEVEL_HIGH" - High confidence in the verdict. | |
| Confidence string `json:"confidence,omitempty"` | |
| // Evidence: Evidence supporting the verdict, including matched and unmatched | |
| // items. | |
| Evidence *Evidence `json:"evidence,omitempty"` | |
| // Reasoning: Human-readable explanation from the matcher, detailing why a | |
| // particular result is considered relevant or not relevant. | |
| Reasoning string `json:"reasoning,omitempty"` | |
| // RelevanceLevel: The level of relevance. | |
| // | |
| // Possible values: | |
| // "RELEVANCE_LEVEL_UNSPECIFIED" - Default value, should never be set. | |
| // "RELEVANCE_LEVEL_LOW" - Low Relevance. | |
| // "RELEVANCE_LEVEL_MEDIUM" - Medium Relevance. | |
| // "RELEVANCE_LEVEL_HIGH" - High Relevance. | |
| RelevanceLevel string `json:"relevanceLevel,omitempty"` | |
| // Relevant: Indicates whether the threat is considered relevant. | |
| Relevant bool `json:"relevant,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Confidence") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Confidence") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s RelevanceAnalysis) MarshalJSON() ([]byte, error) { | |
| type NoMethod RelevanceAnalysis | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // SearchFindingsResponse: Response message for SearchFindings. | |
| type SearchFindingsResponse struct { | |
| // Findings: List of findings. | |
| Findings []*Finding `json:"findings,omitempty"` | |
| // NextPageToken: Page token. | |
| NextPageToken string `json:"nextPageToken,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "Findings") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Findings") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s SearchFindingsResponse) MarshalJSON() ([]byte, error) { | |
| type NoMethod SearchFindingsResponse | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // SeverityAnalysis: Structured severity analysis for a threat. | |
| type SeverityAnalysis struct { | |
| // Confidence: The level of confidence in the given verdict. | |
| // | |
| // Possible values: | |
| // "CONFIDENCE_LEVEL_UNSPECIFIED" - Default value. Confidence level is not | |
| // specified. | |
| // "CONFIDENCE_LEVEL_LOW" - Low confidence in the verdict. | |
| // "CONFIDENCE_LEVEL_MEDIUM" - Medium confidence in the verdict. | |
| // "CONFIDENCE_LEVEL_HIGH" - High confidence in the verdict. | |
| Confidence string `json:"confidence,omitempty"` | |
| // Reasoning: Human-readable explanation from the model, detailing why a | |
| // particular result is considered to have a certain severity. | |
| Reasoning string `json:"reasoning,omitempty"` | |
| // SeverityLevel: The level of severity. | |
| // | |
| // Possible values: | |
| // "SEVERITY_LEVEL_UNSPECIFIED" - Default value, should never be set. | |
| // "SEVERITY_LEVEL_LOW" - Low Severity. | |
| // "SEVERITY_LEVEL_MEDIUM" - Medium Severity. | |
| // "SEVERITY_LEVEL_HIGH" - High Severity. | |
| SeverityLevel string `json:"severityLevel,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Confidence") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Confidence") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s SeverityAnalysis) MarshalJSON() ([]byte, error) { | |
| type NoMethod SeverityAnalysis | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // Status: The `Status` type defines a logical error model that is suitable for | |
| // different programming environments, including REST APIs and RPC APIs. It is | |
| // used by gRPC (https://github.com/grpc). Each `Status` message contains three | |
| // pieces of data: error code, error message, and error details. You can find | |
| // out more about this error model and how to work with it in the API Design | |
| // Guide (https://cloud.google.com/apis/design/errors). | |
| type Status struct { | |
| // Code: The status code, which should be an enum value of google.rpc.Code. | |
| Code int64 `json:"code,omitempty"` | |
| // Details: A list of messages that carry the error details. There is a common | |
| // set of message types for APIs to use. | |
| Details []googleapi.RawMessage `json:"details,omitempty"` | |
| // Message: A developer-facing error message, which should be in English. Any | |
| // user-facing error message should be localized and sent in the | |
| // google.rpc.Status.details field, or localized by the client. | |
| Message string `json:"message,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Code") to unconditionally | |
| // include in API requests. By default, fields with empty or default values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Code") to include in API requests | |
| // with the JSON null value. By default, fields with empty values are omitted | |
| // from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s Status) MarshalJSON() ([]byte, error) { | |
| type NoMethod Status | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // TargetTechnologyAlertDetail: Contains details for a technology watchlist | |
| // alert. | |
| type TargetTechnologyAlertDetail struct { | |
| // VulnerabilityMatch: Optional. The vulnerability match details. | |
| VulnerabilityMatch *VulnerabilityMatch `json:"vulnerabilityMatch,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "VulnerabilityMatch") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "VulnerabilityMatch") to include | |
| // in API requests with the JSON null value. By default, fields with empty | |
| // values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s TargetTechnologyAlertDetail) MarshalJSON() ([]byte, error) { | |
| type NoMethod TargetTechnologyAlertDetail | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // TargetTechnologyFindingDetail: Contains details for a technology watchlist | |
| // finding. | |
| type TargetTechnologyFindingDetail struct { | |
| // VulnerabilityMatch: Optional. The vulnerability match details. | |
| VulnerabilityMatch *VulnerabilityMatch `json:"vulnerabilityMatch,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "VulnerabilityMatch") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "VulnerabilityMatch") to include | |
| // in API requests with the JSON null value. By default, fields with empty | |
| // values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s TargetTechnologyFindingDetail) MarshalJSON() ([]byte, error) { | |
| type NoMethod TargetTechnologyFindingDetail | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // TechnologyWatchListAlertThreshold: TechnologyWatchListAlertThreshold | |
| // contains the thresholds for alerting. | |
| type TechnologyWatchListAlertThreshold struct { | |
| // CvssScoreMinimum: Optional. The minimum CVSS score for the alert. Evaluates | |
| // to CVSS v3 when available with a fallback to v2 and v4. Ex: 7.0. Valid range | |
| // is [0.0, 10.0]. | |
| CvssScoreMinimum float64 `json:"cvssScoreMinimum,omitempty"` | |
| // EpssScoreMinimum: Optional. The minimum epss score for the alert. Ex: 0.8. | |
| // Valid range is [0.0, 1.0]. | |
| EpssScoreMinimum float64 `json:"epssScoreMinimum,omitempty"` | |
| // ExploitationStates: Optional. The exploitation states of the alert. | |
| // | |
| // Possible values: | |
| // "EXPLOITATION_STATE_UNSPECIFIED" - Unspecified exploitation state. | |
| // "EXPLOITATION_STATE_NO_KNOWN" - No known exploitation. | |
| // "EXPLOITATION_STATE_REPORTED" - Exploitation has been reported. | |
| // "EXPLOITATION_STATE_SUSPECTED" - Exploitation is suspected. | |
| // "EXPLOITATION_STATE_CONFIRMED" - Exploitation is confirmed. | |
| // "EXPLOITATION_STATE_WIDESPREAD" - Widespread exploitation. | |
| ExploitationStates []string `json:"exploitationStates,omitempty"` | |
| // PriorityMinimum: Optional. The minimum priority for the alert. | |
| // | |
| // Possible values: | |
| // "PRIORITY_UNSPECIFIED" - Unspecified priority. | |
| // "P0" - Priority level 0. | |
| // "P1" - Priority level 1. | |
| // "P2" - Priority level 2. | |
| // "P3" - Priority level 3. | |
| // "P4" - Priority level 4. | |
| PriorityMinimum string `json:"priorityMinimum,omitempty"` | |
| // RiskRatingMinimum: Optional. The minimum risk rating for the alert. | |
| // | |
| // Possible values: | |
| // "RISK_RATING_UNSPECIFIED" - Unspecified risk rating. This is the default | |
| // value when the risk rating is not set. | |
| // "LOW" - Low risk rating. | |
| // "MEDIUM" - Medium risk rating. | |
| // "HIGH" - High risk rating. | |
| // "CRITICAL" - Critical risk rating. | |
| // "UNRATED" - The vulnerability has been assessed, but a specific risk | |
| // rating could not be determined or assigned. | |
| RiskRatingMinimum string `json:"riskRatingMinimum,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "CvssScoreMinimum") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "CvssScoreMinimum") to include in | |
| // API requests with the JSON null value. By default, fields with empty values | |
| // are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s TechnologyWatchListAlertThreshold) MarshalJSON() ([]byte, error) { | |
| type NoMethod TechnologyWatchListAlertThreshold | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| func (s *TechnologyWatchListAlertThreshold) UnmarshalJSON(data []byte) error { | |
| type NoMethod TechnologyWatchListAlertThreshold | |
| var s1 struct { | |
| CvssScoreMinimum gensupport.JSONFloat64 `json:"cvssScoreMinimum"` | |
| EpssScoreMinimum gensupport.JSONFloat64 `json:"epssScoreMinimum"` | |
| *NoMethod | |
| } | |
| s1.NoMethod = (*NoMethod)(s) | |
| if err := json.Unmarshal(data, &s1); err != nil { | |
| return err | |
| } | |
| s.CvssScoreMinimum = float64(s1.CvssScoreMinimum) | |
| s.EpssScoreMinimum = float64(s1.EpssScoreMinimum) | |
| return nil | |
| } | |
| // TechnologyWatchListConfig: TechnologyWatchListConfig is the configuration | |
| // for the technology watchlist. | |
| type TechnologyWatchListConfig struct { | |
| // AlertThreshold: Optional. Alert thresholds to effectively reduce noise. | |
| AlertThreshold *TechnologyWatchListAlertThreshold `json:"alertThreshold,omitempty"` | |
| // Technologies: Optional. List of vendor, technology or cpe fingerprint. | |
| // example: Microsoft office 360 Apache Server 3.5 | |
| // cpe:2.3:a:microsoft:outlook:*:*:*:*:*:*:*:* | |
| Technologies []string `json:"technologies,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "AlertThreshold") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "AlertThreshold") to include in | |
| // API requests with the JSON null value. By default, fields with empty values | |
| // are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s TechnologyWatchListConfig) MarshalJSON() ([]byte, error) { | |
| type NoMethod TechnologyWatchListConfig | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // UpsertConfigurationResponse: Response message for UpsertConfiguration. | |
| type UpsertConfigurationResponse struct { | |
| // Configuration: Output only. Created configuration ID with server assigned | |
| // id. | |
| Configuration string `json:"configuration,omitempty"` | |
| // ServerResponse contains the HTTP response code and headers from the server. | |
| googleapi.ServerResponse `json:"-"` | |
| // ForceSendFields is a list of field names (e.g. "Configuration") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Configuration") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s UpsertConfigurationResponse) MarshalJSON() ([]byte, error) { | |
| type NoMethod UpsertConfigurationResponse | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| // VulnerabilityMatch: Contains details about a vulnerability match. | |
| type VulnerabilityMatch struct { | |
| // Associations: Optional. Associated threat actors, malware, etc. This is | |
| // embedded as a snapshot because the details of the association at the time of | |
| // the vulnerability match are important for context and reporting. | |
| Associations []*Association `json:"associations,omitempty"` | |
| // CollectionId: Required. The collection ID of the vulnerability. Ex: | |
| // "vulnerability--cve-2025-9876". | |
| CollectionId string `json:"collectionId,omitempty"` | |
| // CveId: Required. The CVE ID of the vulnerability. Ex: "CVE-2025-9876". See | |
| // https://www.cve.org/ for more information. | |
| CveId string `json:"cveId,omitempty"` | |
| // Cvss3Score: Required. The CVSS score of the vulnerability. Evaluates to CVSS | |
| // v3 when available with a fallback to v2 and v4. Example: 6.4. | |
| Cvss3Score float64 `json:"cvss3Score,omitempty"` | |
| // Description: Required. A description of the vulnerability. | |
| Description string `json:"description,omitempty"` | |
| // DisclosureTime: Optional. The disclosure time of the vulnerability. | |
| DisclosureTime string `json:"disclosureTime,omitempty"` | |
| // EpssScore: Optional. The EPSS score, representing the probability of | |
| // exploitation. Example: 0.87. | |
| EpssScore float64 `json:"epssScore,omitempty"` | |
| // ExploitationConsequences: Optional. List of exploitation consequences for | |
| // the vulnerability. | |
| // | |
| // Possible values: | |
| // "EXPLOITATION_CONSEQUENCE_UNSPECIFIED" - Unspecified exploitation | |
| // consequence. | |
| // "CODE_EXECUTION" - Code execution consequence. | |
| // "COMMAND_EXECUTION" - Command execution consequence. | |
| // "DATA_LOSS" - Data loss consequence. | |
| // "DATA_MANIPULATION" - Data manipulation consequence. | |
| // "DENIAL_OF_SERVICE" - Denial-of-Service consequence. | |
| // "INFORMATION_DISCLOSURE" - Information disclosure consequence. | |
| // "UNAUTHORIZED_ACCESS" - Unauthorized access consequence. | |
| // "PRIVILEGE_ESCALATION" - Privilege escalation consequence. | |
| // "SANDBOX_ESCAPE" - Sandbox escape consequence. | |
| // "SECURITY_BYPASS" - Security bypass consequence. | |
| // "CONTAINER_ESCAPE" - Container escape consequence. | |
| // "SPOOFING" - Spoofing consequence. | |
| ExploitationConsequences []string `json:"exploitationConsequences,omitempty"` | |
| // ExploitationState: Required. The exploitation state of the vulnerability. | |
| // | |
| // Possible values: | |
| // "EXPLOITATION_STATE_UNSPECIFIED" - Unspecified exploitation state. | |
| // "EXPLOITATION_STATE_NO_KNOWN" - No known exploitation. | |
| // "EXPLOITATION_STATE_REPORTED" - Exploitation has been reported. | |
| // "EXPLOITATION_STATE_SUSPECTED" - Exploitation is suspected. | |
| // "EXPLOITATION_STATE_CONFIRMED" - Exploitation is confirmed. | |
| // "EXPLOITATION_STATE_WIDESPREAD" - Widespread exploitation. | |
| ExploitationState string `json:"exploitationState,omitempty"` | |
| // ExploitationVectors: Optional. List of exploitation vectors for the | |
| // vulnerability. | |
| // | |
| // Possible values: | |
| // "EXPLOITATION_VECTOR_UNSPECIFIED" - Unspecified exploitation vector. | |
| // "ADMINISTRATIVE_INTERFACE" - Administrative interface vector. | |
| // "BLUETOOTH_ACCESS" - Bluetooth access vector. | |
| // "BROWSER" - Browser vector. | |
| // "COMPROMISED_COMMUNICATION_CHANNEL" - Compromised communication channel | |
| // vector. | |
| // "EMAIL" - Email vector. | |
| // "EXPOSED_WEB_APPLICATION" - Exposed web application vector. | |
| // "LOCAL_NETWORK_ACCESS" - Local network access vector. | |
| // "MALICIOUS_APPLICATION" - Malicious application vector. | |
| // "MALICIOUS_FILE" - Malicious file vector. | |
| // "MALICIOUS_SERVER" - Malicious server vector. | |
| // "OPEN_PORT" - Open port vector. | |
| // "PHYSICAL_ACCESS" - Physical access vector. | |
| // "SHORT_RANGE_RADIO" - Short range radio vector. | |
| // "UNSPECIFIED_LOCAL_VECTOR" - Unspecified local vector. | |
| // "UNSPECIFIED_REMOTE_VECTOR" - Unspecified remote vector. | |
| // "VPN_ACCESS" - VPN access vector. | |
| // "WIFI_ACCESS" - WiFi access vector. | |
| ExploitationVectors []string `json:"exploitationVectors,omitempty"` | |
| // MatchedTechnologies: Optional. The specific technologies from the configured | |
| // watchlist that triggered the match. Ex: "Apache Struts". | |
| MatchedTechnologies []string `json:"matchedTechnologies,omitempty"` | |
| // Priority: Optional. The priority level of the vulnerability data. Ex: "P1". | |
| // | |
| // Possible values: | |
| // "PRIORITY_UNSPECIFIED" - Unspecified priority. | |
| // "P0" - Priority level 0. | |
| // "P1" - Priority level 1. | |
| // "P2" - Priority level 2. | |
| // "P3" - Priority level 3. | |
| // "P4" - Priority level 4. | |
| Priority string `json:"priority,omitempty"` | |
| // ProductFixes: Optional. List of product fixes for the vulnerability. | |
| ProductFixes []*ProductFix `json:"productFixes,omitempty"` | |
| // PublicExploits: Optional. List of public exploits. | |
| PublicExploits []*PublicExploit `json:"publicExploits,omitempty"` | |
| // PubliclyAvailableExploit: Output only. Whether a publicly available exploit | |
| // exists. | |
| PubliclyAvailableExploit bool `json:"publiclyAvailableExploit,omitempty"` | |
| // RiskRating: Required. The risk rating of the vulnerability. | |
| // | |
| // Possible values: | |
| // "RISK_RATING_UNSPECIFIED" - Unspecified risk rating. This is the default | |
| // value when the risk rating is not set. | |
| // "LOW" - Low risk rating. | |
| // "MEDIUM" - Medium risk rating. | |
| // "HIGH" - High risk rating. | |
| // "CRITICAL" - Critical risk rating. | |
| // "UNRATED" - The vulnerability has been assessed, but a specific risk | |
| // rating could not be determined or assigned. | |
| RiskRating string `json:"riskRating,omitempty"` | |
| // Technologies: Required. All technologies affected by the vulnerability. Ex: | |
| // "Apache Struts". | |
| Technologies []string `json:"technologies,omitempty"` | |
| // ForceSendFields is a list of field names (e.g. "Associations") to | |
| // unconditionally include in API requests. By default, fields with empty or | |
| // default values are omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more | |
| // details. | |
| ForceSendFields []string `json:"-"` | |
| // NullFields is a list of field names (e.g. "Associations") to include in API | |
| // requests with the JSON null value. By default, fields with empty values are | |
| // omitted from API requests. See | |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. | |
| NullFields []string `json:"-"` | |
| } | |
| func (s VulnerabilityMatch) MarshalJSON() ([]byte, error) { | |
| type NoMethod VulnerabilityMatch | |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) | |
| } | |
| func (s *VulnerabilityMatch) UnmarshalJSON(data []byte) error { | |
| type NoMethod VulnerabilityMatch | |
| var s1 struct { | |
| Cvss3Score gensupport.JSONFloat64 `json:"cvss3Score"` | |
| EpssScore gensupport.JSONFloat64 `json:"epssScore"` | |
| *NoMethod | |
| } | |
| s1.NoMethod = (*NoMethod)(s) | |
| if err := json.Unmarshal(data, &s1); err != nil { | |
| return err | |
| } | |
| s.Cvss3Score = float64(s1.Cvss3Score) | |
| s.EpssScore = float64(s1.EpssScore) | |
| return nil | |
| } | |
| type ProjectsGenerateOrgProfileCall struct { | |
| s *Service | |
| name string | |
| generateorgprofileconfigurationrequest *GenerateOrgProfileConfigurationRequest | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // GenerateOrgProfile: Triggers the generation of a Customer Profile for a | |
| // project. | |
| // | |
| // - name: The name of the project to generate the profile for. Format: | |
| // projects/{project}. | |
| func (r *ProjectsService) GenerateOrgProfile(name string, generateorgprofileconfigurationrequest *GenerateOrgProfileConfigurationRequest) *ProjectsGenerateOrgProfileCall { | |
| c := &ProjectsGenerateOrgProfileCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.name = name | |
| c.generateorgprofileconfigurationrequest = generateorgprofileconfigurationrequest | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsGenerateOrgProfileCall) Fields(s ...googleapi.Field) *ProjectsGenerateOrgProfileCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsGenerateOrgProfileCall) Context(ctx context.Context) *ProjectsGenerateOrgProfileCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsGenerateOrgProfileCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsGenerateOrgProfileCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.generateorgprofileconfigurationrequest) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}:generateOrgProfile") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "name": c.name, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.generateOrgProfile", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.generateOrgProfile" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Operation.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ProjectsGenerateOrgProfileCall) Do(opts ...googleapi.CallOption) (*Operation, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Operation{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.generateOrgProfile", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ProjectsAlertsBenignCall struct { | |
| s *Service | |
| name string | |
| markalertasbenignrequest *MarkAlertAsBenignRequest | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Benign: Marks an alert as benign - BENIGN. | |
| // | |
| // - name: Name of the alert to mark as a benign. Format: | |
| // projects/{project}/alerts/{alert}. | |
| func (r *ProjectsAlertsService) Benign(name string, markalertasbenignrequest *MarkAlertAsBenignRequest) *ProjectsAlertsBenignCall { | |
| c := &ProjectsAlertsBenignCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.name = name | |
| c.markalertasbenignrequest = markalertasbenignrequest | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsAlertsBenignCall) Fields(s ...googleapi.Field) *ProjectsAlertsBenignCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsAlertsBenignCall) Context(ctx context.Context) *ProjectsAlertsBenignCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsAlertsBenignCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsAlertsBenignCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.markalertasbenignrequest) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}:benign") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "name": c.name, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.benign", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.alerts.benign" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Alert.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ProjectsAlertsBenignCall) Do(opts ...googleapi.CallOption) (*Alert, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Alert{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.benign", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ProjectsAlertsDuplicateCall struct { | |
| s *Service | |
| name string | |
| markalertasduplicaterequest *MarkAlertAsDuplicateRequest | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Duplicate: Marks an alert as a duplicate of another alert. - DUPLICATE. | |
| // | |
| // - name: Name of the alert to mark as a duplicate. Format: | |
| // projects/{project}/alerts/{alert}. | |
| func (r *ProjectsAlertsService) Duplicate(name string, markalertasduplicaterequest *MarkAlertAsDuplicateRequest) *ProjectsAlertsDuplicateCall { | |
| c := &ProjectsAlertsDuplicateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.name = name | |
| c.markalertasduplicaterequest = markalertasduplicaterequest | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsAlertsDuplicateCall) Fields(s ...googleapi.Field) *ProjectsAlertsDuplicateCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsAlertsDuplicateCall) Context(ctx context.Context) *ProjectsAlertsDuplicateCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsAlertsDuplicateCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsAlertsDuplicateCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.markalertasduplicaterequest) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}:duplicate") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "name": c.name, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.duplicate", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.alerts.duplicate" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Alert.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ProjectsAlertsDuplicateCall) Do(opts ...googleapi.CallOption) (*Alert, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Alert{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.duplicate", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ProjectsAlertsEnumerateFacetsCall struct { | |
| s *Service | |
| parent string | |
| urlParams_ gensupport.URLParams | |
| ifNoneMatch_ string | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // EnumerateFacets: EnumerateAlertFacets returns the facets and the number of | |
| // alerts that meet the filter criteria and have that value for each facet. | |
| // | |
| // - parent: Parent of the alerts. | |
| func (r *ProjectsAlertsService) EnumerateFacets(parent string) *ProjectsAlertsEnumerateFacetsCall { | |
| c := &ProjectsAlertsEnumerateFacetsCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.parent = parent | |
| return c | |
| } | |
| // Filter sets the optional parameter "filter": Filter on what alerts will be | |
| // enumerated. | |
| func (c *ProjectsAlertsEnumerateFacetsCall) Filter(filter string) *ProjectsAlertsEnumerateFacetsCall { | |
| c.urlParams_.Set("filter", filter) | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsAlertsEnumerateFacetsCall) Fields(s ...googleapi.Field) *ProjectsAlertsEnumerateFacetsCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the | |
| // object's ETag matches the given value. This is useful for getting updates | |
| // only after the object has changed since the last request. | |
| func (c *ProjectsAlertsEnumerateFacetsCall) IfNoneMatch(entityTag string) *ProjectsAlertsEnumerateFacetsCall { | |
| c.ifNoneMatch_ = entityTag | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsAlertsEnumerateFacetsCall) Context(ctx context.Context) *ProjectsAlertsEnumerateFacetsCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsAlertsEnumerateFacetsCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsAlertsEnumerateFacetsCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| if c.ifNoneMatch_ != "" { | |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+parent}/alerts:enumerateFacets") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("GET", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "parent": c.parent, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.enumerateFacets", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.alerts.enumerateFacets" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *EnumerateAlertFacetsResponse.ServerResponse.Header or (if a response was | |
| // returned at all) in error.(*googleapi.Error).Header. Use | |
| // googleapi.IsNotModified to check whether the returned error was because | |
| // http.StatusNotModified was returned. | |
| func (c *ProjectsAlertsEnumerateFacetsCall) Do(opts ...googleapi.CallOption) (*EnumerateAlertFacetsResponse, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &EnumerateAlertFacetsResponse{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.enumerateFacets", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ProjectsAlertsEscalateCall struct { | |
| s *Service | |
| name string | |
| markalertasescalatedrequest *MarkAlertAsEscalatedRequest | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Escalate: Marks an alert as escalated - ESCALATED. | |
| // | |
| // - name: Name of the alert to mark as escalated. Format: | |
| // projects/{project}/alerts/{alert}. | |
| func (r *ProjectsAlertsService) Escalate(name string, markalertasescalatedrequest *MarkAlertAsEscalatedRequest) *ProjectsAlertsEscalateCall { | |
| c := &ProjectsAlertsEscalateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.name = name | |
| c.markalertasescalatedrequest = markalertasescalatedrequest | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsAlertsEscalateCall) Fields(s ...googleapi.Field) *ProjectsAlertsEscalateCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsAlertsEscalateCall) Context(ctx context.Context) *ProjectsAlertsEscalateCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsAlertsEscalateCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsAlertsEscalateCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.markalertasescalatedrequest) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}:escalate") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "name": c.name, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.escalate", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.alerts.escalate" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Alert.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ProjectsAlertsEscalateCall) Do(opts ...googleapi.CallOption) (*Alert, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Alert{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.escalate", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ProjectsAlertsFalsePositiveCall struct { | |
| s *Service | |
| name string | |
| markalertasfalsepositiverequest *MarkAlertAsFalsePositiveRequest | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // FalsePositive: Marks an alert as a false positive - FALSE_POSITIVE. | |
| // | |
| // - name: Name of the alert to mark as a false positive. Format: | |
| // projects/{project}/alerts/{alert}. | |
| func (r *ProjectsAlertsService) FalsePositive(name string, markalertasfalsepositiverequest *MarkAlertAsFalsePositiveRequest) *ProjectsAlertsFalsePositiveCall { | |
| c := &ProjectsAlertsFalsePositiveCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.name = name | |
| c.markalertasfalsepositiverequest = markalertasfalsepositiverequest | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsAlertsFalsePositiveCall) Fields(s ...googleapi.Field) *ProjectsAlertsFalsePositiveCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsAlertsFalsePositiveCall) Context(ctx context.Context) *ProjectsAlertsFalsePositiveCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsAlertsFalsePositiveCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsAlertsFalsePositiveCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.markalertasfalsepositiverequest) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}:falsePositive") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "name": c.name, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.falsePositive", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.alerts.falsePositive" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Alert.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ProjectsAlertsFalsePositiveCall) Do(opts ...googleapi.CallOption) (*Alert, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Alert{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.falsePositive", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ProjectsAlertsGetCall struct { | |
| s *Service | |
| name string | |
| urlParams_ gensupport.URLParams | |
| ifNoneMatch_ string | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Get: Get an alert by name. | |
| // | |
| // - name: Name of the alert to get. Format: projects/{project}/alerts/{alert}. | |
| func (r *ProjectsAlertsService) Get(name string) *ProjectsAlertsGetCall { | |
| c := &ProjectsAlertsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.name = name | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsAlertsGetCall) Fields(s ...googleapi.Field) *ProjectsAlertsGetCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the | |
| // object's ETag matches the given value. This is useful for getting updates | |
| // only after the object has changed since the last request. | |
| func (c *ProjectsAlertsGetCall) IfNoneMatch(entityTag string) *ProjectsAlertsGetCall { | |
| c.ifNoneMatch_ = entityTag | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsAlertsGetCall) Context(ctx context.Context) *ProjectsAlertsGetCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsAlertsGetCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsAlertsGetCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| if c.ifNoneMatch_ != "" { | |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("GET", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "name": c.name, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.get", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.alerts.get" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Alert.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ProjectsAlertsGetCall) Do(opts ...googleapi.CallOption) (*Alert, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Alert{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.get", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ProjectsAlertsGetPasswordCall struct { | |
| s *Service | |
| name string | |
| urlParams_ gensupport.URLParams | |
| ifNoneMatch_ string | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // GetPassword: Get the decrypted password of an alert. | |
| // | |
| // - name: Name of the alert to get password for. Format: | |
| // projects/{project}/alerts/{alert}. | |
| func (r *ProjectsAlertsService) GetPassword(name string) *ProjectsAlertsGetPasswordCall { | |
| c := &ProjectsAlertsGetPasswordCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.name = name | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsAlertsGetPasswordCall) Fields(s ...googleapi.Field) *ProjectsAlertsGetPasswordCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the | |
| // object's ETag matches the given value. This is useful for getting updates | |
| // only after the object has changed since the last request. | |
| func (c *ProjectsAlertsGetPasswordCall) IfNoneMatch(entityTag string) *ProjectsAlertsGetPasswordCall { | |
| c.ifNoneMatch_ = entityTag | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsAlertsGetPasswordCall) Context(ctx context.Context) *ProjectsAlertsGetPasswordCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsAlertsGetPasswordCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsAlertsGetPasswordCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| if c.ifNoneMatch_ != "" { | |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}:getPassword") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("GET", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "name": c.name, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.getPassword", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.alerts.getPassword" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *GetPasswordResponse.ServerResponse.Header or (if a response was returned at | |
| // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to | |
| // check whether the returned error was because http.StatusNotModified was | |
| // returned. | |
| func (c *ProjectsAlertsGetPasswordCall) Do(opts ...googleapi.CallOption) (*GetPasswordResponse, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &GetPasswordResponse{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.getPassword", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ProjectsAlertsListCall struct { | |
| s *Service | |
| parent string | |
| urlParams_ gensupport.URLParams | |
| ifNoneMatch_ string | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // List: Get a list of alerts that meet the filter criteria. | |
| // | |
| // - parent: Parent of the alerts. Format: projects/{project}. | |
| func (r *ProjectsAlertsService) List(parent string) *ProjectsAlertsListCall { | |
| c := &ProjectsAlertsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.parent = parent | |
| return c | |
| } | |
| // Filter sets the optional parameter "filter": Filter criteria. Supported | |
| // fields for filtering include: * `audit.create_time` * `audit.creator` * | |
| // `audit.update_time` * `audit.updater` * | |
| // `detail.data_leak.discovery_document_ids` * `detail.data_leak.severity` * | |
| // `detail.detail_type` * `detail.initial_access_broker.discovery_document_ids` | |
| // * `detail.initial_access_broker.severity` * | |
| // `detail.insider_threat.discovery_document_ids` * | |
| // `detail.insider_threat.severity` * `finding_count` * | |
| // `priority_analysis.priority_level` * `relevance_analysis.confidence` * | |
| // `relevance_analysis.relevance_level` * `relevance_analysis.relevant` * | |
| // `severity_analysis.severity_level` * `state` Examples: * `detail.detail_type | |
| // = "initial_access_broker" * `detail.detail_type != "data_leak" * | |
| // `detail.insider_threat.severity = "HIGH" * `audit.create_time >= | |
| // "2026-04-03T00:00:00Z" AND audit.create_time < "2026-04-06T00:00:00Z" * | |
| // `state = "NEW" OR state = "TRIAGED" * `severity_analysis.severity_level = | |
| // "SEVERITY_LEVEL_CRITICAL" | |
| func (c *ProjectsAlertsListCall) Filter(filter string) *ProjectsAlertsListCall { | |
| c.urlParams_.Set("filter", filter) | |
| return c | |
| } | |
| // OrderBy sets the optional parameter "orderBy": Order by criteria in the csv | |
| // format: "field1, field2 desc" or "field1, field2" or "field1 asc, field2". | |
| // If a field is specified without `asc` or `desc`, ascending order is used by | |
| // default. Supported fields for ordering are identical to those supported for | |
| // filtering. Examples: * `audit.create_time desc` * `audit.update_time asc` * | |
| // `audit.create_time desc, severity_analysis.severity_level desc` | |
| func (c *ProjectsAlertsListCall) OrderBy(orderBy string) *ProjectsAlertsListCall { | |
| c.urlParams_.Set("orderBy", orderBy) | |
| return c | |
| } | |
| // PageSize sets the optional parameter "pageSize": Page size. Default to 100 | |
| // alerts per page. Maximum is 1000 alerts per page. | |
| func (c *ProjectsAlertsListCall) PageSize(pageSize int64) *ProjectsAlertsListCall { | |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) | |
| return c | |
| } | |
| // PageToken sets the optional parameter "pageToken": Page token to retrieve | |
| // the next page of results. | |
| func (c *ProjectsAlertsListCall) PageToken(pageToken string) *ProjectsAlertsListCall { | |
| c.urlParams_.Set("pageToken", pageToken) | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsAlertsListCall) Fields(s ...googleapi.Field) *ProjectsAlertsListCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the | |
| // object's ETag matches the given value. This is useful for getting updates | |
| // only after the object has changed since the last request. | |
| func (c *ProjectsAlertsListCall) IfNoneMatch(entityTag string) *ProjectsAlertsListCall { | |
| c.ifNoneMatch_ = entityTag | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsAlertsListCall) Context(ctx context.Context) *ProjectsAlertsListCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsAlertsListCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsAlertsListCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| if c.ifNoneMatch_ != "" { | |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+parent}/alerts") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("GET", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "parent": c.parent, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.list", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.alerts.list" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *ListAlertsResponse.ServerResponse.Header or (if a response was returned at | |
| // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to | |
| // check whether the returned error was because http.StatusNotModified was | |
| // returned. | |
| func (c *ProjectsAlertsListCall) Do(opts ...googleapi.CallOption) (*ListAlertsResponse, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &ListAlertsResponse{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.list", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| // Pages invokes f for each page of results. | |
| // A non-nil error returned from f will halt the iteration. | |
| // The provided context supersedes any context provided to the Context method. | |
| func (c *ProjectsAlertsListCall) Pages(ctx context.Context, f func(*ListAlertsResponse) error) error { | |
| c.ctx_ = ctx | |
| defer c.PageToken(c.urlParams_.Get("pageToken")) | |
| for { | |
| x, err := c.Do() | |
| if err != nil { | |
| return err | |
| } | |
| if err := f(x); err != nil { | |
| return err | |
| } | |
| if x.NextPageToken == "" { | |
| return nil | |
| } | |
| c.PageToken(x.NextPageToken) | |
| } | |
| } | |
| type ProjectsAlertsNotActionableCall struct { | |
| s *Service | |
| name string | |
| markalertasnotactionablerequest *MarkAlertAsNotActionableRequest | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // NotActionable: Marks an alert as not actionable - NOT_ACTIONABLE. | |
| // | |
| // - name: Name of the alert to mark as a not actionable. Format: | |
| // projects/{project}/alerts/{alert}. | |
| func (r *ProjectsAlertsService) NotActionable(name string, markalertasnotactionablerequest *MarkAlertAsNotActionableRequest) *ProjectsAlertsNotActionableCall { | |
| c := &ProjectsAlertsNotActionableCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.name = name | |
| c.markalertasnotactionablerequest = markalertasnotactionablerequest | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsAlertsNotActionableCall) Fields(s ...googleapi.Field) *ProjectsAlertsNotActionableCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsAlertsNotActionableCall) Context(ctx context.Context) *ProjectsAlertsNotActionableCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsAlertsNotActionableCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsAlertsNotActionableCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.markalertasnotactionablerequest) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}:notActionable") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "name": c.name, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.notActionable", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.alerts.notActionable" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Alert.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ProjectsAlertsNotActionableCall) Do(opts ...googleapi.CallOption) (*Alert, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Alert{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.notActionable", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ProjectsAlertsReadCall struct { | |
| s *Service | |
| name string | |
| markalertasreadrequest *MarkAlertAsReadRequest | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Read: Marks an alert as read - READ. | |
| // | |
| // - name: Name of the alert to mark as read. Format: | |
| // projects/{project}/alerts/{alert}. | |
| func (r *ProjectsAlertsService) Read(name string, markalertasreadrequest *MarkAlertAsReadRequest) *ProjectsAlertsReadCall { | |
| c := &ProjectsAlertsReadCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.name = name | |
| c.markalertasreadrequest = markalertasreadrequest | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsAlertsReadCall) Fields(s ...googleapi.Field) *ProjectsAlertsReadCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsAlertsReadCall) Context(ctx context.Context) *ProjectsAlertsReadCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsAlertsReadCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsAlertsReadCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.markalertasreadrequest) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}:read") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "name": c.name, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.read", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.alerts.read" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Alert.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ProjectsAlertsReadCall) Do(opts ...googleapi.CallOption) (*Alert, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Alert{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.read", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ProjectsAlertsResolveCall struct { | |
| s *Service | |
| name string | |
| markalertasresolvedrequest *MarkAlertAsResolvedRequest | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Resolve: Marks an alert to closed state - RESOLVED. | |
| // | |
| // - name: Name of the alert to mark as resolved. Format: | |
| // projects/{project}/alerts/{alert}. | |
| func (r *ProjectsAlertsService) Resolve(name string, markalertasresolvedrequest *MarkAlertAsResolvedRequest) *ProjectsAlertsResolveCall { | |
| c := &ProjectsAlertsResolveCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.name = name | |
| c.markalertasresolvedrequest = markalertasresolvedrequest | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsAlertsResolveCall) Fields(s ...googleapi.Field) *ProjectsAlertsResolveCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsAlertsResolveCall) Context(ctx context.Context) *ProjectsAlertsResolveCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsAlertsResolveCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsAlertsResolveCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.markalertasresolvedrequest) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}:resolve") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "name": c.name, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.resolve", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.alerts.resolve" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Alert.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ProjectsAlertsResolveCall) Do(opts ...googleapi.CallOption) (*Alert, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Alert{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.resolve", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ProjectsAlertsTrackExternallyCall struct { | |
| s *Service | |
| name string | |
| markalertastrackedexternallyrequest *MarkAlertAsTrackedExternallyRequest | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // TrackExternally: Marks an alert as tracked externally - TRACKED_EXTERNALLY. | |
| // | |
| // - name: Name of the alert to mark as tracked externally. Format: | |
| // projects/{project}/alerts/{alert}. | |
| func (r *ProjectsAlertsService) TrackExternally(name string, markalertastrackedexternallyrequest *MarkAlertAsTrackedExternallyRequest) *ProjectsAlertsTrackExternallyCall { | |
| c := &ProjectsAlertsTrackExternallyCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.name = name | |
| c.markalertastrackedexternallyrequest = markalertastrackedexternallyrequest | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsAlertsTrackExternallyCall) Fields(s ...googleapi.Field) *ProjectsAlertsTrackExternallyCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsAlertsTrackExternallyCall) Context(ctx context.Context) *ProjectsAlertsTrackExternallyCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsAlertsTrackExternallyCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsAlertsTrackExternallyCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.markalertastrackedexternallyrequest) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}:trackExternally") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "name": c.name, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.trackExternally", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.alerts.trackExternally" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Alert.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ProjectsAlertsTrackExternallyCall) Do(opts ...googleapi.CallOption) (*Alert, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Alert{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.trackExternally", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ProjectsAlertsTriageCall struct { | |
| s *Service | |
| name string | |
| markalertastriagedrequest *MarkAlertAsTriagedRequest | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Triage: Marks an alert as triaged - TRIAGED. | |
| // | |
| // - name: Name of the alert to mark as a triaged. Format: | |
| // projects/{project}/alerts/{alert}. | |
| func (r *ProjectsAlertsService) Triage(name string, markalertastriagedrequest *MarkAlertAsTriagedRequest) *ProjectsAlertsTriageCall { | |
| c := &ProjectsAlertsTriageCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.name = name | |
| c.markalertastriagedrequest = markalertastriagedrequest | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsAlertsTriageCall) Fields(s ...googleapi.Field) *ProjectsAlertsTriageCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsAlertsTriageCall) Context(ctx context.Context) *ProjectsAlertsTriageCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsAlertsTriageCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsAlertsTriageCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.markalertastriagedrequest) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}:triage") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "name": c.name, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.triage", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.alerts.triage" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Alert.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ProjectsAlertsTriageCall) Do(opts ...googleapi.CallOption) (*Alert, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Alert{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.triage", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ProjectsAlertsDocumentsGetCall struct { | |
| s *Service | |
| name string | |
| urlParams_ gensupport.URLParams | |
| ifNoneMatch_ string | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Get: Gets a specific document associated with an alert. | |
| // | |
| // - name: Name of the alert document to get. Format: | |
| // projects/{project}/alerts/{alert}/documents/{document}. | |
| func (r *ProjectsAlertsDocumentsService) Get(name string) *ProjectsAlertsDocumentsGetCall { | |
| c := &ProjectsAlertsDocumentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.name = name | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsAlertsDocumentsGetCall) Fields(s ...googleapi.Field) *ProjectsAlertsDocumentsGetCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the | |
| // object's ETag matches the given value. This is useful for getting updates | |
| // only after the object has changed since the last request. | |
| func (c *ProjectsAlertsDocumentsGetCall) IfNoneMatch(entityTag string) *ProjectsAlertsDocumentsGetCall { | |
| c.ifNoneMatch_ = entityTag | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsAlertsDocumentsGetCall) Context(ctx context.Context) *ProjectsAlertsDocumentsGetCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsAlertsDocumentsGetCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsAlertsDocumentsGetCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| if c.ifNoneMatch_ != "" { | |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("GET", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "name": c.name, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.documents.get", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.alerts.documents.get" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *AlertDocument.ServerResponse.Header or (if a response was returned at all) | |
| // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ProjectsAlertsDocumentsGetCall) Do(opts ...googleapi.CallOption) (*AlertDocument, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &AlertDocument{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.alerts.documents.get", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ProjectsConfigurationsGetCall struct { | |
| s *Service | |
| name string | |
| urlParams_ gensupport.URLParams | |
| ifNoneMatch_ string | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Get: Get a configuration by name. | |
| // | |
| // - name: Name of the configuration to get. Format: | |
| // vaults/{vault}/configurations/{configuration}. | |
| func (r *ProjectsConfigurationsService) Get(name string) *ProjectsConfigurationsGetCall { | |
| c := &ProjectsConfigurationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.name = name | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsConfigurationsGetCall) Fields(s ...googleapi.Field) *ProjectsConfigurationsGetCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the | |
| // object's ETag matches the given value. This is useful for getting updates | |
| // only after the object has changed since the last request. | |
| func (c *ProjectsConfigurationsGetCall) IfNoneMatch(entityTag string) *ProjectsConfigurationsGetCall { | |
| c.ifNoneMatch_ = entityTag | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsConfigurationsGetCall) Context(ctx context.Context) *ProjectsConfigurationsGetCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsConfigurationsGetCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsConfigurationsGetCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| if c.ifNoneMatch_ != "" { | |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("GET", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "name": c.name, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.configurations.get", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.configurations.get" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Configuration.ServerResponse.Header or (if a response was returned at all) | |
| // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ProjectsConfigurationsGetCall) Do(opts ...googleapi.CallOption) (*Configuration, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Configuration{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.configurations.get", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ProjectsConfigurationsListCall struct { | |
| s *Service | |
| parent string | |
| urlParams_ gensupport.URLParams | |
| ifNoneMatch_ string | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // List: Get a list of configurations that meet the filter criteria. | |
| // | |
| // - parent: Parent of the configuration. Format: vaults/{vault}. | |
| func (r *ProjectsConfigurationsService) List(parent string) *ProjectsConfigurationsListCall { | |
| c := &ProjectsConfigurationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.parent = parent | |
| return c | |
| } | |
| // Filter sets the optional parameter "filter": Filter criteria. | |
| func (c *ProjectsConfigurationsListCall) Filter(filter string) *ProjectsConfigurationsListCall { | |
| c.urlParams_.Set("filter", filter) | |
| return c | |
| } | |
| // OrderBy sets the optional parameter "orderBy": Order by criteria in the csv | |
| // format: "field1,field2 desc" or "field1,field2" or "field1 asc, field2". | |
| func (c *ProjectsConfigurationsListCall) OrderBy(orderBy string) *ProjectsConfigurationsListCall { | |
| c.urlParams_.Set("orderBy", orderBy) | |
| return c | |
| } | |
| // PageSize sets the optional parameter "pageSize": Page size. | |
| func (c *ProjectsConfigurationsListCall) PageSize(pageSize int64) *ProjectsConfigurationsListCall { | |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) | |
| return c | |
| } | |
| // PageToken sets the optional parameter "pageToken": Page token. | |
| func (c *ProjectsConfigurationsListCall) PageToken(pageToken string) *ProjectsConfigurationsListCall { | |
| c.urlParams_.Set("pageToken", pageToken) | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsConfigurationsListCall) Fields(s ...googleapi.Field) *ProjectsConfigurationsListCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the | |
| // object's ETag matches the given value. This is useful for getting updates | |
| // only after the object has changed since the last request. | |
| func (c *ProjectsConfigurationsListCall) IfNoneMatch(entityTag string) *ProjectsConfigurationsListCall { | |
| c.ifNoneMatch_ = entityTag | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsConfigurationsListCall) Context(ctx context.Context) *ProjectsConfigurationsListCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsConfigurationsListCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsConfigurationsListCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| if c.ifNoneMatch_ != "" { | |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+parent}/configurations") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("GET", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "parent": c.parent, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.configurations.list", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.configurations.list" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *ListConfigurationsResponse.ServerResponse.Header or (if a response was | |
| // returned at all) in error.(*googleapi.Error).Header. Use | |
| // googleapi.IsNotModified to check whether the returned error was because | |
| // http.StatusNotModified was returned. | |
| func (c *ProjectsConfigurationsListCall) Do(opts ...googleapi.CallOption) (*ListConfigurationsResponse, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &ListConfigurationsResponse{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.configurations.list", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| // Pages invokes f for each page of results. | |
| // A non-nil error returned from f will halt the iteration. | |
| // The provided context supersedes any context provided to the Context method. | |
| func (c *ProjectsConfigurationsListCall) Pages(ctx context.Context, f func(*ListConfigurationsResponse) error) error { | |
| c.ctx_ = ctx | |
| defer c.PageToken(c.urlParams_.Get("pageToken")) | |
| for { | |
| x, err := c.Do() | |
| if err != nil { | |
| return err | |
| } | |
| if err := f(x); err != nil { | |
| return err | |
| } | |
| if x.NextPageToken == "" { | |
| return nil | |
| } | |
| c.PageToken(x.NextPageToken) | |
| } | |
| } | |
| type ProjectsConfigurationsUpsertCall struct { | |
| s *Service | |
| parent string | |
| configuration *Configuration | |
| urlParams_ gensupport.URLParams | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Upsert: Creates or updates a configuration. | |
| // | |
| // - parent: Parent of the configuration. | |
| func (r *ProjectsConfigurationsService) Upsert(parent string, configuration *Configuration) *ProjectsConfigurationsUpsertCall { | |
| c := &ProjectsConfigurationsUpsertCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.parent = parent | |
| c.configuration = configuration | |
| return c | |
| } | |
| // PublishTime sets the optional parameter "publishTime": Time that the | |
| // configuration should be considered to have been published. This is an | |
| // advanced feature used when onboarding and bulk loading data from other | |
| // systems. Do not set this field without consulting with the API team. | |
| func (c *ProjectsConfigurationsUpsertCall) PublishTime(publishTime string) *ProjectsConfigurationsUpsertCall { | |
| c.urlParams_.Set("publishTime", publishTime) | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsConfigurationsUpsertCall) Fields(s ...googleapi.Field) *ProjectsConfigurationsUpsertCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsConfigurationsUpsertCall) Context(ctx context.Context) *ProjectsConfigurationsUpsertCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsConfigurationsUpsertCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsConfigurationsUpsertCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) | |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.configuration) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+parent}/configurations:upsert") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("POST", urls, body) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "parent": c.parent, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.configurations.upsert", "request", internallog.HTTPRequest(req, body.Bytes())) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.configurations.upsert" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *UpsertConfigurationResponse.ServerResponse.Header or (if a response was | |
| // returned at all) in error.(*googleapi.Error).Header. Use | |
| // googleapi.IsNotModified to check whether the returned error was because | |
| // http.StatusNotModified was returned. | |
| func (c *ProjectsConfigurationsUpsertCall) Do(opts ...googleapi.CallOption) (*UpsertConfigurationResponse, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &UpsertConfigurationResponse{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.configurations.upsert", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ProjectsConfigurationsRevisionsListCall struct { | |
| s *Service | |
| parent string | |
| urlParams_ gensupport.URLParams | |
| ifNoneMatch_ string | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // List: List configuration revisions that meet the filter criteria. | |
| // | |
| // - parent: The name of the Configuration to retrieve Revisions for. | |
| func (r *ProjectsConfigurationsRevisionsService) List(parent string) *ProjectsConfigurationsRevisionsListCall { | |
| c := &ProjectsConfigurationsRevisionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.parent = parent | |
| return c | |
| } | |
| // Filter sets the optional parameter "filter": An AIP-160 filter string | |
| func (c *ProjectsConfigurationsRevisionsListCall) Filter(filter string) *ProjectsConfigurationsRevisionsListCall { | |
| c.urlParams_.Set("filter", filter) | |
| return c | |
| } | |
| // OrderBy sets the optional parameter "orderBy": Specify ordering of response | |
| func (c *ProjectsConfigurationsRevisionsListCall) OrderBy(orderBy string) *ProjectsConfigurationsRevisionsListCall { | |
| c.urlParams_.Set("orderBy", orderBy) | |
| return c | |
| } | |
| // PageSize sets the optional parameter "pageSize": Page Size | |
| func (c *ProjectsConfigurationsRevisionsListCall) PageSize(pageSize int64) *ProjectsConfigurationsRevisionsListCall { | |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) | |
| return c | |
| } | |
| // PageToken sets the optional parameter "pageToken": A page token provided by | |
| // the API | |
| func (c *ProjectsConfigurationsRevisionsListCall) PageToken(pageToken string) *ProjectsConfigurationsRevisionsListCall { | |
| c.urlParams_.Set("pageToken", pageToken) | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsConfigurationsRevisionsListCall) Fields(s ...googleapi.Field) *ProjectsConfigurationsRevisionsListCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the | |
| // object's ETag matches the given value. This is useful for getting updates | |
| // only after the object has changed since the last request. | |
| func (c *ProjectsConfigurationsRevisionsListCall) IfNoneMatch(entityTag string) *ProjectsConfigurationsRevisionsListCall { | |
| c.ifNoneMatch_ = entityTag | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsConfigurationsRevisionsListCall) Context(ctx context.Context) *ProjectsConfigurationsRevisionsListCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsConfigurationsRevisionsListCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsConfigurationsRevisionsListCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| if c.ifNoneMatch_ != "" { | |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+parent}/revisions") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("GET", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "parent": c.parent, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.configurations.revisions.list", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.configurations.revisions.list" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *ListConfigurationRevisionsResponse.ServerResponse.Header or (if a response | |
| // was returned at all) in error.(*googleapi.Error).Header. Use | |
| // googleapi.IsNotModified to check whether the returned error was because | |
| // http.StatusNotModified was returned. | |
| func (c *ProjectsConfigurationsRevisionsListCall) Do(opts ...googleapi.CallOption) (*ListConfigurationRevisionsResponse, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &ListConfigurationRevisionsResponse{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.configurations.revisions.list", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| // Pages invokes f for each page of results. | |
| // A non-nil error returned from f will halt the iteration. | |
| // The provided context supersedes any context provided to the Context method. | |
| func (c *ProjectsConfigurationsRevisionsListCall) Pages(ctx context.Context, f func(*ListConfigurationRevisionsResponse) error) error { | |
| c.ctx_ = ctx | |
| defer c.PageToken(c.urlParams_.Get("pageToken")) | |
| for { | |
| x, err := c.Do() | |
| if err != nil { | |
| return err | |
| } | |
| if err := f(x); err != nil { | |
| return err | |
| } | |
| if x.NextPageToken == "" { | |
| return nil | |
| } | |
| c.PageToken(x.NextPageToken) | |
| } | |
| } | |
| type ProjectsFindingsGetCall struct { | |
| s *Service | |
| name string | |
| urlParams_ gensupport.URLParams | |
| ifNoneMatch_ string | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Get: Get a finding by name. The `name` field should have the format: | |
| // `projects/{project}/findings/{finding}` | |
| // | |
| // - name: Name of the finding to get. | |
| func (r *ProjectsFindingsService) Get(name string) *ProjectsFindingsGetCall { | |
| c := &ProjectsFindingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.name = name | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsFindingsGetCall) Fields(s ...googleapi.Field) *ProjectsFindingsGetCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the | |
| // object's ETag matches the given value. This is useful for getting updates | |
| // only after the object has changed since the last request. | |
| func (c *ProjectsFindingsGetCall) IfNoneMatch(entityTag string) *ProjectsFindingsGetCall { | |
| c.ifNoneMatch_ = entityTag | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsFindingsGetCall) Context(ctx context.Context) *ProjectsFindingsGetCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsFindingsGetCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsFindingsGetCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| if c.ifNoneMatch_ != "" { | |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("GET", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "name": c.name, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.findings.get", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.findings.get" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *Finding.ServerResponse.Header or (if a response was returned at all) in | |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | |
| // whether the returned error was because http.StatusNotModified was returned. | |
| func (c *ProjectsFindingsGetCall) Do(opts ...googleapi.CallOption) (*Finding, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &Finding{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.findings.get", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| type ProjectsFindingsListCall struct { | |
| s *Service | |
| parent string | |
| urlParams_ gensupport.URLParams | |
| ifNoneMatch_ string | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // List: Get a list of findings that meet the filter criteria. The `parent` | |
| // field in ListFindingsRequest should have the format: projects/{project} | |
| // | |
| // - parent: Parent of the findings. | |
| func (r *ProjectsFindingsService) List(parent string) *ProjectsFindingsListCall { | |
| c := &ProjectsFindingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.parent = parent | |
| return c | |
| } | |
| // Filter sets the optional parameter "filter": Filter criteria. | |
| func (c *ProjectsFindingsListCall) Filter(filter string) *ProjectsFindingsListCall { | |
| c.urlParams_.Set("filter", filter) | |
| return c | |
| } | |
| // OrderBy sets the optional parameter "orderBy": Order by criteria in the csv | |
| // format: "field1,field2 desc" or "field1,field2" or "field1 asc, field2". | |
| func (c *ProjectsFindingsListCall) OrderBy(orderBy string) *ProjectsFindingsListCall { | |
| c.urlParams_.Set("orderBy", orderBy) | |
| return c | |
| } | |
| // PageSize sets the optional parameter "pageSize": Page size. | |
| func (c *ProjectsFindingsListCall) PageSize(pageSize int64) *ProjectsFindingsListCall { | |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) | |
| return c | |
| } | |
| // PageToken sets the optional parameter "pageToken": Page token. | |
| func (c *ProjectsFindingsListCall) PageToken(pageToken string) *ProjectsFindingsListCall { | |
| c.urlParams_.Set("pageToken", pageToken) | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsFindingsListCall) Fields(s ...googleapi.Field) *ProjectsFindingsListCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the | |
| // object's ETag matches the given value. This is useful for getting updates | |
| // only after the object has changed since the last request. | |
| func (c *ProjectsFindingsListCall) IfNoneMatch(entityTag string) *ProjectsFindingsListCall { | |
| c.ifNoneMatch_ = entityTag | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsFindingsListCall) Context(ctx context.Context) *ProjectsFindingsListCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsFindingsListCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsFindingsListCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| if c.ifNoneMatch_ != "" { | |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+parent}/findings") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("GET", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "parent": c.parent, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.findings.list", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.findings.list" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *ListFindingsResponse.ServerResponse.Header or (if a response was returned | |
| // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to | |
| // check whether the returned error was because http.StatusNotModified was | |
| // returned. | |
| func (c *ProjectsFindingsListCall) Do(opts ...googleapi.CallOption) (*ListFindingsResponse, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &ListFindingsResponse{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.findings.list", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| // Pages invokes f for each page of results. | |
| // A non-nil error returned from f will halt the iteration. | |
| // The provided context supersedes any context provided to the Context method. | |
| func (c *ProjectsFindingsListCall) Pages(ctx context.Context, f func(*ListFindingsResponse) error) error { | |
| c.ctx_ = ctx | |
| defer c.PageToken(c.urlParams_.Get("pageToken")) | |
| for { | |
| x, err := c.Do() | |
| if err != nil { | |
| return err | |
| } | |
| if err := f(x); err != nil { | |
| return err | |
| } | |
| if x.NextPageToken == "" { | |
| return nil | |
| } | |
| c.PageToken(x.NextPageToken) | |
| } | |
| } | |
| type ProjectsFindingsSearchCall struct { | |
| s *Service | |
| parent string | |
| urlParams_ gensupport.URLParams | |
| ifNoneMatch_ string | |
| ctx_ context.Context | |
| header_ http.Header | |
| } | |
| // Search: SearchFindings is a more powerful version of ListFindings that | |
| // supports complex queries like "findings for alerts" using functions such as | |
| // `has_alert` in the query string. The `parent` field in SearchFindingsRequest | |
| // should have the format: projects/{project} Example to search for findings | |
| // for a specific issue: | |
| // `has_alert("name=\"projects/gti-12345/alerts/alert-12345\"")` | |
| // | |
| // - parent: Parent of the findings. Format: vaults/{vault}. | |
| func (r *ProjectsFindingsService) Search(parent string) *ProjectsFindingsSearchCall { | |
| c := &ProjectsFindingsSearchCall{s: r.s, urlParams_: make(gensupport.URLParams)} | |
| c.parent = parent | |
| return c | |
| } | |
| // OrderBy sets the optional parameter "orderBy": Order by criteria in the csv | |
| // format: "field1,field2 desc" or "field1,field2" or "field1 asc, field2". | |
| func (c *ProjectsFindingsSearchCall) OrderBy(orderBy string) *ProjectsFindingsSearchCall { | |
| c.urlParams_.Set("orderBy", orderBy) | |
| return c | |
| } | |
| // PageSize sets the optional parameter "pageSize": Page size. | |
| func (c *ProjectsFindingsSearchCall) PageSize(pageSize int64) *ProjectsFindingsSearchCall { | |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) | |
| return c | |
| } | |
| // PageToken sets the optional parameter "pageToken": Page token. | |
| func (c *ProjectsFindingsSearchCall) PageToken(pageToken string) *ProjectsFindingsSearchCall { | |
| c.urlParams_.Set("pageToken", pageToken) | |
| return c | |
| } | |
| // Query sets the optional parameter "query": Query on what findings will be | |
| // returned. This supports the same filter criteria as | |
| // FindingService.ListFindings as well as the following relationship query | |
| // `has_alert`. Example: - | |
| // `has_alert("name=\"projects/gti-12345/alerts/alert-12345\"")` | |
| func (c *ProjectsFindingsSearchCall) Query(query string) *ProjectsFindingsSearchCall { | |
| c.urlParams_.Set("query", query) | |
| return c | |
| } | |
| // Fields allows partial responses to be retrieved. See | |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more | |
| // details. | |
| func (c *ProjectsFindingsSearchCall) Fields(s ...googleapi.Field) *ProjectsFindingsSearchCall { | |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) | |
| return c | |
| } | |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the | |
| // object's ETag matches the given value. This is useful for getting updates | |
| // only after the object has changed since the last request. | |
| func (c *ProjectsFindingsSearchCall) IfNoneMatch(entityTag string) *ProjectsFindingsSearchCall { | |
| c.ifNoneMatch_ = entityTag | |
| return c | |
| } | |
| // Context sets the context to be used in this call's Do method. | |
| func (c *ProjectsFindingsSearchCall) Context(ctx context.Context) *ProjectsFindingsSearchCall { | |
| c.ctx_ = ctx | |
| return c | |
| } | |
| // Header returns a http.Header that can be modified by the caller to add | |
| // headers to the request. | |
| func (c *ProjectsFindingsSearchCall) Header() http.Header { | |
| if c.header_ == nil { | |
| c.header_ = make(http.Header) | |
| } | |
| return c.header_ | |
| } | |
| func (c *ProjectsFindingsSearchCall) doRequest(alt string) (*http.Response, error) { | |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) | |
| if c.ifNoneMatch_ != "" { | |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | |
| } | |
| c.urlParams_.Set("alt", alt) | |
| c.urlParams_.Set("prettyPrint", "false") | |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+parent}/findings:search") | |
| urls += "?" + c.urlParams_.Encode() | |
| req, err := http.NewRequest("GET", urls, nil) | |
| if err != nil { | |
| return nil, err | |
| } | |
| req.Header = reqHeaders | |
| googleapi.Expand(req.URL, map[string]string{ | |
| "parent": c.parent, | |
| }) | |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "threatintelligence.projects.findings.search", "request", internallog.HTTPRequest(req, nil)) | |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) | |
| } | |
| // Do executes the "threatintelligence.projects.findings.search" call. | |
| // Any non-2xx status code is an error. Response headers are in either | |
| // *SearchFindingsResponse.ServerResponse.Header or (if a response was returned | |
| // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to | |
| // check whether the returned error was because http.StatusNotModified was | |
| // returned. | |
| func (c *ProjectsFindingsSearchCall) Do(opts ...googleapi.CallOption) (*SearchFindingsResponse, error) { | |
| gensupport.SetOptions(c.urlParams_, opts...) | |
| res, err := c.doRequest("json") | |
| if res != nil && res.StatusCode == http.StatusNotModified { | |
| if res.Body != nil { | |
| res.Body.Close() | |
| } | |
| return nil, gensupport.WrapError(&googleapi.Error{ | |
| Code: res.StatusCode, | |
| Header: res.Header, | |
| }) | |
| } | |
| if err != nil { | |
| return nil, err | |
| } | |
| defer googleapi.CloseBody(res) | |
| if err := googleapi.CheckResponse(res); err != nil { | |
| return nil, gensupport.WrapError(err) | |
| } | |
| ret := &SearchFindingsResponse{ | |
| ServerResponse: googleapi.ServerResponse{ | |
| Header: res.Header, | |
| HTTPStatusCode: res.StatusCode, | |
| }, | |
| } | |
| target := &ret | |
| b, err := gensupport.DecodeResponseBytes(target, res) | |
| if err != nil { | |
| return nil, err | |
| } | |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "threatintelligence.projects.findings.search", "response", internallog.HTTPResponse(res, b)) | |
| return ret, nil | |
| } | |
| // Pages invokes f for each page of results. | |
| // A non-nil error returned from f will halt the iteration. | |
| // The provided context supersedes any context provided to the Context method. | |
| func (c *ProjectsFindingsSearchCall) Pages(ctx context.Context, f func(*SearchFindingsResponse) error) error { | |
| c.ctx_ = ctx | |
| defer c.PageToken(c.urlParams_.Get("pageToken")) | |
| for { | |
| x, err := c.Do() | |
| if err != nil { | |
| return err | |
| } | |
| if err := f(x); err != nil { | |
| return err | |
| } | |
| if x.NextPageToken == "" { | |
| return nil | |
| } | |
| c.PageToken(x.NextPageToken) | |
| } | |
| } |