@googleapis/threatintelligence 1.0.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/v1beta.ts CHANGED
@@ -124,31 +124,14 @@ export namespace threatintelligence_v1beta {
124
124
  }
125
125
  }
126
126
 
127
- /**
128
- * The software that is affected by the vulnerability.
129
- */
130
- export interface Schema$AffectedSoftware {
131
- /**
132
- * Optional. The product of the software.
133
- */
134
- product?: string | null;
135
- /**
136
- * Optional. The vendor of the software.
137
- */
138
- vendor?: string | null;
139
- }
140
127
  /**
141
128
  * 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.
142
129
  */
143
130
  export interface Schema$Alert {
144
131
  /**
145
- * Optional. AI summary of the finding.
132
+ * Optional. AI summary of the alert.
146
133
  */
147
134
  aiSummary?: string | null;
148
- /**
149
- * Output only. Assets that are impacted by this alert.
150
- */
151
- assets?: string[] | null;
152
135
  /**
153
136
  * Output only. Audit information for the alert.
154
137
  */
@@ -181,6 +164,10 @@ export namespace threatintelligence_v1beta {
181
164
  * Output only. External ID for the alert. This is used internally to provide protection against out of order updates.
182
165
  */
183
166
  externalId?: string | null;
167
+ /**
168
+ * Output only. The number of findings associated with this alert.
169
+ */
170
+ findingCount?: string | null;
184
171
  /**
185
172
  * Output only. Findings that are covered by this alert.
186
173
  */
@@ -226,21 +213,13 @@ export namespace threatintelligence_v1beta {
226
213
  * Insider Threat alert detail type.
227
214
  */
228
215
  insiderThreat?: Schema$InsiderThreatAlertDetail;
229
- /**
230
- * Domain Monitoring alert detail type.
231
- */
232
- suspiciousDomain?: Schema$SuspiciousDomainAlertDetail;
233
- /**
234
- * Technology Watchlist alert detail type.
235
- */
236
- targetTechnology?: Schema$TargetTechnologyAlertDetail;
237
216
  }
238
217
  /**
239
218
  * A document that is associated with an alert.
240
219
  */
241
220
  export interface Schema$AlertDocument {
242
221
  /**
243
- * Output only. AI summary of the finding.
222
+ * Output only. AI summary of the document.
244
223
  */
245
224
  aiSummary?: string | null;
246
225
  /**
@@ -256,7 +235,7 @@ export namespace threatintelligence_v1beta {
256
235
  */
257
236
  content?: string | null;
258
237
  /**
259
- * Output only. The time the document was created.
238
+ * Output only. The timestamp of the original external publication of the document.
260
239
  */
261
240
  createTime?: string | null;
262
241
  /**
@@ -305,61 +284,6 @@ export namespace threatintelligence_v1beta {
305
284
  */
306
285
  translatedTitle?: string | null;
307
286
  }
308
- /**
309
- * Customer defined Configuration for asset discovery.
310
- */
311
- export interface Schema$AssetDiscoveryConfig {
312
- /**
313
- * Output only. Timestamp of the last scan completed. This field is set by the system and cannot be modified by the user.
314
- */
315
- lastScanCompleteTime?: string | null;
316
- /**
317
- * Output only. Timestamp of the last scan started - used for scheduling the next scan. This field is set by the system and cannot be modified by the user.
318
- */
319
- lastScanStartTime?: string | null;
320
- /**
321
- * Required. Frequency at which the scheduled discovery scan should be run. If not specified, the default frequency is DAILY.
322
- */
323
- scanFrequency?: string | null;
324
- /**
325
- * Optional. Seed assets that are out of scope for the scheduled discovery scan.
326
- */
327
- scopeExclusionAssets?: Schema$AssetDiscoverySeed[];
328
- /**
329
- * Required. Seed assets for the scheduled discovery scan. At least one seed asset is required.
330
- */
331
- seedAssets?: Schema$AssetDiscoverySeed[];
332
- /**
333
- * Required. Workflow to be used for the scheduled discovery scan. If not specified, the default workflow is EXTERNAL_DISCOVERY.
334
- */
335
- workflow?: string | null;
336
- }
337
- /**
338
- * Seed assets for asset discovery.
339
- */
340
- export interface Schema$AssetDiscoverySeed {
341
- /**
342
- * Required. Type of the seed asset.
343
- */
344
- seedType?: string | null;
345
- /**
346
- * Required. Value for the seed asset. Could be an IP address, network service, email addresses, etc.
347
- */
348
- seedValue?: string | null;
349
- }
350
- /**
351
- * Represents an association with a vulnerability.
352
- */
353
- export interface Schema$Association {
354
- /**
355
- * Required. The ID of the association.
356
- */
357
- id?: string | null;
358
- /**
359
- * Required. The type of the association.
360
- */
361
- type?: string | null;
362
- }
363
287
  /**
364
288
  * Tracks basic CRUD facts.
365
289
  */
@@ -381,63 +305,6 @@ export namespace threatintelligence_v1beta {
381
305
  */
382
306
  updateTime?: string | null;
383
307
  }
384
- /**
385
- * Sample compromised credential detail.
386
- */
387
- export interface Schema$CompromisedCredentialsFindingDetail {
388
- /**
389
- * Optional. Reference to the author this detail was extracted from. This is deprecated and will be removed.
390
- */
391
- author?: string | null;
392
- /**
393
- * Optional. Claimed site the credential is intended for.
394
- */
395
- credentialService?: string | null;
396
- /**
397
- * Optional. Reference to the dark web document. This is deprecated and will be removed.
398
- */
399
- darkWebDoc?: string | null;
400
- /**
401
- * Optional. This will contain a link to the external reference for this credential. If set, this is a link back to the DTM product to allow customers to get additional context about this finding.
402
- */
403
- externalReferenceUri?: string | null;
404
- /**
405
- * Optional. If the source of the credential was from a file dump this will contain the name of the file the credential was found in. This can be used by customers for context on where the credential was found and to try to find other references to the file in the wild.
406
- */
407
- fileDump?: string | null;
408
- /**
409
- * Optional. A list of hashes of the file dump. These will be prefixed with the algorithm. Example: "sha256:"
410
- */
411
- fileDumpHashes?: string[] | null;
412
- /**
413
- * Optional. If file_dump is set this will contain the size of the dump file in bytes. File dumps can be very large.
414
- */
415
- fileDumpSizeBytes?: string | null;
416
- /**
417
- * Optional. Reference to the forum this detail was extracted from. This is deprecated and will be removed.
418
- */
419
- forum?: string | null;
420
- /**
421
- * Optional. This will indicate the malware family that leaked this credential, if known.
422
- */
423
- malwareFamily?: string | null;
424
- /**
425
- * Optional. This indicates our best guess as to when the credential was leaked to the particular venue that triggered this finding. This is not necessarily the time the credential was actually leaked and it may not always be be accurate.
426
- */
427
- postedTime?: string | null;
428
- /**
429
- * Optional. If the source of a credential is publicly addressable this will contain a uri to the where the credential was found.
430
- */
431
- sourceUri?: string | null;
432
- /**
433
- * Required. This field will always be set and will be used to identify the user named in the credential leak. In cases where customers are authorized to see the actual user key this will be set to the actual user key. In cases where the customer is not authorized to see the actual user key this will be set to a hash of the user key. The hashed value is an intentionally opaque value that is not intended to be used for any other purpose than to uniquely identify the user in the context of this specific customer, service domain, and user name. Example: "user@example.com" or "redacted:".
434
- */
435
- userKey?: string | null;
436
- /**
437
- * Optional. Claimed evidence of the password/secret. This will always be hashed. In the event where the plaintext password is known it will be set to "redacted:" where the same hash will be presented when the same password is found for the same organization for the same service. Redaction is done by hashing the password with a salt that is unique to the customer organization and service. In the event where the plaintext password is not known it will be set to ":" where the algorithm is the hash algorithm used and the hash is the hash of the password using that algorithm. In the event we don't know the exact algorithm used we will set it to "hashed:".
438
- */
439
- userSecretEvidence?: string | null;
440
- }
441
308
  /**
442
309
  * A configuration represents a behavior an engine should follow when producing new findings.
443
310
  */
@@ -459,7 +326,7 @@ export namespace threatintelligence_v1beta {
459
326
  */
460
327
  displayName?: string | null;
461
328
  /**
462
- * Identifier. Server generated name for the configuration. format is vaults/{vault\}/configurations/{configuration\}
329
+ * Identifier. Server generated name for the configuration. format is projects/{project\}/configurations/{configuration\}
463
330
  */
464
331
  name?: string | null;
465
332
  /**
@@ -479,10 +346,6 @@ export namespace threatintelligence_v1beta {
479
346
  * Wrapper class that contains the union struct for all the various configuration detail specific classes.
480
347
  */
481
348
  export interface Schema$ConfigurationDetail {
482
- /**
483
- * Asset Discovery detail config.
484
- */
485
- assetDiscovery?: Schema$AssetDiscoveryConfig;
486
349
  /**
487
350
  * Customer Profile detail config.
488
351
  */
@@ -491,18 +354,6 @@ export namespace threatintelligence_v1beta {
491
354
  * 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.
492
355
  */
493
356
  detailType?: string | null;
494
- /**
495
- * Domain Monitoring detail config.
496
- */
497
- domainMonitoring?: Schema$DomainMonitoringConfig;
498
- /**
499
- * Initial Access Broker (IAB) detail config.
500
- */
501
- initialAccessBroker?: Schema$InitialAccessBrokerConfig;
502
- /**
503
- * Technology Watchlist detail config.
504
- */
505
- technologyWatchlist?: Schema$TechnologyWatchListConfig;
506
357
  }
507
358
  /**
508
359
  * A ConfigurationRevision is a snapshot of a Configuration at a point in time. It is immutable.
@@ -513,7 +364,7 @@ export namespace threatintelligence_v1beta {
513
364
  */
514
365
  createTime?: string | null;
515
366
  /**
516
- * Identifier. The name of the ConfigurationRevision Format: vaults//configurations//revisions/ OR projects//configurations//revisions/
367
+ * Identifier. The name of the ConfigurationRevision Format: projects//configurations//revisions/
517
368
  */
518
369
  name?: string | null;
519
370
  /**
@@ -814,7 +665,7 @@ export namespace threatintelligence_v1beta {
814
665
  */
815
666
  discoveryDocumentIds?: string[] | null;
816
667
  /**
817
- * Required. Data Leak specific severity This will be the string representation of the DataLeakFindingDetail.Severityenum. (e.g., "LOW", "MEDIUM", "HIGH", "CRITICAL")
668
+ * Required. The severity of the Data Leak alert. Allowed values are: * `LOW` * `MEDIUM` * `HIGH` * `CRITICAL`
818
669
  */
819
670
  severity?: string | null;
820
671
  }
@@ -835,61 +686,6 @@ export namespace threatintelligence_v1beta {
835
686
  */
836
687
  severity?: string | null;
837
688
  }
838
- /**
839
- * Any account-level configuration options will go here.
840
- */
841
- export interface Schema$DomainMonitoringConfig {
842
- /**
843
- * The domains to use as "seeds" for Suspicious Domain Monitoring.
844
- */
845
- domains?: Schema$DomainMonitoringDomain[];
846
- }
847
- /**
848
- * A Domain Monitoring "domain"
849
- */
850
- export interface Schema$DomainMonitoringDomain {
851
- /**
852
- * The domain name to match against.
853
- */
854
- domain?: string | null;
855
- }
856
- /**
857
- * EntityProfile represents the structured profile of a customer entity, containing key identifiers and descriptive attributes optimized for contextual matching against threat intelligence, particularly Initial Access Broker (IAB) offerings.
858
- */
859
- export interface Schema$EntityProfile {
860
- /**
861
- * Optional. List of specific countries of operation. Purpose: Essential for matching geographically targeted threats (e.g., actor specifies victims in 'DE'). Use ISO 3166-1 alpha-2 codes (e.g., "US", "GB", "JP", "DE").
862
- */
863
- countries?: string[] | null;
864
- /**
865
- * Required. List of primary internet domain names associated with the entity. Purpose: Crucial for explicit matching against domains mentioned in threat intel and can inform semantic matching. Must contain at least one domain. Example: ["acme.com", "acme.co.uk"]
866
- */
867
- domains?: string[] | null;
868
- /**
869
- * Optional. List of primary industry sectors the entity operates within. Purpose: Crucial for matching industry-specific threats and understanding attacker motivation. Use standardized GTI Industry Classification values. Example: ["Technology", "Financial Services", "Healthcare"]
870
- */
871
- industries?: string[] | null;
872
- /**
873
- * Required. Canonical name of the entity (e.g., the legal company name). Purpose: Primary identifier for the customer.
874
- */
875
- name?: string | null;
876
- /**
877
- * Optional. Specific geographic areas of *significant* operational concentration or strategic importance below the country level, if clearly identifiable and relevant. Purpose: Useful for highly localized threats, less commonly populated than `countries`. Example: ["Silicon Valley", "Frankfurt am Main Metropolitan Region"]
878
- */
879
- operationalAreas?: string[] | null;
880
- /**
881
- * Required. A concise, machine-generated (e.g., LLM) or human-curated summary of the entity. Purpose: Captures the semantic essence for embedding generation and similarity matching. Should synthesize key aspects like core business, scale, and market. Example: "Acme Corporation is a large, US-based multinational conglomerate operating..."
882
- */
883
- profileSummary?: string | null;
884
- /**
885
- * Optional. List of primary geopolitical regions where the entity has significant operations. Purpose: Filters geographically relevant threats. Use standardized names or codes where possible (e.g., "North America", "EMEA", "APAC", UN M49 codes).
886
- */
887
- regions?: string[] | null;
888
- /**
889
- * Optional. List of more granular sub-industries, if applicable and known. Purpose: Provides finer-grained context for more specific threat matching. Should align with GTI classifications if possible. Example: ["Semiconductors", "Cloud Computing Services", "Investment Banking"]
890
- */
891
- subIndustries?: string[] | null;
892
- }
893
689
  /**
894
690
  * Response message for EnumerateAlertFacets.
895
691
  */
@@ -966,10 +762,6 @@ export namespace threatintelligence_v1beta {
966
762
  * Optional. Name of the alert that this finding is bound to.
967
763
  */
968
764
  alert?: string | null;
969
- /**
970
- * Optional. Optional - asset name if known. Format: vaults/{vault\}/assets/{asset\}
971
- */
972
- asset?: string | null;
973
765
  /**
974
766
  * Output only. Audit data about the finding.
975
767
  */
@@ -987,11 +779,7 @@ export namespace threatintelligence_v1beta {
987
779
  */
988
780
  displayName?: string | null;
989
781
  /**
990
- * Optional. Optional - name of the issue that this finding is bound to. Format: vaults/{vault\}/issues/{issue\}
991
- */
992
- issue?: string | null;
993
- /**
994
- * Identifier. Server generated name for the finding (leave clear during creation). Format: vaults/{vault\}/findings/{finding\}
782
+ * Identifier. Server generated name for the finding (leave clear during creation). Format: projects/{project\}/findings/{finding\}
995
783
  */
996
784
  name?: string | null;
997
785
  /**
@@ -1019,10 +807,6 @@ export namespace threatintelligence_v1beta {
1019
807
  * Wrapper class that contains the union struct for all the various findings detail specific classes.
1020
808
  */
1021
809
  export interface Schema$FindingDetail {
1022
- /**
1023
- * Compromised Credentials detail type.
1024
- */
1025
- compromisedCredentials?: Schema$CompromisedCredentialsFindingDetail;
1026
810
  /**
1027
811
  * Data Leak finding detail type.
1028
812
  */
@@ -1031,10 +815,6 @@ export namespace threatintelligence_v1beta {
1031
815
  * 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.
1032
816
  */
1033
817
  detailType?: string | null;
1034
- /**
1035
- * Inband vulnerability detail type.
1036
- */
1037
- inbandVulnerability?: Schema$InbandVulnerabilityFindingDetail;
1038
818
  /**
1039
819
  * Initial Access Broker finding detail type.
1040
820
  */
@@ -1043,96 +823,19 @@ export namespace threatintelligence_v1beta {
1043
823
  * Insider Threat finding detail type.
1044
824
  */
1045
825
  insiderThreat?: Schema$InsiderThreatFindingDetail;
1046
- /**
1047
- * Misconfiguration finding detail type.
1048
- */
1049
- misconfiguration?: Schema$MisconfigurationFindingDetail;
1050
- /**
1051
- * Domain Monitoring finding detail type.
1052
- */
1053
- suspiciousDomain?: Schema$SuspiciousDomainFindingDetail;
1054
- /**
1055
- * Technology Watchlist finding detail type.
1056
- */
1057
- targetTechnology?: Schema$TargetTechnologyFindingDetail;
1058
- }
1059
- /**
1060
- * Fleshed out vulnerability object that includes enough details to fill out a vulnerability specific view for an issue.
1061
- */
1062
- export interface Schema$InbandVulnerability {
1063
- /**
1064
- * Optional. The software that is affected by the vulnerability.
1065
- */
1066
- affectedSoftware?: Schema$AffectedSoftware[];
1067
- /**
1068
- * Optional. The authors of the vulnerability detection.
1069
- */
1070
- authors?: string[] | null;
1071
- /**
1072
- * Required. The CVE ID of the vulnerability.
1073
- */
1074
- cveId?: string | null;
1075
- /**
1076
- * Required. The CVSS V3.1 score (Base score)for the vulnerability. ( )
1077
- */
1078
- cvssV31Score?: number | null;
1079
- /**
1080
- * Optional. Temporal CVSS V3.1 score for the vulnerability.
1081
- */
1082
- cvssV31ScoreTemporal?: number | null;
1083
- /**
1084
- * Optional. The human readable description. This can be basic HTML formatted text.
1085
- */
1086
- description?: string | null;
1087
- /**
1088
- * Optional. The date the vulnerability was first disclosed.
1089
- */
1090
- disclosureTime?: string | null;
1091
- /**
1092
- * Optional. Exploitation state of the vulnerability, for example "Available".
1093
- */
1094
- exploitationState?: string | null;
1095
- /**
1096
- * Required. The external ID of the vulnerability.
1097
- */
1098
- externalVulnerabilityId?: string | null;
1099
- /**
1100
- * Optional. Whether this is exploited in the wild.
1101
- */
1102
- isExploitedWild?: boolean | null;
1103
- /**
1104
- * Optional. Reference URLs to the vulnerability.
1105
- */
1106
- referenceUrls?: string[] | null;
1107
- /**
1108
- * Optional. The human readable remediation recommendation. This can be basic HTML formatted text.
1109
- */
1110
- remediation?: string | null;
1111
- /**
1112
- * Optional. Risk rating for the vulnerability, for example "High".
1113
- */
1114
- riskRating?: string | null;
1115
- /**
1116
- * Optional. Human readable name for the vulnerability.
1117
- */
1118
- title?: string | null;
1119
826
  }
1120
827
  /**
1121
- * This is a temporary detail type that will be used to support vulnerabilities until the engines start using the full vulnerability objects. The "Inband" refers to the fact that all vulnerability details are included with every finding.
828
+ * Request message for GenerateOrgProfileConfiguration.
1122
829
  */
1123
- export interface Schema$InbandVulnerabilityFindingDetail {
1124
- /**
1125
- * Optional. A short description of the proof of the vulnerability.
1126
- */
1127
- formattedProofDetails?: string | null;
830
+ export interface Schema$GenerateOrgProfileConfigurationRequest {
1128
831
  /**
1129
- * Optional. The URI that lead to this detection, if appropriate.
832
+ * Required. The display name of the organization to generate the profile for.
1130
833
  */
1131
- requestUri?: string | null;
834
+ displayName?: string | null;
1132
835
  /**
1133
- * Required. Vulnerability metadata.
836
+ * Required. The domain of the organization to generate the profile for.
1134
837
  */
1135
- vulnerability?: Schema$InbandVulnerability;
838
+ domain?: string | null;
1136
839
  }
1137
840
  /**
1138
841
  * Captures the specific details of InitialAccessBroker (IAB) alert.
@@ -1143,19 +846,10 @@ export namespace threatintelligence_v1beta {
1143
846
  */
1144
847
  discoveryDocumentIds?: string[] | null;
1145
848
  /**
1146
- * Required. IAB specific severity
849
+ * Required. The severity of the Initial Access Broker (IAB) alert. Allowed values are: * `LOW` * `MEDIUM` * `HIGH` * `CRITICAL`
1147
850
  */
1148
851
  severity?: string | null;
1149
852
  }
1150
- /**
1151
- * InitialAccessBrokerConfig is specific to Initial Access Broker (IAB) matching scenarios.
1152
- */
1153
- export interface Schema$InitialAccessBrokerConfig {
1154
- /**
1155
- * Represents the comprehensive profile of the customer entity used for matching.
1156
- */
1157
- entityProfile?: Schema$EntityProfile;
1158
- }
1159
853
  /**
1160
854
  * A detail object for an Initial Access Broker (IAB) finding.
1161
855
  */
@@ -1182,7 +876,7 @@ export namespace threatintelligence_v1beta {
1182
876
  */
1183
877
  discoveryDocumentIds?: string[] | null;
1184
878
  /**
1185
- * Required. InsiderThreat specific severity This will be the string representation of the InsiderThreatFindingDetail.Severityenum. (e.g., "LOW", "MEDIUM", "HIGH", "CRITICAL")
879
+ * Required. The severity of the Insider Threat alert. Allowed values are: * `LOW` * `MEDIUM` * `HIGH` * `CRITICAL`
1186
880
  */
1187
881
  severity?: string | null;
1188
882
  }
@@ -1297,55 +991,29 @@ export namespace threatintelligence_v1beta {
1297
991
  */
1298
992
  export interface Schema$MarkAlertAsTriagedRequest {}
1299
993
  /**
1300
- * Misconfiguration finding detail.
1301
- */
1302
- export interface Schema$MisconfigurationFindingDetail {
1303
- /**
1304
- * Required. The misconfiguration metadata.
1305
- */
1306
- misconfigurationMetadata?: Schema$MisconfigurationMetadata;
1307
- }
1308
- /**
1309
- * Misconfiguration metadata.
994
+ * This resource represents a long-running operation that is the result of a network API call.
1310
995
  */
1311
- export interface Schema$MisconfigurationMetadata {
1312
- /**
1313
- * Optional. Description of the misconfiguration.
1314
- */
1315
- description?: string | null;
1316
- /**
1317
- * Optional. A user-friendly name for the misconfiguration.
1318
- */
1319
- displayName?: string | null;
1320
- /**
1321
- * Required. The identifier for the misconfiguration. This is an internal name generated by the finding provider.
1322
- */
1323
- misconfigurationId?: string | null;
996
+ export interface Schema$Operation {
1324
997
  /**
1325
- * Optional. References to external resources that provide more information about the misconfiguration.
998
+ * 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.
1326
999
  */
1327
- references?: Schema$MisconfigurationReference[];
1000
+ done?: boolean | null;
1328
1001
  /**
1329
- * Optional. Recommended remediation steps for the misconfiguration.
1002
+ * The error result of the operation in case of failure or cancellation.
1330
1003
  */
1331
- remediation?: string | null;
1004
+ error?: Schema$Status;
1332
1005
  /**
1333
- * Optional. The endpoint which was found to have the vulnerability.
1006
+ * 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.
1334
1007
  */
1335
- vulnerableUri?: string | null;
1336
- }
1337
- /**
1338
- * A reference to an external resource that provides more information about a misconfiguration.
1339
- */
1340
- export interface Schema$MisconfigurationReference {
1008
+ metadata?: {[key: string]: any} | null;
1341
1009
  /**
1342
- * Required. The type of the reference (e.g., "description", "remediation").
1010
+ * 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\}`.
1343
1011
  */
1344
- type?: string | null;
1012
+ name?: string | null;
1345
1013
  /**
1346
- * Required. The URI of the reference.
1014
+ * 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`.
1347
1015
  */
1348
- uri?: string | null;
1016
+ response?: {[key: string]: any} | null;
1349
1017
  }
1350
1018
  /**
1351
1019
  * Structured priority analysis for a threat.
@@ -1364,19 +1032,6 @@ export namespace threatintelligence_v1beta {
1364
1032
  */
1365
1033
  reasoning?: string | null;
1366
1034
  }
1367
- /**
1368
- * Request message for FetchAlertUriStatus.
1369
- */
1370
- export interface Schema$RefreshAlertUriStatusRequest {}
1371
- /**
1372
- * Response message for FetchAlertUriStatus.
1373
- */
1374
- export interface Schema$RefreshAlertUriStatusResponse {
1375
- /**
1376
- * Output only. Status of the alert in WebRisk.
1377
- */
1378
- state?: string | null;
1379
- }
1380
1035
  /**
1381
1036
  * Structured relevance analysis for a threat.
1382
1037
  */
@@ -1402,19 +1057,6 @@ export namespace threatintelligence_v1beta {
1402
1057
  */
1403
1058
  relevant?: boolean | null;
1404
1059
  }
1405
- /**
1406
- * Request message for ReportAlertUri.
1407
- */
1408
- export interface Schema$ReportAlertUriRequest {}
1409
- /**
1410
- * Response message for ReportAlertUri.
1411
- */
1412
- export interface Schema$ReportAlertUriResponse {
1413
- /**
1414
- * Output only. Status of the alert in WebRisk.
1415
- */
1416
- state?: string | null;
1417
- }
1418
1060
  /**
1419
1061
  * Response message for SearchFindings.
1420
1062
  */
@@ -1446,237 +1088,206 @@ export namespace threatintelligence_v1beta {
1446
1088
  severityLevel?: string | null;
1447
1089
  }
1448
1090
  /**
1449
- * The alert detail for a suspicious domain finding.
1091
+ * 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).
1450
1092
  */
1451
- export interface Schema$SuspiciousDomainAlertDetail {
1452
- /**
1453
- * The DNS details of the suspicious domain.
1454
- */
1455
- dns?: Schema$SuspiciousDomainDnsDetails;
1093
+ export interface Schema$Status {
1456
1094
  /**
1457
- * Required. The suspicious domain name.
1095
+ * The status code, which should be an enum value of google.rpc.Code.
1458
1096
  */
1459
- domain?: string | null;
1460
- /**
1461
- * The GTI details of the suspicious domain.
1462
- */
1463
- gtiDetails?: Schema$SuspiciousDomainGtiDetails;
1464
- /**
1465
- * Output only. Name of Web Risk submission operation.
1466
- */
1467
- webRiskOperation?: string | null;
1468
- /**
1469
- * Output only. Status of the Web Risk submission.
1470
- */
1471
- webRiskState?: string | null;
1472
- /**
1473
- * The whois details of the suspicious domain.
1474
- */
1475
- whois?: Schema$SuspiciousDomainWhoIsDetails;
1476
- }
1477
- /**
1478
- * The DNS details of the suspicious domain.
1479
- */
1480
- export interface Schema$SuspiciousDomainDnsDetails {
1097
+ code?: number | null;
1481
1098
  /**
1482
- * The DNS records of the suspicious domain.
1099
+ * A list of messages that carry the error details. There is a common set of message types for APIs to use.
1483
1100
  */
1484
- dnsRecords?: Schema$SuspiciousDomainDnsRecord[];
1101
+ details?: Array<{[key: string]: any}> | null;
1485
1102
  /**
1486
- * The time the DNS details were retrieved.
1103
+ * 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.
1487
1104
  */
1488
- retrievalTime?: string | null;
1105
+ message?: string | null;
1489
1106
  }
1490
1107
  /**
1491
- * The DNS record of the suspicious domain.
1108
+ * Response message for UpsertConfiguration.
1492
1109
  */
1493
- export interface Schema$SuspiciousDomainDnsRecord {
1494
- /**
1495
- * The name of the DNS record.
1496
- */
1497
- record?: string | null;
1498
- /**
1499
- * The TTL of the DNS record.
1500
- */
1501
- ttl?: number | null;
1502
- /**
1503
- * The type of the DNS record.
1504
- */
1505
- type?: string | null;
1110
+ export interface Schema$UpsertConfigurationResponse {
1506
1111
  /**
1507
- * The value of the DNS record.
1112
+ * Output only. Created configuration ID with server assigned id.
1508
1113
  */
1509
- value?: string | null;
1114
+ configuration?: string | null;
1510
1115
  }
1511
- /**
1512
- * A detailed object for a suspicious Domain finding.
1513
- */
1514
- export interface Schema$SuspiciousDomainFindingDetail {
1515
- /**
1516
- * The DNS details of the suspicious domain.
1517
- */
1518
- dns?: Schema$SuspiciousDomainDnsDetails;
1519
- /**
1520
- * Required. The suspicious domain name.
1521
- */
1522
- domain?: string | null;
1523
- /**
1524
- * The GTI details of the suspicious domain.
1525
- */
1526
- gtiDetails?: Schema$SuspiciousDomainGtiDetails;
1116
+
1117
+ export class Resource$Projects {
1118
+ context: APIRequestContext;
1119
+ alerts: Resource$Projects$Alerts;
1120
+ configurations: Resource$Projects$Configurations;
1121
+ findings: Resource$Projects$Findings;
1122
+ constructor(context: APIRequestContext) {
1123
+ this.context = context;
1124
+ this.alerts = new Resource$Projects$Alerts(this.context);
1125
+ this.configurations = new Resource$Projects$Configurations(this.context);
1126
+ this.findings = new Resource$Projects$Findings(this.context);
1127
+ }
1128
+
1527
1129
  /**
1528
- * Required. Reference to the match score of the finding. This is a float value between 0 and 1 calculated by the matching engine.
1529
- */
1530
- matchScore?: number | null;
1531
- /**
1532
- * Required. The severity of the finding. This indicates the potential impact of the threat.
1533
- */
1534
- severity?: string | null;
1535
- /**
1536
- * The whois details of the suspicious domain.
1537
- */
1538
- whois?: Schema$SuspiciousDomainWhoIsDetails;
1539
- }
1540
- /**
1541
- * The GTI details of the suspicious domain.
1542
- */
1543
- export interface Schema$SuspiciousDomainGtiDetails {
1544
- /**
1545
- * The threat score of the suspicious domain. The threat score is a number between 0 and 100.
1546
- */
1547
- threatScore?: number | null;
1548
- /**
1549
- * Output only. The verdict of the suspicious domain.
1550
- */
1551
- verdict?: string | null;
1552
- /**
1553
- * VirusTotal link for the domain
1554
- */
1555
- virustotalUri?: string | null;
1556
- }
1557
- /**
1558
- * The whois details of the suspicious domain.
1559
- */
1560
- export interface Schema$SuspiciousDomainWhoIsDetails {
1561
- /**
1562
- * The time the whois details were retrieved.
1563
- */
1564
- retrievalTime?: string | null;
1565
- /**
1566
- * The whois details of the suspicious domain.
1567
- */
1568
- whois?: string | null;
1569
- }
1570
- /**
1571
- * Contains details for a technology watchlist alert.
1572
- */
1573
- export interface Schema$TargetTechnologyAlertDetail {
1574
- /**
1575
- * Optional. The vulnerability match details.
1576
- */
1577
- vulnerabilityMatch?: Schema$VulnerabilityMatch;
1578
- }
1579
- /**
1580
- * Contains details for a technology watchlist finding.
1581
- */
1582
- export interface Schema$TargetTechnologyFindingDetail {
1583
- /**
1584
- * Optional. The vulnerability match details.
1585
- */
1586
- vulnerabilityMatch?: Schema$VulnerabilityMatch;
1587
- }
1588
- /**
1589
- * TechnologyWatchListAlertThreshold contains the thresholds for alerting.
1590
- */
1591
- export interface Schema$TechnologyWatchListAlertThreshold {
1592
- /**
1593
- * Optional. The minimum cvss V3 score for the alert. Ex: 7.0. Valid range is [0.0, 10.0].
1594
- */
1595
- cvssScoreMinimum?: number | null;
1596
- /**
1597
- * Optional. The minimum epss score for the alert. Ex: 0.8. Valid range is [0.0, 1.0].
1598
- */
1599
- epssScoreMinimum?: number | null;
1600
- /**
1601
- * Optional. The exploitation states of the alert.
1602
- */
1603
- exploitationStates?: string[] | null;
1604
- /**
1605
- * Optional. The minimum priority for the alert.
1606
- */
1607
- priorityMinimum?: string | null;
1608
- }
1609
- /**
1610
- * TechnologyWatchListConfig is the configuration for the technology watchlist.
1611
- */
1612
- export interface Schema$TechnologyWatchListConfig {
1613
- /**
1614
- * Optional. Alert thresholds to effectively reduce noise.
1615
- */
1616
- alertThreshold?: Schema$TechnologyWatchListAlertThreshold;
1617
- /**
1618
- * Optional. List of vendor, technology or cpe fingerprint. example: Microsoft office 360 Apache Server 3.5 cpe:2.3:a:microsoft:outlook:*:*:*:*:*:*:*:*
1619
- */
1620
- technologies?: string[] | null;
1621
- }
1622
- /**
1623
- * Response message for UpsertConfiguration.
1624
- */
1625
- export interface Schema$UpsertConfigurationResponse {
1626
- /**
1627
- * Output only. Created configuration ID with server assigned id.
1130
+ * Triggers the generation of a Customer Profile for a project.
1131
+ * @example
1132
+ * ```js
1133
+ * // Before running the sample:
1134
+ * // - Enable the API at:
1135
+ * // https://console.developers.google.com/apis/api/threatintelligence.googleapis.com
1136
+ * // - Login into gcloud by running:
1137
+ * // ```sh
1138
+ * // $ gcloud auth application-default login
1139
+ * // ```
1140
+ * // - Install the npm module by running:
1141
+ * // ```sh
1142
+ * // $ npm install googleapis
1143
+ * // ```
1144
+ *
1145
+ * const {google} = require('googleapis');
1146
+ * const threatintelligence = google.threatintelligence('v1beta');
1147
+ *
1148
+ * async function main() {
1149
+ * const auth = new google.auth.GoogleAuth({
1150
+ * // Scopes can be specified either as an array or as a single, space-delimited string.
1151
+ * scopes: ['https://www.googleapis.com/auth/cloud-platform'],
1152
+ * });
1153
+ *
1154
+ * // Acquire an auth client, and bind it to all future calls
1155
+ * const authClient = await auth.getClient();
1156
+ * google.options({auth: authClient});
1157
+ *
1158
+ * // Do the magic
1159
+ * const res = await threatintelligence.projects.generateOrgProfile({
1160
+ * // Required. The name of the project to generate the profile for. Format: projects/{project\}
1161
+ * name: 'projects/my-project',
1162
+ *
1163
+ * // Request body metadata
1164
+ * requestBody: {
1165
+ * // request body parameters
1166
+ * // {
1167
+ * // "displayName": "my_displayName",
1168
+ * // "domain": "my_domain"
1169
+ * // }
1170
+ * },
1171
+ * });
1172
+ * console.log(res.data);
1173
+ *
1174
+ * // Example response
1175
+ * // {
1176
+ * // "done": false,
1177
+ * // "error": {},
1178
+ * // "metadata": {},
1179
+ * // "name": "my_name",
1180
+ * // "response": {}
1181
+ * // }
1182
+ * }
1183
+ *
1184
+ * main().catch(e => {
1185
+ * console.error(e);
1186
+ * throw e;
1187
+ * });
1188
+ *
1189
+ * ```
1190
+ *
1191
+ * @param params - Parameters for request
1192
+ * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
1193
+ * @param callback - Optional callback that handles the response.
1194
+ * @returns A promise if used with async/await, or void if used with a callback.
1628
1195
  */
1629
- configuration?: string | null;
1196
+ generateOrgProfile(
1197
+ params: Params$Resource$Projects$Generateorgprofile,
1198
+ options: StreamMethodOptions
1199
+ ): Promise<GaxiosResponseWithHTTP2<Readable>>;
1200
+ generateOrgProfile(
1201
+ params?: Params$Resource$Projects$Generateorgprofile,
1202
+ options?: MethodOptions
1203
+ ): Promise<GaxiosResponseWithHTTP2<Schema$Operation>>;
1204
+ generateOrgProfile(
1205
+ params: Params$Resource$Projects$Generateorgprofile,
1206
+ options: StreamMethodOptions | BodyResponseCallback<Readable>,
1207
+ callback: BodyResponseCallback<Readable>
1208
+ ): void;
1209
+ generateOrgProfile(
1210
+ params: Params$Resource$Projects$Generateorgprofile,
1211
+ options: MethodOptions | BodyResponseCallback<Schema$Operation>,
1212
+ callback: BodyResponseCallback<Schema$Operation>
1213
+ ): void;
1214
+ generateOrgProfile(
1215
+ params: Params$Resource$Projects$Generateorgprofile,
1216
+ callback: BodyResponseCallback<Schema$Operation>
1217
+ ): void;
1218
+ generateOrgProfile(callback: BodyResponseCallback<Schema$Operation>): void;
1219
+ generateOrgProfile(
1220
+ paramsOrCallback?:
1221
+ | Params$Resource$Projects$Generateorgprofile
1222
+ | BodyResponseCallback<Schema$Operation>
1223
+ | BodyResponseCallback<Readable>,
1224
+ optionsOrCallback?:
1225
+ | MethodOptions
1226
+ | StreamMethodOptions
1227
+ | BodyResponseCallback<Schema$Operation>
1228
+ | BodyResponseCallback<Readable>,
1229
+ callback?:
1230
+ | BodyResponseCallback<Schema$Operation>
1231
+ | BodyResponseCallback<Readable>
1232
+ ):
1233
+ | void
1234
+ | Promise<GaxiosResponseWithHTTP2<Schema$Operation>>
1235
+ | Promise<GaxiosResponseWithHTTP2<Readable>> {
1236
+ let params = (paramsOrCallback ||
1237
+ {}) as Params$Resource$Projects$Generateorgprofile;
1238
+ let options = (optionsOrCallback || {}) as MethodOptions;
1239
+
1240
+ if (typeof paramsOrCallback === 'function') {
1241
+ callback = paramsOrCallback;
1242
+ params = {} as Params$Resource$Projects$Generateorgprofile;
1243
+ options = {};
1244
+ }
1245
+
1246
+ if (typeof optionsOrCallback === 'function') {
1247
+ callback = optionsOrCallback;
1248
+ options = {};
1249
+ }
1250
+
1251
+ const rootUrl =
1252
+ options.rootUrl || 'https://threatintelligence.googleapis.com/';
1253
+ const parameters = {
1254
+ options: Object.assign(
1255
+ {
1256
+ url: (rootUrl + '/v1beta/{+name}:generateOrgProfile').replace(
1257
+ /([^:]\/)\/+/g,
1258
+ '$1'
1259
+ ),
1260
+ method: 'POST',
1261
+ apiVersion: '',
1262
+ },
1263
+ options
1264
+ ),
1265
+ params,
1266
+ requiredParams: ['name'],
1267
+ pathParams: ['name'],
1268
+ context: this.context,
1269
+ };
1270
+ if (callback) {
1271
+ createAPIRequest<Schema$Operation>(
1272
+ parameters,
1273
+ callback as BodyResponseCallback<unknown>
1274
+ );
1275
+ } else {
1276
+ return createAPIRequest<Schema$Operation>(parameters);
1277
+ }
1278
+ }
1630
1279
  }
1631
- /**
1632
- * Contains details about a vulnerability match.
1633
- */
1634
- export interface Schema$VulnerabilityMatch {
1635
- /**
1636
- * 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.
1637
- */
1638
- associations?: Schema$Association[];
1639
- /**
1640
- * Required. The collection ID of the vulnerability. Ex: "vulnerability--cve-2025-9876".
1641
- */
1642
- collectionId?: string | null;
1643
- /**
1644
- * Required. The CVE ID of the vulnerability. Ex: "CVE-2025-9876". See https://www.cve.org/ for more information.
1645
- */
1646
- cveId?: string | null;
1647
- /**
1648
- * Required. The CVSS v3 score of the vulnerability. Example: 6.4.
1649
- */
1650
- cvss3Score?: number | null;
1651
- /**
1652
- * Required. A description of the vulnerability.
1653
- */
1654
- description?: string | null;
1655
- /**
1656
- * Required. The exploitation state of the vulnerability.
1657
- */
1658
- exploitationState?: string | null;
1280
+
1281
+ export interface Params$Resource$Projects$Generateorgprofile extends StandardParameters {
1659
1282
  /**
1660
- * Required. The risk rating of the vulnerability.
1283
+ * Required. The name of the project to generate the profile for. Format: projects/{project\}
1661
1284
  */
1662
- riskRating?: string | null;
1285
+ name?: string;
1286
+
1663
1287
  /**
1664
- * Required. The affected technologies. Ex: "Apache Struts".
1288
+ * Request body metadata
1665
1289
  */
1666
- technologies?: string[] | null;
1667
- }
1668
-
1669
- export class Resource$Projects {
1670
- context: APIRequestContext;
1671
- alerts: Resource$Projects$Alerts;
1672
- configurations: Resource$Projects$Configurations;
1673
- findings: Resource$Projects$Findings;
1674
- constructor(context: APIRequestContext) {
1675
- this.context = context;
1676
- this.alerts = new Resource$Projects$Alerts(this.context);
1677
- this.configurations = new Resource$Projects$Configurations(this.context);
1678
- this.findings = new Resource$Projects$Findings(this.context);
1679
- }
1290
+ requestBody?: Schema$GenerateOrgProfileConfigurationRequest;
1680
1291
  }
1681
1292
 
1682
1293
  export class Resource$Projects$Alerts {
@@ -1732,7 +1343,6 @@ export namespace threatintelligence_v1beta {
1732
1343
  * // Example response
1733
1344
  * // {
1734
1345
  * // "aiSummary": "my_aiSummary",
1735
- * // "assets": [],
1736
1346
  * // "audit": {},
1737
1347
  * // "configurations": [],
1738
1348
  * // "detail": {},
@@ -1741,6 +1351,7 @@ export namespace threatintelligence_v1beta {
1741
1351
  * // "duplicatedBy": [],
1742
1352
  * // "etag": "my_etag",
1743
1353
  * // "externalId": "my_externalId",
1354
+ * // "findingCount": "my_findingCount",
1744
1355
  * // "findings": [],
1745
1356
  * // "name": "my_name",
1746
1357
  * // "priorityAnalysis": {},
@@ -1893,7 +1504,6 @@ export namespace threatintelligence_v1beta {
1893
1504
  * // Example response
1894
1505
  * // {
1895
1506
  * // "aiSummary": "my_aiSummary",
1896
- * // "assets": [],
1897
1507
  * // "audit": {},
1898
1508
  * // "configurations": [],
1899
1509
  * // "detail": {},
@@ -1902,6 +1512,7 @@ export namespace threatintelligence_v1beta {
1902
1512
  * // "duplicatedBy": [],
1903
1513
  * // "etag": "my_etag",
1904
1514
  * // "externalId": "my_externalId",
1515
+ * // "findingCount": "my_findingCount",
1905
1516
  * // "findings": [],
1906
1517
  * // "name": "my_name",
1907
1518
  * // "priorityAnalysis": {},
@@ -2198,7 +1809,6 @@ export namespace threatintelligence_v1beta {
2198
1809
  * // Example response
2199
1810
  * // {
2200
1811
  * // "aiSummary": "my_aiSummary",
2201
- * // "assets": [],
2202
1812
  * // "audit": {},
2203
1813
  * // "configurations": [],
2204
1814
  * // "detail": {},
@@ -2207,6 +1817,7 @@ export namespace threatintelligence_v1beta {
2207
1817
  * // "duplicatedBy": [],
2208
1818
  * // "etag": "my_etag",
2209
1819
  * // "externalId": "my_externalId",
1820
+ * // "findingCount": "my_findingCount",
2210
1821
  * // "findings": [],
2211
1822
  * // "name": "my_name",
2212
1823
  * // "priorityAnalysis": {},
@@ -2357,7 +1968,6 @@ export namespace threatintelligence_v1beta {
2357
1968
  * // Example response
2358
1969
  * // {
2359
1970
  * // "aiSummary": "my_aiSummary",
2360
- * // "assets": [],
2361
1971
  * // "audit": {},
2362
1972
  * // "configurations": [],
2363
1973
  * // "detail": {},
@@ -2366,6 +1976,7 @@ export namespace threatintelligence_v1beta {
2366
1976
  * // "duplicatedBy": [],
2367
1977
  * // "etag": "my_etag",
2368
1978
  * // "externalId": "my_externalId",
1979
+ * // "findingCount": "my_findingCount",
2369
1980
  * // "findings": [],
2370
1981
  * // "name": "my_name",
2371
1982
  * // "priorityAnalysis": {},
@@ -2472,304 +2083,7 @@ export namespace threatintelligence_v1beta {
2472
2083
  }
2473
2084
 
2474
2085
  /**
2475
- * Get an alert by name.
2476
- * @example
2477
- * ```js
2478
- * // Before running the sample:
2479
- * // - Enable the API at:
2480
- * // https://console.developers.google.com/apis/api/threatintelligence.googleapis.com
2481
- * // - Login into gcloud by running:
2482
- * // ```sh
2483
- * // $ gcloud auth application-default login
2484
- * // ```
2485
- * // - Install the npm module by running:
2486
- * // ```sh
2487
- * // $ npm install googleapis
2488
- * // ```
2489
- *
2490
- * const {google} = require('googleapis');
2491
- * const threatintelligence = google.threatintelligence('v1beta');
2492
- *
2493
- * async function main() {
2494
- * const auth = new google.auth.GoogleAuth({
2495
- * // Scopes can be specified either as an array or as a single, space-delimited string.
2496
- * scopes: ['https://www.googleapis.com/auth/cloud-platform'],
2497
- * });
2498
- *
2499
- * // Acquire an auth client, and bind it to all future calls
2500
- * const authClient = await auth.getClient();
2501
- * google.options({auth: authClient});
2502
- *
2503
- * // Do the magic
2504
- * const res = await threatintelligence.projects.alerts.get({
2505
- * // Required. Name of the alert to get. Format: projects/{project\}/alerts/{alert\}
2506
- * name: 'projects/my-project/alerts/my-alert',
2507
- * });
2508
- * console.log(res.data);
2509
- *
2510
- * // Example response
2511
- * // {
2512
- * // "aiSummary": "my_aiSummary",
2513
- * // "assets": [],
2514
- * // "audit": {},
2515
- * // "configurations": [],
2516
- * // "detail": {},
2517
- * // "displayName": "my_displayName",
2518
- * // "duplicateOf": "my_duplicateOf",
2519
- * // "duplicatedBy": [],
2520
- * // "etag": "my_etag",
2521
- * // "externalId": "my_externalId",
2522
- * // "findings": [],
2523
- * // "name": "my_name",
2524
- * // "priorityAnalysis": {},
2525
- * // "relevanceAnalysis": {},
2526
- * // "severityAnalysis": {},
2527
- * // "state": "my_state"
2528
- * // }
2529
- * }
2530
- *
2531
- * main().catch(e => {
2532
- * console.error(e);
2533
- * throw e;
2534
- * });
2535
- *
2536
- * ```
2537
- *
2538
- * @param params - Parameters for request
2539
- * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
2540
- * @param callback - Optional callback that handles the response.
2541
- * @returns A promise if used with async/await, or void if used with a callback.
2542
- */
2543
- get(
2544
- params: Params$Resource$Projects$Alerts$Get,
2545
- options: StreamMethodOptions
2546
- ): Promise<GaxiosResponseWithHTTP2<Readable>>;
2547
- get(
2548
- params?: Params$Resource$Projects$Alerts$Get,
2549
- options?: MethodOptions
2550
- ): Promise<GaxiosResponseWithHTTP2<Schema$Alert>>;
2551
- get(
2552
- params: Params$Resource$Projects$Alerts$Get,
2553
- options: StreamMethodOptions | BodyResponseCallback<Readable>,
2554
- callback: BodyResponseCallback<Readable>
2555
- ): void;
2556
- get(
2557
- params: Params$Resource$Projects$Alerts$Get,
2558
- options: MethodOptions | BodyResponseCallback<Schema$Alert>,
2559
- callback: BodyResponseCallback<Schema$Alert>
2560
- ): void;
2561
- get(
2562
- params: Params$Resource$Projects$Alerts$Get,
2563
- callback: BodyResponseCallback<Schema$Alert>
2564
- ): void;
2565
- get(callback: BodyResponseCallback<Schema$Alert>): void;
2566
- get(
2567
- paramsOrCallback?:
2568
- | Params$Resource$Projects$Alerts$Get
2569
- | BodyResponseCallback<Schema$Alert>
2570
- | BodyResponseCallback<Readable>,
2571
- optionsOrCallback?:
2572
- | MethodOptions
2573
- | StreamMethodOptions
2574
- | BodyResponseCallback<Schema$Alert>
2575
- | BodyResponseCallback<Readable>,
2576
- callback?:
2577
- | BodyResponseCallback<Schema$Alert>
2578
- | BodyResponseCallback<Readable>
2579
- ):
2580
- | void
2581
- | Promise<GaxiosResponseWithHTTP2<Schema$Alert>>
2582
- | Promise<GaxiosResponseWithHTTP2<Readable>> {
2583
- let params = (paramsOrCallback ||
2584
- {}) as Params$Resource$Projects$Alerts$Get;
2585
- let options = (optionsOrCallback || {}) as MethodOptions;
2586
-
2587
- if (typeof paramsOrCallback === 'function') {
2588
- callback = paramsOrCallback;
2589
- params = {} as Params$Resource$Projects$Alerts$Get;
2590
- options = {};
2591
- }
2592
-
2593
- if (typeof optionsOrCallback === 'function') {
2594
- callback = optionsOrCallback;
2595
- options = {};
2596
- }
2597
-
2598
- const rootUrl =
2599
- options.rootUrl || 'https://threatintelligence.googleapis.com/';
2600
- const parameters = {
2601
- options: Object.assign(
2602
- {
2603
- url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'),
2604
- method: 'GET',
2605
- apiVersion: '',
2606
- },
2607
- options
2608
- ),
2609
- params,
2610
- requiredParams: ['name'],
2611
- pathParams: ['name'],
2612
- context: this.context,
2613
- };
2614
- if (callback) {
2615
- createAPIRequest<Schema$Alert>(
2616
- parameters,
2617
- callback as BodyResponseCallback<unknown>
2618
- );
2619
- } else {
2620
- return createAPIRequest<Schema$Alert>(parameters);
2621
- }
2622
- }
2623
-
2624
- /**
2625
- * Get a list of alerts that meet the filter criteria.
2626
- * @example
2627
- * ```js
2628
- * // Before running the sample:
2629
- * // - Enable the API at:
2630
- * // https://console.developers.google.com/apis/api/threatintelligence.googleapis.com
2631
- * // - Login into gcloud by running:
2632
- * // ```sh
2633
- * // $ gcloud auth application-default login
2634
- * // ```
2635
- * // - Install the npm module by running:
2636
- * // ```sh
2637
- * // $ npm install googleapis
2638
- * // ```
2639
- *
2640
- * const {google} = require('googleapis');
2641
- * const threatintelligence = google.threatintelligence('v1beta');
2642
- *
2643
- * async function main() {
2644
- * const auth = new google.auth.GoogleAuth({
2645
- * // Scopes can be specified either as an array or as a single, space-delimited string.
2646
- * scopes: ['https://www.googleapis.com/auth/cloud-platform'],
2647
- * });
2648
- *
2649
- * // Acquire an auth client, and bind it to all future calls
2650
- * const authClient = await auth.getClient();
2651
- * google.options({auth: authClient});
2652
- *
2653
- * // Do the magic
2654
- * const res = await threatintelligence.projects.alerts.list({
2655
- * // Optional. Filter criteria.
2656
- * filter: 'placeholder-value',
2657
- * // Optional. Order by criteria in the csv format: "field1,field2 desc" or "field1,field2" or "field1 asc, field2".
2658
- * orderBy: 'placeholder-value',
2659
- * // Optional. Page size.
2660
- * pageSize: 'placeholder-value',
2661
- * // Optional. Page token.
2662
- * pageToken: 'placeholder-value',
2663
- * // Required. Parent of the alerts. Format: projects/{project\}
2664
- * parent: 'projects/my-project',
2665
- * });
2666
- * console.log(res.data);
2667
- *
2668
- * // Example response
2669
- * // {
2670
- * // "alerts": [],
2671
- * // "nextPageToken": "my_nextPageToken"
2672
- * // }
2673
- * }
2674
- *
2675
- * main().catch(e => {
2676
- * console.error(e);
2677
- * throw e;
2678
- * });
2679
- *
2680
- * ```
2681
- *
2682
- * @param params - Parameters for request
2683
- * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
2684
- * @param callback - Optional callback that handles the response.
2685
- * @returns A promise if used with async/await, or void if used with a callback.
2686
- */
2687
- list(
2688
- params: Params$Resource$Projects$Alerts$List,
2689
- options: StreamMethodOptions
2690
- ): Promise<GaxiosResponseWithHTTP2<Readable>>;
2691
- list(
2692
- params?: Params$Resource$Projects$Alerts$List,
2693
- options?: MethodOptions
2694
- ): Promise<GaxiosResponseWithHTTP2<Schema$ListAlertsResponse>>;
2695
- list(
2696
- params: Params$Resource$Projects$Alerts$List,
2697
- options: StreamMethodOptions | BodyResponseCallback<Readable>,
2698
- callback: BodyResponseCallback<Readable>
2699
- ): void;
2700
- list(
2701
- params: Params$Resource$Projects$Alerts$List,
2702
- options: MethodOptions | BodyResponseCallback<Schema$ListAlertsResponse>,
2703
- callback: BodyResponseCallback<Schema$ListAlertsResponse>
2704
- ): void;
2705
- list(
2706
- params: Params$Resource$Projects$Alerts$List,
2707
- callback: BodyResponseCallback<Schema$ListAlertsResponse>
2708
- ): void;
2709
- list(callback: BodyResponseCallback<Schema$ListAlertsResponse>): void;
2710
- list(
2711
- paramsOrCallback?:
2712
- | Params$Resource$Projects$Alerts$List
2713
- | BodyResponseCallback<Schema$ListAlertsResponse>
2714
- | BodyResponseCallback<Readable>,
2715
- optionsOrCallback?:
2716
- | MethodOptions
2717
- | StreamMethodOptions
2718
- | BodyResponseCallback<Schema$ListAlertsResponse>
2719
- | BodyResponseCallback<Readable>,
2720
- callback?:
2721
- | BodyResponseCallback<Schema$ListAlertsResponse>
2722
- | BodyResponseCallback<Readable>
2723
- ):
2724
- | void
2725
- | Promise<GaxiosResponseWithHTTP2<Schema$ListAlertsResponse>>
2726
- | Promise<GaxiosResponseWithHTTP2<Readable>> {
2727
- let params = (paramsOrCallback ||
2728
- {}) as Params$Resource$Projects$Alerts$List;
2729
- let options = (optionsOrCallback || {}) as MethodOptions;
2730
-
2731
- if (typeof paramsOrCallback === 'function') {
2732
- callback = paramsOrCallback;
2733
- params = {} as Params$Resource$Projects$Alerts$List;
2734
- options = {};
2735
- }
2736
-
2737
- if (typeof optionsOrCallback === 'function') {
2738
- callback = optionsOrCallback;
2739
- options = {};
2740
- }
2741
-
2742
- const rootUrl =
2743
- options.rootUrl || 'https://threatintelligence.googleapis.com/';
2744
- const parameters = {
2745
- options: Object.assign(
2746
- {
2747
- url: (rootUrl + '/v1beta/{+parent}/alerts').replace(
2748
- /([^:]\/)\/+/g,
2749
- '$1'
2750
- ),
2751
- method: 'GET',
2752
- apiVersion: '',
2753
- },
2754
- options
2755
- ),
2756
- params,
2757
- requiredParams: ['parent'],
2758
- pathParams: ['parent'],
2759
- context: this.context,
2760
- };
2761
- if (callback) {
2762
- createAPIRequest<Schema$ListAlertsResponse>(
2763
- parameters,
2764
- callback as BodyResponseCallback<unknown>
2765
- );
2766
- } else {
2767
- return createAPIRequest<Schema$ListAlertsResponse>(parameters);
2768
- }
2769
- }
2770
-
2771
- /**
2772
- * Marks an alert as not actionable - NOT_ACTIONABLE.
2086
+ * Get an alert by name.
2773
2087
  * @example
2774
2088
  * ```js
2775
2089
  * // Before running the sample:
@@ -2798,22 +2112,15 @@ export namespace threatintelligence_v1beta {
2798
2112
  * google.options({auth: authClient});
2799
2113
  *
2800
2114
  * // Do the magic
2801
- * const res = await threatintelligence.projects.alerts.notActionable({
2802
- * // Required. Name of the alert to mark as a not actionable. Format: projects/{project\}/alerts/{alert\}
2115
+ * const res = await threatintelligence.projects.alerts.get({
2116
+ * // Required. Name of the alert to get. Format: projects/{project\}/alerts/{alert\}
2803
2117
  * name: 'projects/my-project/alerts/my-alert',
2804
- *
2805
- * // Request body metadata
2806
- * requestBody: {
2807
- * // request body parameters
2808
- * // {}
2809
- * },
2810
2118
  * });
2811
2119
  * console.log(res.data);
2812
2120
  *
2813
2121
  * // Example response
2814
2122
  * // {
2815
2123
  * // "aiSummary": "my_aiSummary",
2816
- * // "assets": [],
2817
2124
  * // "audit": {},
2818
2125
  * // "configurations": [],
2819
2126
  * // "detail": {},
@@ -2822,6 +2129,7 @@ export namespace threatintelligence_v1beta {
2822
2129
  * // "duplicatedBy": [],
2823
2130
  * // "etag": "my_etag",
2824
2131
  * // "externalId": "my_externalId",
2132
+ * // "findingCount": "my_findingCount",
2825
2133
  * // "findings": [],
2826
2134
  * // "name": "my_name",
2827
2135
  * // "priorityAnalysis": {},
@@ -2843,32 +2151,32 @@ export namespace threatintelligence_v1beta {
2843
2151
  * @param callback - Optional callback that handles the response.
2844
2152
  * @returns A promise if used with async/await, or void if used with a callback.
2845
2153
  */
2846
- notActionable(
2847
- params: Params$Resource$Projects$Alerts$Notactionable,
2154
+ get(
2155
+ params: Params$Resource$Projects$Alerts$Get,
2848
2156
  options: StreamMethodOptions
2849
2157
  ): Promise<GaxiosResponseWithHTTP2<Readable>>;
2850
- notActionable(
2851
- params?: Params$Resource$Projects$Alerts$Notactionable,
2158
+ get(
2159
+ params?: Params$Resource$Projects$Alerts$Get,
2852
2160
  options?: MethodOptions
2853
2161
  ): Promise<GaxiosResponseWithHTTP2<Schema$Alert>>;
2854
- notActionable(
2855
- params: Params$Resource$Projects$Alerts$Notactionable,
2162
+ get(
2163
+ params: Params$Resource$Projects$Alerts$Get,
2856
2164
  options: StreamMethodOptions | BodyResponseCallback<Readable>,
2857
2165
  callback: BodyResponseCallback<Readable>
2858
2166
  ): void;
2859
- notActionable(
2860
- params: Params$Resource$Projects$Alerts$Notactionable,
2167
+ get(
2168
+ params: Params$Resource$Projects$Alerts$Get,
2861
2169
  options: MethodOptions | BodyResponseCallback<Schema$Alert>,
2862
2170
  callback: BodyResponseCallback<Schema$Alert>
2863
2171
  ): void;
2864
- notActionable(
2865
- params: Params$Resource$Projects$Alerts$Notactionable,
2172
+ get(
2173
+ params: Params$Resource$Projects$Alerts$Get,
2866
2174
  callback: BodyResponseCallback<Schema$Alert>
2867
2175
  ): void;
2868
- notActionable(callback: BodyResponseCallback<Schema$Alert>): void;
2869
- notActionable(
2176
+ get(callback: BodyResponseCallback<Schema$Alert>): void;
2177
+ get(
2870
2178
  paramsOrCallback?:
2871
- | Params$Resource$Projects$Alerts$Notactionable
2179
+ | Params$Resource$Projects$Alerts$Get
2872
2180
  | BodyResponseCallback<Schema$Alert>
2873
2181
  | BodyResponseCallback<Readable>,
2874
2182
  optionsOrCallback?:
@@ -2884,12 +2192,12 @@ export namespace threatintelligence_v1beta {
2884
2192
  | Promise<GaxiosResponseWithHTTP2<Schema$Alert>>
2885
2193
  | Promise<GaxiosResponseWithHTTP2<Readable>> {
2886
2194
  let params = (paramsOrCallback ||
2887
- {}) as Params$Resource$Projects$Alerts$Notactionable;
2195
+ {}) as Params$Resource$Projects$Alerts$Get;
2888
2196
  let options = (optionsOrCallback || {}) as MethodOptions;
2889
2197
 
2890
2198
  if (typeof paramsOrCallback === 'function') {
2891
2199
  callback = paramsOrCallback;
2892
- params = {} as Params$Resource$Projects$Alerts$Notactionable;
2200
+ params = {} as Params$Resource$Projects$Alerts$Get;
2893
2201
  options = {};
2894
2202
  }
2895
2203
 
@@ -2903,11 +2211,8 @@ export namespace threatintelligence_v1beta {
2903
2211
  const parameters = {
2904
2212
  options: Object.assign(
2905
2213
  {
2906
- url: (rootUrl + '/v1beta/{+name}:notActionable').replace(
2907
- /([^:]\/)\/+/g,
2908
- '$1'
2909
- ),
2910
- method: 'POST',
2214
+ url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'),
2215
+ method: 'GET',
2911
2216
  apiVersion: '',
2912
2217
  },
2913
2218
  options
@@ -2928,7 +2233,7 @@ export namespace threatintelligence_v1beta {
2928
2233
  }
2929
2234
 
2930
2235
  /**
2931
- * Marks an alert as read - READ.
2236
+ * Get a list of alerts that meet the filter criteria.
2932
2237
  * @example
2933
2238
  * ```js
2934
2239
  * // Before running the sample:
@@ -2957,36 +2262,24 @@ export namespace threatintelligence_v1beta {
2957
2262
  * google.options({auth: authClient});
2958
2263
  *
2959
2264
  * // Do the magic
2960
- * const res = await threatintelligence.projects.alerts.read({
2961
- * // Required. Name of the alert to mark as read. Format: projects/{project\}/alerts/{alert\}
2962
- * name: 'projects/my-project/alerts/my-alert',
2963
- *
2964
- * // Request body metadata
2965
- * requestBody: {
2966
- * // request body parameters
2967
- * // {}
2968
- * },
2265
+ * const res = await threatintelligence.projects.alerts.list({
2266
+ * // Optional. 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"`
2267
+ * filter: 'placeholder-value',
2268
+ * // Optional. 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`
2269
+ * orderBy: 'placeholder-value',
2270
+ * // Optional. Page size. Default to 100 alerts per page. Maximum is 1000 alerts per page.
2271
+ * pageSize: 'placeholder-value',
2272
+ * // Optional. Page token to retrieve the next page of results.
2273
+ * pageToken: 'placeholder-value',
2274
+ * // Required. Parent of the alerts. Format: projects/{project\}
2275
+ * parent: 'projects/my-project',
2969
2276
  * });
2970
2277
  * console.log(res.data);
2971
2278
  *
2972
2279
  * // Example response
2973
2280
  * // {
2974
- * // "aiSummary": "my_aiSummary",
2975
- * // "assets": [],
2976
- * // "audit": {},
2977
- * // "configurations": [],
2978
- * // "detail": {},
2979
- * // "displayName": "my_displayName",
2980
- * // "duplicateOf": "my_duplicateOf",
2981
- * // "duplicatedBy": [],
2982
- * // "etag": "my_etag",
2983
- * // "externalId": "my_externalId",
2984
- * // "findings": [],
2985
- * // "name": "my_name",
2986
- * // "priorityAnalysis": {},
2987
- * // "relevanceAnalysis": {},
2988
- * // "severityAnalysis": {},
2989
- * // "state": "my_state"
2281
+ * // "alerts": [],
2282
+ * // "nextPageToken": "my_nextPageToken"
2990
2283
  * // }
2991
2284
  * }
2992
2285
  *
@@ -3002,53 +2295,53 @@ export namespace threatintelligence_v1beta {
3002
2295
  * @param callback - Optional callback that handles the response.
3003
2296
  * @returns A promise if used with async/await, or void if used with a callback.
3004
2297
  */
3005
- read(
3006
- params: Params$Resource$Projects$Alerts$Read,
2298
+ list(
2299
+ params: Params$Resource$Projects$Alerts$List,
3007
2300
  options: StreamMethodOptions
3008
2301
  ): Promise<GaxiosResponseWithHTTP2<Readable>>;
3009
- read(
3010
- params?: Params$Resource$Projects$Alerts$Read,
2302
+ list(
2303
+ params?: Params$Resource$Projects$Alerts$List,
3011
2304
  options?: MethodOptions
3012
- ): Promise<GaxiosResponseWithHTTP2<Schema$Alert>>;
3013
- read(
3014
- params: Params$Resource$Projects$Alerts$Read,
2305
+ ): Promise<GaxiosResponseWithHTTP2<Schema$ListAlertsResponse>>;
2306
+ list(
2307
+ params: Params$Resource$Projects$Alerts$List,
3015
2308
  options: StreamMethodOptions | BodyResponseCallback<Readable>,
3016
2309
  callback: BodyResponseCallback<Readable>
3017
2310
  ): void;
3018
- read(
3019
- params: Params$Resource$Projects$Alerts$Read,
3020
- options: MethodOptions | BodyResponseCallback<Schema$Alert>,
3021
- callback: BodyResponseCallback<Schema$Alert>
2311
+ list(
2312
+ params: Params$Resource$Projects$Alerts$List,
2313
+ options: MethodOptions | BodyResponseCallback<Schema$ListAlertsResponse>,
2314
+ callback: BodyResponseCallback<Schema$ListAlertsResponse>
3022
2315
  ): void;
3023
- read(
3024
- params: Params$Resource$Projects$Alerts$Read,
3025
- callback: BodyResponseCallback<Schema$Alert>
2316
+ list(
2317
+ params: Params$Resource$Projects$Alerts$List,
2318
+ callback: BodyResponseCallback<Schema$ListAlertsResponse>
3026
2319
  ): void;
3027
- read(callback: BodyResponseCallback<Schema$Alert>): void;
3028
- read(
2320
+ list(callback: BodyResponseCallback<Schema$ListAlertsResponse>): void;
2321
+ list(
3029
2322
  paramsOrCallback?:
3030
- | Params$Resource$Projects$Alerts$Read
3031
- | BodyResponseCallback<Schema$Alert>
2323
+ | Params$Resource$Projects$Alerts$List
2324
+ | BodyResponseCallback<Schema$ListAlertsResponse>
3032
2325
  | BodyResponseCallback<Readable>,
3033
2326
  optionsOrCallback?:
3034
2327
  | MethodOptions
3035
2328
  | StreamMethodOptions
3036
- | BodyResponseCallback<Schema$Alert>
2329
+ | BodyResponseCallback<Schema$ListAlertsResponse>
3037
2330
  | BodyResponseCallback<Readable>,
3038
2331
  callback?:
3039
- | BodyResponseCallback<Schema$Alert>
2332
+ | BodyResponseCallback<Schema$ListAlertsResponse>
3040
2333
  | BodyResponseCallback<Readable>
3041
2334
  ):
3042
2335
  | void
3043
- | Promise<GaxiosResponseWithHTTP2<Schema$Alert>>
2336
+ | Promise<GaxiosResponseWithHTTP2<Schema$ListAlertsResponse>>
3044
2337
  | Promise<GaxiosResponseWithHTTP2<Readable>> {
3045
2338
  let params = (paramsOrCallback ||
3046
- {}) as Params$Resource$Projects$Alerts$Read;
2339
+ {}) as Params$Resource$Projects$Alerts$List;
3047
2340
  let options = (optionsOrCallback || {}) as MethodOptions;
3048
2341
 
3049
2342
  if (typeof paramsOrCallback === 'function') {
3050
2343
  callback = paramsOrCallback;
3051
- params = {} as Params$Resource$Projects$Alerts$Read;
2344
+ params = {} as Params$Resource$Projects$Alerts$List;
3052
2345
  options = {};
3053
2346
  }
3054
2347
 
@@ -3062,32 +2355,32 @@ export namespace threatintelligence_v1beta {
3062
2355
  const parameters = {
3063
2356
  options: Object.assign(
3064
2357
  {
3065
- url: (rootUrl + '/v1beta/{+name}:read').replace(
2358
+ url: (rootUrl + '/v1beta/{+parent}/alerts').replace(
3066
2359
  /([^:]\/)\/+/g,
3067
2360
  '$1'
3068
2361
  ),
3069
- method: 'POST',
2362
+ method: 'GET',
3070
2363
  apiVersion: '',
3071
2364
  },
3072
2365
  options
3073
2366
  ),
3074
2367
  params,
3075
- requiredParams: ['name'],
3076
- pathParams: ['name'],
2368
+ requiredParams: ['parent'],
2369
+ pathParams: ['parent'],
3077
2370
  context: this.context,
3078
2371
  };
3079
2372
  if (callback) {
3080
- createAPIRequest<Schema$Alert>(
2373
+ createAPIRequest<Schema$ListAlertsResponse>(
3081
2374
  parameters,
3082
2375
  callback as BodyResponseCallback<unknown>
3083
2376
  );
3084
2377
  } else {
3085
- return createAPIRequest<Schema$Alert>(parameters);
2378
+ return createAPIRequest<Schema$ListAlertsResponse>(parameters);
3086
2379
  }
3087
2380
  }
3088
2381
 
3089
2382
  /**
3090
- * Return the status of a URI submitted to Google WebRisk.
2383
+ * Marks an alert as not actionable - NOT_ACTIONABLE.
3091
2384
  * @example
3092
2385
  * ```js
3093
2386
  * // Before running the sample:
@@ -3116,8 +2409,8 @@ export namespace threatintelligence_v1beta {
3116
2409
  * google.options({auth: authClient});
3117
2410
  *
3118
2411
  * // Do the magic
3119
- * const res = await threatintelligence.projects.alerts.refreshUriStatus({
3120
- * // Required. Name of alert to refresh status from WebRisk
2412
+ * const res = await threatintelligence.projects.alerts.notActionable({
2413
+ * // Required. Name of the alert to mark as a not actionable. Format: projects/{project\}/alerts/{alert\}
3121
2414
  * name: 'projects/my-project/alerts/my-alert',
3122
2415
  *
3123
2416
  * // Request body metadata
@@ -3130,6 +2423,21 @@ export namespace threatintelligence_v1beta {
3130
2423
  *
3131
2424
  * // Example response
3132
2425
  * // {
2426
+ * // "aiSummary": "my_aiSummary",
2427
+ * // "audit": {},
2428
+ * // "configurations": [],
2429
+ * // "detail": {},
2430
+ * // "displayName": "my_displayName",
2431
+ * // "duplicateOf": "my_duplicateOf",
2432
+ * // "duplicatedBy": [],
2433
+ * // "etag": "my_etag",
2434
+ * // "externalId": "my_externalId",
2435
+ * // "findingCount": "my_findingCount",
2436
+ * // "findings": [],
2437
+ * // "name": "my_name",
2438
+ * // "priorityAnalysis": {},
2439
+ * // "relevanceAnalysis": {},
2440
+ * // "severityAnalysis": {},
3133
2441
  * // "state": "my_state"
3134
2442
  * // }
3135
2443
  * }
@@ -3146,57 +2454,53 @@ export namespace threatintelligence_v1beta {
3146
2454
  * @param callback - Optional callback that handles the response.
3147
2455
  * @returns A promise if used with async/await, or void if used with a callback.
3148
2456
  */
3149
- refreshUriStatus(
3150
- params: Params$Resource$Projects$Alerts$Refreshuristatus,
2457
+ notActionable(
2458
+ params: Params$Resource$Projects$Alerts$Notactionable,
3151
2459
  options: StreamMethodOptions
3152
2460
  ): Promise<GaxiosResponseWithHTTP2<Readable>>;
3153
- refreshUriStatus(
3154
- params?: Params$Resource$Projects$Alerts$Refreshuristatus,
2461
+ notActionable(
2462
+ params?: Params$Resource$Projects$Alerts$Notactionable,
3155
2463
  options?: MethodOptions
3156
- ): Promise<GaxiosResponseWithHTTP2<Schema$RefreshAlertUriStatusResponse>>;
3157
- refreshUriStatus(
3158
- params: Params$Resource$Projects$Alerts$Refreshuristatus,
2464
+ ): Promise<GaxiosResponseWithHTTP2<Schema$Alert>>;
2465
+ notActionable(
2466
+ params: Params$Resource$Projects$Alerts$Notactionable,
3159
2467
  options: StreamMethodOptions | BodyResponseCallback<Readable>,
3160
2468
  callback: BodyResponseCallback<Readable>
3161
2469
  ): void;
3162
- refreshUriStatus(
3163
- params: Params$Resource$Projects$Alerts$Refreshuristatus,
3164
- options:
3165
- | MethodOptions
3166
- | BodyResponseCallback<Schema$RefreshAlertUriStatusResponse>,
3167
- callback: BodyResponseCallback<Schema$RefreshAlertUriStatusResponse>
3168
- ): void;
3169
- refreshUriStatus(
3170
- params: Params$Resource$Projects$Alerts$Refreshuristatus,
3171
- callback: BodyResponseCallback<Schema$RefreshAlertUriStatusResponse>
2470
+ notActionable(
2471
+ params: Params$Resource$Projects$Alerts$Notactionable,
2472
+ options: MethodOptions | BodyResponseCallback<Schema$Alert>,
2473
+ callback: BodyResponseCallback<Schema$Alert>
3172
2474
  ): void;
3173
- refreshUriStatus(
3174
- callback: BodyResponseCallback<Schema$RefreshAlertUriStatusResponse>
2475
+ notActionable(
2476
+ params: Params$Resource$Projects$Alerts$Notactionable,
2477
+ callback: BodyResponseCallback<Schema$Alert>
3175
2478
  ): void;
3176
- refreshUriStatus(
2479
+ notActionable(callback: BodyResponseCallback<Schema$Alert>): void;
2480
+ notActionable(
3177
2481
  paramsOrCallback?:
3178
- | Params$Resource$Projects$Alerts$Refreshuristatus
3179
- | BodyResponseCallback<Schema$RefreshAlertUriStatusResponse>
2482
+ | Params$Resource$Projects$Alerts$Notactionable
2483
+ | BodyResponseCallback<Schema$Alert>
3180
2484
  | BodyResponseCallback<Readable>,
3181
2485
  optionsOrCallback?:
3182
2486
  | MethodOptions
3183
2487
  | StreamMethodOptions
3184
- | BodyResponseCallback<Schema$RefreshAlertUriStatusResponse>
2488
+ | BodyResponseCallback<Schema$Alert>
3185
2489
  | BodyResponseCallback<Readable>,
3186
2490
  callback?:
3187
- | BodyResponseCallback<Schema$RefreshAlertUriStatusResponse>
2491
+ | BodyResponseCallback<Schema$Alert>
3188
2492
  | BodyResponseCallback<Readable>
3189
2493
  ):
3190
2494
  | void
3191
- | Promise<GaxiosResponseWithHTTP2<Schema$RefreshAlertUriStatusResponse>>
2495
+ | Promise<GaxiosResponseWithHTTP2<Schema$Alert>>
3192
2496
  | Promise<GaxiosResponseWithHTTP2<Readable>> {
3193
2497
  let params = (paramsOrCallback ||
3194
- {}) as Params$Resource$Projects$Alerts$Refreshuristatus;
2498
+ {}) as Params$Resource$Projects$Alerts$Notactionable;
3195
2499
  let options = (optionsOrCallback || {}) as MethodOptions;
3196
2500
 
3197
2501
  if (typeof paramsOrCallback === 'function') {
3198
2502
  callback = paramsOrCallback;
3199
- params = {} as Params$Resource$Projects$Alerts$Refreshuristatus;
2503
+ params = {} as Params$Resource$Projects$Alerts$Notactionable;
3200
2504
  options = {};
3201
2505
  }
3202
2506
 
@@ -3210,7 +2514,7 @@ export namespace threatintelligence_v1beta {
3210
2514
  const parameters = {
3211
2515
  options: Object.assign(
3212
2516
  {
3213
- url: (rootUrl + '/v1beta/{+name}:refreshUriStatus').replace(
2517
+ url: (rootUrl + '/v1beta/{+name}:notActionable').replace(
3214
2518
  /([^:]\/)\/+/g,
3215
2519
  '$1'
3216
2520
  ),
@@ -3225,19 +2529,17 @@ export namespace threatintelligence_v1beta {
3225
2529
  context: this.context,
3226
2530
  };
3227
2531
  if (callback) {
3228
- createAPIRequest<Schema$RefreshAlertUriStatusResponse>(
2532
+ createAPIRequest<Schema$Alert>(
3229
2533
  parameters,
3230
2534
  callback as BodyResponseCallback<unknown>
3231
2535
  );
3232
2536
  } else {
3233
- return createAPIRequest<Schema$RefreshAlertUriStatusResponse>(
3234
- parameters
3235
- );
2537
+ return createAPIRequest<Schema$Alert>(parameters);
3236
2538
  }
3237
2539
  }
3238
2540
 
3239
2541
  /**
3240
- * Report the URI associated with an alert to Google WebRisk.
2542
+ * Marks an alert as read - READ.
3241
2543
  * @example
3242
2544
  * ```js
3243
2545
  * // Before running the sample:
@@ -3266,8 +2568,8 @@ export namespace threatintelligence_v1beta {
3266
2568
  * google.options({auth: authClient});
3267
2569
  *
3268
2570
  * // Do the magic
3269
- * const res = await threatintelligence.projects.alerts.reportAlertUri({
3270
- * // Required. Name of alert to submit to WebRisk.
2571
+ * const res = await threatintelligence.projects.alerts.read({
2572
+ * // Required. Name of the alert to mark as read. Format: projects/{project\}/alerts/{alert\}
3271
2573
  * name: 'projects/my-project/alerts/my-alert',
3272
2574
  *
3273
2575
  * // Request body metadata
@@ -3280,6 +2582,21 @@ export namespace threatintelligence_v1beta {
3280
2582
  *
3281
2583
  * // Example response
3282
2584
  * // {
2585
+ * // "aiSummary": "my_aiSummary",
2586
+ * // "audit": {},
2587
+ * // "configurations": [],
2588
+ * // "detail": {},
2589
+ * // "displayName": "my_displayName",
2590
+ * // "duplicateOf": "my_duplicateOf",
2591
+ * // "duplicatedBy": [],
2592
+ * // "etag": "my_etag",
2593
+ * // "externalId": "my_externalId",
2594
+ * // "findingCount": "my_findingCount",
2595
+ * // "findings": [],
2596
+ * // "name": "my_name",
2597
+ * // "priorityAnalysis": {},
2598
+ * // "relevanceAnalysis": {},
2599
+ * // "severityAnalysis": {},
3283
2600
  * // "state": "my_state"
3284
2601
  * // }
3285
2602
  * }
@@ -3296,57 +2613,53 @@ export namespace threatintelligence_v1beta {
3296
2613
  * @param callback - Optional callback that handles the response.
3297
2614
  * @returns A promise if used with async/await, or void if used with a callback.
3298
2615
  */
3299
- reportAlertUri(
3300
- params: Params$Resource$Projects$Alerts$Reportalerturi,
2616
+ read(
2617
+ params: Params$Resource$Projects$Alerts$Read,
3301
2618
  options: StreamMethodOptions
3302
2619
  ): Promise<GaxiosResponseWithHTTP2<Readable>>;
3303
- reportAlertUri(
3304
- params?: Params$Resource$Projects$Alerts$Reportalerturi,
2620
+ read(
2621
+ params?: Params$Resource$Projects$Alerts$Read,
3305
2622
  options?: MethodOptions
3306
- ): Promise<GaxiosResponseWithHTTP2<Schema$ReportAlertUriResponse>>;
3307
- reportAlertUri(
3308
- params: Params$Resource$Projects$Alerts$Reportalerturi,
2623
+ ): Promise<GaxiosResponseWithHTTP2<Schema$Alert>>;
2624
+ read(
2625
+ params: Params$Resource$Projects$Alerts$Read,
3309
2626
  options: StreamMethodOptions | BodyResponseCallback<Readable>,
3310
2627
  callback: BodyResponseCallback<Readable>
3311
2628
  ): void;
3312
- reportAlertUri(
3313
- params: Params$Resource$Projects$Alerts$Reportalerturi,
3314
- options:
3315
- | MethodOptions
3316
- | BodyResponseCallback<Schema$ReportAlertUriResponse>,
3317
- callback: BodyResponseCallback<Schema$ReportAlertUriResponse>
3318
- ): void;
3319
- reportAlertUri(
3320
- params: Params$Resource$Projects$Alerts$Reportalerturi,
3321
- callback: BodyResponseCallback<Schema$ReportAlertUriResponse>
2629
+ read(
2630
+ params: Params$Resource$Projects$Alerts$Read,
2631
+ options: MethodOptions | BodyResponseCallback<Schema$Alert>,
2632
+ callback: BodyResponseCallback<Schema$Alert>
3322
2633
  ): void;
3323
- reportAlertUri(
3324
- callback: BodyResponseCallback<Schema$ReportAlertUriResponse>
2634
+ read(
2635
+ params: Params$Resource$Projects$Alerts$Read,
2636
+ callback: BodyResponseCallback<Schema$Alert>
3325
2637
  ): void;
3326
- reportAlertUri(
2638
+ read(callback: BodyResponseCallback<Schema$Alert>): void;
2639
+ read(
3327
2640
  paramsOrCallback?:
3328
- | Params$Resource$Projects$Alerts$Reportalerturi
3329
- | BodyResponseCallback<Schema$ReportAlertUriResponse>
2641
+ | Params$Resource$Projects$Alerts$Read
2642
+ | BodyResponseCallback<Schema$Alert>
3330
2643
  | BodyResponseCallback<Readable>,
3331
2644
  optionsOrCallback?:
3332
2645
  | MethodOptions
3333
2646
  | StreamMethodOptions
3334
- | BodyResponseCallback<Schema$ReportAlertUriResponse>
2647
+ | BodyResponseCallback<Schema$Alert>
3335
2648
  | BodyResponseCallback<Readable>,
3336
2649
  callback?:
3337
- | BodyResponseCallback<Schema$ReportAlertUriResponse>
2650
+ | BodyResponseCallback<Schema$Alert>
3338
2651
  | BodyResponseCallback<Readable>
3339
2652
  ):
3340
2653
  | void
3341
- | Promise<GaxiosResponseWithHTTP2<Schema$ReportAlertUriResponse>>
2654
+ | Promise<GaxiosResponseWithHTTP2<Schema$Alert>>
3342
2655
  | Promise<GaxiosResponseWithHTTP2<Readable>> {
3343
2656
  let params = (paramsOrCallback ||
3344
- {}) as Params$Resource$Projects$Alerts$Reportalerturi;
2657
+ {}) as Params$Resource$Projects$Alerts$Read;
3345
2658
  let options = (optionsOrCallback || {}) as MethodOptions;
3346
2659
 
3347
2660
  if (typeof paramsOrCallback === 'function') {
3348
2661
  callback = paramsOrCallback;
3349
- params = {} as Params$Resource$Projects$Alerts$Reportalerturi;
2662
+ params = {} as Params$Resource$Projects$Alerts$Read;
3350
2663
  options = {};
3351
2664
  }
3352
2665
 
@@ -3360,7 +2673,7 @@ export namespace threatintelligence_v1beta {
3360
2673
  const parameters = {
3361
2674
  options: Object.assign(
3362
2675
  {
3363
- url: (rootUrl + '/v1beta/{+name}:reportAlertUri').replace(
2676
+ url: (rootUrl + '/v1beta/{+name}:read').replace(
3364
2677
  /([^:]\/)\/+/g,
3365
2678
  '$1'
3366
2679
  ),
@@ -3375,12 +2688,12 @@ export namespace threatintelligence_v1beta {
3375
2688
  context: this.context,
3376
2689
  };
3377
2690
  if (callback) {
3378
- createAPIRequest<Schema$ReportAlertUriResponse>(
2691
+ createAPIRequest<Schema$Alert>(
3379
2692
  parameters,
3380
2693
  callback as BodyResponseCallback<unknown>
3381
2694
  );
3382
2695
  } else {
3383
- return createAPIRequest<Schema$ReportAlertUriResponse>(parameters);
2696
+ return createAPIRequest<Schema$Alert>(parameters);
3384
2697
  }
3385
2698
  }
3386
2699
 
@@ -3429,7 +2742,6 @@ export namespace threatintelligence_v1beta {
3429
2742
  * // Example response
3430
2743
  * // {
3431
2744
  * // "aiSummary": "my_aiSummary",
3432
- * // "assets": [],
3433
2745
  * // "audit": {},
3434
2746
  * // "configurations": [],
3435
2747
  * // "detail": {},
@@ -3438,6 +2750,7 @@ export namespace threatintelligence_v1beta {
3438
2750
  * // "duplicatedBy": [],
3439
2751
  * // "etag": "my_etag",
3440
2752
  * // "externalId": "my_externalId",
2753
+ * // "findingCount": "my_findingCount",
3441
2754
  * // "findings": [],
3442
2755
  * // "name": "my_name",
3443
2756
  * // "priorityAnalysis": {},
@@ -3588,7 +2901,6 @@ export namespace threatintelligence_v1beta {
3588
2901
  * // Example response
3589
2902
  * // {
3590
2903
  * // "aiSummary": "my_aiSummary",
3591
- * // "assets": [],
3592
2904
  * // "audit": {},
3593
2905
  * // "configurations": [],
3594
2906
  * // "detail": {},
@@ -3597,6 +2909,7 @@ export namespace threatintelligence_v1beta {
3597
2909
  * // "duplicatedBy": [],
3598
2910
  * // "etag": "my_etag",
3599
2911
  * // "externalId": "my_externalId",
2912
+ * // "findingCount": "my_findingCount",
3600
2913
  * // "findings": [],
3601
2914
  * // "name": "my_name",
3602
2915
  * // "priorityAnalysis": {},
@@ -3747,7 +3060,6 @@ export namespace threatintelligence_v1beta {
3747
3060
  * // Example response
3748
3061
  * // {
3749
3062
  * // "aiSummary": "my_aiSummary",
3750
- * // "assets": [],
3751
3063
  * // "audit": {},
3752
3064
  * // "configurations": [],
3753
3065
  * // "detail": {},
@@ -3756,6 +3068,7 @@ export namespace threatintelligence_v1beta {
3756
3068
  * // "duplicatedBy": [],
3757
3069
  * // "etag": "my_etag",
3758
3070
  * // "externalId": "my_externalId",
3071
+ * // "findingCount": "my_findingCount",
3759
3072
  * // "findings": [],
3760
3073
  * // "name": "my_name",
3761
3074
  * // "priorityAnalysis": {},
@@ -3924,19 +3237,19 @@ export namespace threatintelligence_v1beta {
3924
3237
  }
3925
3238
  export interface Params$Resource$Projects$Alerts$List extends StandardParameters {
3926
3239
  /**
3927
- * Optional. Filter criteria.
3240
+ * Optional. 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"`
3928
3241
  */
3929
3242
  filter?: string;
3930
3243
  /**
3931
- * Optional. Order by criteria in the csv format: "field1,field2 desc" or "field1,field2" or "field1 asc, field2".
3244
+ * Optional. 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`
3932
3245
  */
3933
3246
  orderBy?: string;
3934
3247
  /**
3935
- * Optional. Page size.
3248
+ * Optional. Page size. Default to 100 alerts per page. Maximum is 1000 alerts per page.
3936
3249
  */
3937
3250
  pageSize?: number;
3938
3251
  /**
3939
- * Optional. Page token.
3252
+ * Optional. Page token to retrieve the next page of results.
3940
3253
  */
3941
3254
  pageToken?: string;
3942
3255
  /**
@@ -3966,28 +3279,6 @@ export namespace threatintelligence_v1beta {
3966
3279
  */
3967
3280
  requestBody?: Schema$MarkAlertAsReadRequest;
3968
3281
  }
3969
- export interface Params$Resource$Projects$Alerts$Refreshuristatus extends StandardParameters {
3970
- /**
3971
- * Required. Name of alert to refresh status from WebRisk
3972
- */
3973
- name?: string;
3974
-
3975
- /**
3976
- * Request body metadata
3977
- */
3978
- requestBody?: Schema$RefreshAlertUriStatusRequest;
3979
- }
3980
- export interface Params$Resource$Projects$Alerts$Reportalerturi extends StandardParameters {
3981
- /**
3982
- * Required. Name of alert to submit to WebRisk.
3983
- */
3984
- name?: string;
3985
-
3986
- /**
3987
- * Request body metadata
3988
- */
3989
- requestBody?: Schema$ReportAlertUriRequest;
3990
- }
3991
3282
  export interface Params$Resource$Projects$Alerts$Resolve extends StandardParameters {
3992
3283
  /**
3993
3284
  * Required. Name of the alert to mark as resolved. Format: projects/{project\}/alerts/{alert\}
@@ -4884,7 +4175,7 @@ export namespace threatintelligence_v1beta {
4884
4175
  }
4885
4176
 
4886
4177
  /**
4887
- * Get a finding by name.
4178
+ * Get a finding by name. The `name` field should have the format: `projects/{project\}/findings/{finding\}`
4888
4179
  * @example
4889
4180
  * ```js
4890
4181
  * // Before running the sample:
@@ -4923,12 +4214,10 @@ export namespace threatintelligence_v1beta {
4923
4214
  * // {
4924
4215
  * // "aiSummary": "my_aiSummary",
4925
4216
  * // "alert": "my_alert",
4926
- * // "asset": "my_asset",
4927
4217
  * // "audit": {},
4928
4218
  * // "configurations": [],
4929
4219
  * // "detail": {},
4930
4220
  * // "displayName": "my_displayName",
4931
- * // "issue": "my_issue",
4932
4221
  * // "name": "my_name",
4933
4222
  * // "provider": "my_provider",
4934
4223
  * // "relevanceAnalysis": {},
@@ -5032,7 +4321,7 @@ export namespace threatintelligence_v1beta {
5032
4321
  }
5033
4322
 
5034
4323
  /**
5035
- * Get a list of findings that meet the filter criteria.
4324
+ * Get a list of findings that meet the filter criteria. The `parent` field in ListFindingsRequest should have the format: projects/{project\}
5036
4325
  * @example
5037
4326
  * ```js
5038
4327
  * // Before running the sample:
@@ -5181,7 +4470,7 @@ export namespace threatintelligence_v1beta {
5181
4470
  }
5182
4471
 
5183
4472
  /**
5184
- * SearchFindings is a more powerful version of ListFindings that supports complex queries like "findings for issues" using functions such as `has_issue` and `has_asset` in the query string. Example to search for findings for a specific issue: `has_issue("name=\"vaults/vault-12345/issues/issue-12345\"")`)
4473
+ * 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\"")`
5185
4474
  * @example
5186
4475
  * ```js
5187
4476
  * // Before running the sample:
@@ -5219,7 +4508,7 @@ export namespace threatintelligence_v1beta {
5219
4508
  * pageToken: 'placeholder-value',
5220
4509
  * // Required. Parent of the findings. Format: vaults/{vault\}
5221
4510
  * parent: 'projects/my-project',
5222
- * // Optional. Query on what findings will be returned. This supports the same filter criteria as FindingService.ListFindings as well as the following relationship queries `has_issue` and `has_asset`. Examples: - has_issue("name=\"vaults/vault-12345/issues/issue-12345\"") - has_asset("name=\"vaults/vault-12345/assets/asset-12345\"")
4511
+ * // Optional. 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\"")`
5223
4512
  * query: 'placeholder-value',
5224
4513
  * });
5225
4514
  * console.log(res.data);
@@ -5376,7 +4665,7 @@ export namespace threatintelligence_v1beta {
5376
4665
  */
5377
4666
  parent?: string;
5378
4667
  /**
5379
- * Optional. Query on what findings will be returned. This supports the same filter criteria as FindingService.ListFindings as well as the following relationship queries `has_issue` and `has_asset`. Examples: - has_issue("name=\"vaults/vault-12345/issues/issue-12345\"") - has_asset("name=\"vaults/vault-12345/assets/asset-12345\"")
4668
+ * Optional. 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\"")`
5380
4669
  */
5381
4670
  query?: string;
5382
4671
  }