@maxim_mazurok/gapi.client.websecurityscanner-v1 0.0.20231105 → 0.0.20231130

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/index.d.ts CHANGED
@@ -9,1134 +9,781 @@
9
9
  // This file was generated by https://github.com/Maxim-Mazurok/google-api-typings-generator. Please do not edit it manually.
10
10
  // In case of any problems please post issue to https://github.com/Maxim-Mazurok/google-api-typings-generator
11
11
  // Generated from: https://websecurityscanner.googleapis.com/$discovery/rest?version=v1
12
- // Revision: 20231105
12
+ // Revision: 20231130
13
13
 
14
14
  /// <reference types="gapi.client" />
15
15
 
16
16
  declare namespace gapi.client {
17
- /** Load Web Security Scanner API v1 */
18
- function load(urlOrObject: "https://websecurityscanner.googleapis.com/$discovery/rest?version=v1"): Promise<void>;
19
- /** @deprecated Please load APIs with discovery documents. */
20
- function load(name: "websecurityscanner", version: "v1"): Promise<void>;
21
- /** @deprecated Please load APIs with discovery documents. */
22
- function load(name: "websecurityscanner", version: "v1", callback: () => any): void;
17
+ /** Load Web Security Scanner API v1 */
18
+ function load(
19
+ urlOrObject: 'https://websecurityscanner.googleapis.com/$discovery/rest?version=v1'
20
+ ): Promise<void>;
21
+ /** @deprecated Please load APIs with discovery documents. */
22
+ function load(name: 'websecurityscanner', version: 'v1'): Promise<void>;
23
+ /** @deprecated Please load APIs with discovery documents. */
24
+ function load(
25
+ name: 'websecurityscanner',
26
+ version: 'v1',
27
+ callback: () => any
28
+ ): void;
23
29
 
24
- namespace websecurityscanner {
25
- interface Authentication {
26
- /** Authentication using a custom account. */
27
- customAccount?:
28
- CustomAccount;
29
- /** Authentication using a Google account. */
30
- googleAccount?:
31
- GoogleAccount;
32
- /** Authentication using Identity-Aware-Proxy (IAP). */
33
- iapCredential?:
34
- IapCredential;
35
- }
36
- interface CrawledUrl {
37
- /** Output only. The body of the request that was used to visit the URL. */
38
- body?:
39
- string;
40
- /** Output only. The http method of the request that was used to visit the URL, in uppercase. */
41
- httpMethod?:
42
- string;
43
- /** Output only. The URL that was crawled. */
44
- url?:
45
- string;
46
- }
47
- interface CustomAccount {
48
- /** Required. The login form URL of the website. */
49
- loginUrl?:
50
- string;
51
- /** Required. Input only. The password of the custom account. The credential is stored encrypted and not returned in any response nor included in audit logs. */
52
- password?:
53
- string;
54
- /** Required. The user name of the custom account. */
55
- username?:
56
- string;
57
- }
58
- // tslint:disable-next-line:no-empty-interface
59
- interface Empty {
60
- }
61
- interface Finding {
62
- /** Output only. The body of the request that triggered the vulnerability. */
63
- body?:
64
- string;
65
- /** Output only. The description of the vulnerability. */
66
- description?:
67
- string;
68
- /** Output only. The URL where the browser lands when the vulnerability is detected. */
69
- finalUrl?:
70
- string;
71
- /**
72
- * Output only. The type of the Finding. Detailed and up-to-date information on findings can be found here:
73
- * https://cloud.google.com/security-command-center/docs/how-to-remediate-web-security-scanner-findings
74
- */
75
- findingType?:
76
- string;
77
- /** Output only. An addon containing information reported for a vulnerability with an HTML form, if any. */
78
- form?:
79
- Form;
80
- /** Output only. If the vulnerability was originated from nested IFrame, the immediate parent IFrame is reported. */
81
- frameUrl?:
82
- string;
83
- /** Output only. The URL produced by the server-side fuzzer and used in the request that triggered the vulnerability. */
84
- fuzzedUrl?:
85
- string;
86
- /** Output only. The http method of the request that triggered the vulnerability, in uppercase. */
87
- httpMethod?:
88
- string;
89
- /**
90
- * Output only. The resource name of the Finding. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}/scanruns/{scanRunId}/findings/{findingId}'. The
91
- * finding IDs are generated by the system.
92
- */
93
- name?:
94
- string;
95
- /** Output only. An addon containing information about outdated libraries. */
96
- outdatedLibrary?:
97
- OutdatedLibrary;
98
- /** Output only. The URL containing human-readable payload that user can leverage to reproduce the vulnerability. */
99
- reproductionUrl?:
100
- string;
101
- /** Output only. The severity level of the reported vulnerability. */
102
- severity?:
103
- string;
104
- /** Output only. The tracking ID uniquely identifies a vulnerability instance across multiple ScanRuns. */
105
- trackingId?:
106
- string;
107
- /** Output only. An addon containing detailed information regarding any resource causing the vulnerability such as JavaScript sources, image, audio files, etc. */
108
- violatingResource?:
109
- ViolatingResource;
110
- /** Output only. An addon containing information about vulnerable or missing HTTP headers. */
111
- vulnerableHeaders?:
112
- VulnerableHeaders;
113
- /** Output only. An addon containing information about request parameters which were found to be vulnerable. */
114
- vulnerableParameters?:
115
- VulnerableParameters;
116
- /** Output only. An addon containing information reported for an XSS, if any. */
117
- xss?:
118
- Xss;
119
- /** Output only. An addon containing information reported for an XXE, if any. */
120
- xxe?:
121
- Xxe;
122
- }
123
- interface FindingTypeStats {
124
- /** Output only. The count of findings belonging to this finding type. */
125
- findingCount?:
126
- number;
127
- /** Output only. The finding type associated with the stats. */
128
- findingType?:
129
- string;
130
- }
131
- interface Form {
132
- /** ! The URI where to send the form when it's submitted. */
133
- actionUri?:
134
- string;
135
- /** ! The names of form fields related to the vulnerability. */
136
- fields?:
137
- string[];
138
- }
139
- interface GoogleAccount {
140
- /** Required. Input only. The password of the Google account. The credential is stored encrypted and not returned in any response nor included in audit logs. */
141
- password?:
142
- string;
143
- /** Required. The user name of the Google account. */
144
- username?:
145
- string;
146
- }
147
- interface Header {
148
- /** Header name. */
149
- name?:
150
- string;
151
- /** Header value. */
152
- value?:
153
- string;
154
- }
155
- interface IapCredential {
156
- /** Authentication configuration when Web-Security-Scanner service account is added in Identity-Aware-Proxy (IAP) access policies. */
157
- iapTestServiceAccountInfo?:
158
- IapTestServiceAccountInfo;
159
- }
160
- interface IapTestServiceAccountInfo {
161
- /** Required. Describes OAuth2 client id of resources protected by Identity-Aware-Proxy (IAP). */
162
- targetAudienceClientId?:
163
- string;
164
- }
165
- interface ListCrawledUrlsResponse {
166
- /** The list of CrawledUrls returned. */
167
- crawledUrls?:
168
- CrawledUrl[];
169
- /** Token to retrieve the next page of results, or empty if there are no more results in the list. */
170
- nextPageToken?:
171
- string;
172
- }
173
- interface ListFindingsResponse {
174
- /** The list of Findings returned. */
175
- findings?:
176
- Finding[];
177
- /** Token to retrieve the next page of results, or empty if there are no more results in the list. */
178
- nextPageToken?:
179
- string;
180
- }
181
- interface ListFindingTypeStatsResponse {
182
- /** The list of FindingTypeStats returned. */
183
- findingTypeStats?:
184
- FindingTypeStats[];
185
- }
186
- interface ListScanConfigsResponse {
187
- /** Token to retrieve the next page of results, or empty if there are no more results in the list. */
188
- nextPageToken?:
189
- string;
190
- /** The list of ScanConfigs returned. */
191
- scanConfigs?:
192
- ScanConfig[];
193
- }
194
- interface ListScanRunsResponse {
195
- /** Token to retrieve the next page of results, or empty if there are no more results in the list. */
196
- nextPageToken?:
197
- string;
198
- /** The list of ScanRuns returned. */
199
- scanRuns?:
200
- ScanRun[];
201
- }
202
- interface OutdatedLibrary {
203
- /** URLs to learn more information about the vulnerabilities in the library. */
204
- learnMoreUrls?:
205
- string[];
206
- /** The name of the outdated library. */
207
- libraryName?:
208
- string;
209
- /** The version number. */
210
- version?:
211
- string;
212
- }
213
- interface ScanConfig {
214
- /** The authentication configuration. If specified, service will use the authentication configuration during scanning. */
215
- authentication?:
216
- Authentication;
217
- /** The excluded URL patterns as described in https://cloud.google.com/security-command-center/docs/how-to-use-web-security-scanner#excluding_urls */
218
- blacklistPatterns?:
219
- string[];
220
- /** Required. The user provided display name of the ScanConfig. */
221
- displayName?:
222
- string;
223
- /** Controls export of scan configurations and results to Security Command Center. */
224
- exportToSecurityCommandCenter?:
225
- string;
226
- /** Whether to keep scanning even if most requests return HTTP error codes. */
227
- ignoreHttpStatusErrors?:
228
- boolean;
229
- /** Whether the scan config is managed by Web Security Scanner, output only. */
230
- managedScan?:
231
- boolean;
232
- /**
233
- * The maximum QPS during scanning. A valid value ranges from 5 to 20 inclusively. If the field is unspecified or its value is set 0, server will default to 15. Other values outside of
234
- * [5, 20] range will be rejected with INVALID_ARGUMENT error.
235
- */
236
- maxQps?:
237
- number;
238
- /** The resource name of the ScanConfig. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}'. The ScanConfig IDs are generated by the system. */
239
- name?:
240
- string;
241
- /** The risk level selected for the scan */
242
- riskLevel?:
243
- string;
244
- /** The schedule of the ScanConfig. */
245
- schedule?:
246
- Schedule;
247
- /** Required. The starting URLs from which the scanner finds site pages. */
248
- startingUrls?:
249
- string[];
250
- /** Whether the scan configuration has enabled static IP address scan feature. If enabled, the scanner will access applications from static IP addresses. */
251
- staticIpScan?:
252
- boolean;
253
- /** The user agent used during scanning. */
254
- userAgent?:
255
- string;
256
- }
257
- interface ScanConfigError {
258
- /** Output only. Indicates the reason code for a configuration failure. */
259
- code?:
260
- string;
261
- /**
262
- * Output only. Indicates the full name of the ScanConfig field that triggers this error, for example "scan_config.max_qps". This field is provided for troubleshooting purposes only
263
- * and its actual value can change in the future.
264
- */
265
- fieldName?:
266
- string;
267
- }
268
- interface ScanRun {
269
- /** Output only. The time at which the ScanRun reached termination state - that the ScanRun is either finished or stopped by user. */
270
- endTime?:
271
- string;
272
- /** Output only. If result_state is an ERROR, this field provides the primary reason for scan's termination and more details, if such are available. */
273
- errorTrace?:
274
- ScanRunErrorTrace;
275
- /** Output only. The execution state of the ScanRun. */
276
- executionState?:
277
- string;
278
- /** Output only. Whether the scan run has found any vulnerabilities. */
279
- hasVulnerabilities?:
280
- boolean;
281
- /**
282
- * Output only. The resource name of the ScanRun. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'. The ScanRun IDs are generated
283
- * by the system.
284
- */
285
- name?:
286
- string;
287
- /**
288
- * Output only. The percentage of total completion ranging from 0 to 100. If the scan is in queue, the value is 0. If the scan is running, the value ranges from 0 to 100. If the scan
289
- * is finished, the value is 100.
290
- */
291
- progressPercent?:
292
- number;
293
- /** Output only. The result state of the ScanRun. This field is only available after the execution state reaches "FINISHED". */
294
- resultState?:
295
- string;
296
- /** Output only. The time at which the ScanRun started. */
297
- startTime?:
298
- string;
299
- /** Output only. The number of URLs crawled during this ScanRun. If the scan is in progress, the value represents the number of URLs crawled up to now. */
300
- urlsCrawledCount?:
301
- string;
302
- /**
303
- * Output only. The number of URLs tested during this ScanRun. If the scan is in progress, the value represents the number of URLs tested up to now. The number of URLs tested is
304
- * usually larger than the number URLS crawled because typically a crawled URL is tested with multiple test payloads.
305
- */
306
- urlsTestedCount?:
307
- string;
308
- /** Output only. A list of warnings, if such are encountered during this scan run. */
309
- warningTraces?:
310
- ScanRunWarningTrace[];
311
- }
312
- interface ScanRunErrorTrace {
313
- /** Output only. Indicates the error reason code. */
314
- code?:
315
- string;
316
- /**
317
- * Output only. If the scan encounters TOO_MANY_HTTP_ERRORS, this field indicates the most common HTTP error code, if such is available. For example, if this code is 404, the scan has
318
- * encountered too many NOT_FOUND responses.
319
- */
320
- mostCommonHttpErrorCode?:
321
- number;
322
- /**
323
- * Output only. If the scan encounters SCAN_CONFIG_ISSUE error, this field has the error message encountered during scan configuration validation that is performed before each scan
324
- * run.
325
- */
326
- scanConfigError?:
327
- ScanConfigError;
328
- }
329
- interface ScanRunWarningTrace {
330
- /** Output only. Indicates the warning code. */
331
- code?:
332
- string;
333
- }
334
- interface Schedule {
335
- /** Required. The duration of time between executions in days. */
336
- intervalDurationDays?:
337
- number;
338
- /**
339
- * A timestamp indicates when the next run will be scheduled. The value is refreshed by the server after each run. If unspecified, it will default to current server time, which means
340
- * the scan will be scheduled to start immediately.
341
- */
342
- scheduleTime?:
343
- string;
344
- }
345
- // tslint:disable-next-line:no-empty-interface
346
- interface StartScanRunRequest {
347
- }
348
- // tslint:disable-next-line:no-empty-interface
349
- interface StopScanRunRequest {
350
- }
351
- interface ViolatingResource {
352
- /** The MIME type of this resource. */
353
- contentType?:
354
- string;
355
- /** URL of this violating resource. */
356
- resourceUrl?:
357
- string;
358
- }
359
- interface VulnerableHeaders {
360
- /** List of vulnerable headers. */
361
- headers?:
362
- Header[];
363
- /** List of missing headers. */
364
- missingHeaders?:
365
- Header[];
366
- }
367
- interface VulnerableParameters {
368
- /** The vulnerable parameter names. */
369
- parameterNames?:
370
- string[];
371
- }
372
- interface Xss {
373
- /** The attack vector of the payload triggering this XSS. */
374
- attackVector?:
375
- string;
376
- /** An error message generated by a javascript breakage. */
377
- errorMessage?:
378
- string;
379
- /** Stack traces leading to the point where the XSS occurred. */
380
- stackTraces?:
381
- string[];
382
- /** The reproduction url for the seeding POST request of a Stored XSS. */
383
- storedXssSeedingUrl?:
384
- string;
385
- }
386
- interface Xxe {
387
- /** Location within the request where the payload was placed. */
388
- payloadLocation?:
389
- string;
390
- /** The XML string that triggered the XXE vulnerability. Non-payload values might be redacted. */
391
- payloadValue?:
392
- string;
393
- }
394
- interface CrawledUrlsResource {
395
- /** List CrawledUrls under a given ScanRun. */
396
- list(request?: {
397
- /** V1 error format. */
398
- "$.xgafv"?:
399
- string;
400
- /** OAuth access token. */
401
- access_token?:
402
- string;
403
- /** Data format for response. */
404
- alt?:
405
- string;
406
- /** JSONP */
407
- callback?:
408
- string;
409
- /** Selector specifying which fields to include in a partial response. */
410
- fields?:
411
- string;
412
- /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
413
- key?:
414
- string;
415
- /** OAuth 2.0 token for the current user. */
416
- oauth_token?:
417
- string;
418
- /** The maximum number of CrawledUrls to return, can be limited by server. If not specified or not positive, the implementation will select a reasonable value. */
419
- pageSize?:
420
- number;
421
- /**
422
- * A token identifying a page of results to be returned. This should be a `next_page_token` value returned from a previous List request. If unspecified, the first page of results
423
- * is returned.
424
- */
425
- pageToken?:
426
- string;
427
- /** Required. The parent resource name, which should be a scan run resource name in the format 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'. */
428
- parent:
429
- string;
430
- /** Returns response with indentations and line breaks. */
431
- prettyPrint?:
432
- boolean;
433
- /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
434
- quotaUser?:
435
- string;
436
- /** Upload protocol for media (e.g. "raw", "multipart"). */
437
- upload_protocol?:
438
- string;
439
- /** Legacy upload protocol for media (e.g. "media", "multipart"). */
440
- uploadType?:
441
- string;
442
- }): Request<ListCrawledUrlsResponse>;
443
- }
444
- interface FindingsResource {
445
- /** Gets a Finding. */
446
- get(request?: {
447
- /** V1 error format. */
448
- "$.xgafv"?:
449
- string;
450
- /** OAuth access token. */
451
- access_token?:
452
- string;
453
- /** Data format for response. */
454
- alt?:
455
- string;
456
- /** JSONP */
457
- callback?:
458
- string;
459
- /** Selector specifying which fields to include in a partial response. */
460
- fields?:
461
- string;
462
- /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
463
- key?:
464
- string;
465
- /**
466
- * Required. The resource name of the Finding to be returned. The name follows the format of
467
- * 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}/findings/{findingId}'.
468
- */
469
- name:
470
- string;
471
- /** OAuth 2.0 token for the current user. */
472
- oauth_token?:
473
- string;
474
- /** Returns response with indentations and line breaks. */
475
- prettyPrint?:
476
- boolean;
477
- /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
478
- quotaUser?:
479
- string;
480
- /** Upload protocol for media (e.g. "raw", "multipart"). */
481
- upload_protocol?:
482
- string;
483
- /** Legacy upload protocol for media (e.g. "media", "multipart"). */
484
- uploadType?:
485
- string;
486
- }): Request<Finding>;
487
- /** List Findings under a given ScanRun. */
488
- list(request?: {
489
- /** V1 error format. */
490
- "$.xgafv"?:
491
- string;
492
- /** OAuth access token. */
493
- access_token?:
494
- string;
495
- /** Data format for response. */
496
- alt?:
497
- string;
498
- /** JSONP */
499
- callback?:
500
- string;
501
- /** Selector specifying which fields to include in a partial response. */
502
- fields?:
503
- string;
504
- /** The filter expression. The expression must be in the format: . Supported field: 'finding_type'. Supported operator: '='. */
505
- filter?:
506
- string;
507
- /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
508
- key?:
509
- string;
510
- /** OAuth 2.0 token for the current user. */
511
- oauth_token?:
512
- string;
513
- /** The maximum number of Findings to return, can be limited by server. If not specified or not positive, the implementation will select a reasonable value. */
514
- pageSize?:
515
- number;
516
- /**
517
- * A token identifying a page of results to be returned. This should be a `next_page_token` value returned from a previous List request. If unspecified, the first page of results
518
- * is returned.
519
- */
520
- pageToken?:
521
- string;
522
- /** Required. The parent resource name, which should be a scan run resource name in the format 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'. */
523
- parent:
524
- string;
525
- /** Returns response with indentations and line breaks. */
526
- prettyPrint?:
527
- boolean;
528
- /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
529
- quotaUser?:
530
- string;
531
- /** Upload protocol for media (e.g. "raw", "multipart"). */
532
- upload_protocol?:
533
- string;
534
- /** Legacy upload protocol for media (e.g. "media", "multipart"). */
535
- uploadType?:
536
- string;
537
- }): Request<ListFindingsResponse>;
538
- }
539
- interface FindingTypeStatsResource {
540
- /** List all FindingTypeStats under a given ScanRun. */
541
- list(request?: {
542
- /** V1 error format. */
543
- "$.xgafv"?:
544
- string;
545
- /** OAuth access token. */
546
- access_token?:
547
- string;
548
- /** Data format for response. */
549
- alt?:
550
- string;
551
- /** JSONP */
552
- callback?:
553
- string;
554
- /** Selector specifying which fields to include in a partial response. */
555
- fields?:
556
- string;
557
- /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
558
- key?:
559
- string;
560
- /** OAuth 2.0 token for the current user. */
561
- oauth_token?:
562
- string;
563
- /** Required. The parent resource name, which should be a scan run resource name in the format 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'. */
564
- parent:
565
- string;
566
- /** Returns response with indentations and line breaks. */
567
- prettyPrint?:
568
- boolean;
569
- /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
570
- quotaUser?:
571
- string;
572
- /** Upload protocol for media (e.g. "raw", "multipart"). */
573
- upload_protocol?:
574
- string;
575
- /** Legacy upload protocol for media (e.g. "media", "multipart"). */
576
- uploadType?:
577
- string;
578
- }): Request<ListFindingTypeStatsResponse>;
579
- }
580
- interface ScanRunsResource {
581
- /** Gets a ScanRun. */
582
- get(request?: {
583
- /** V1 error format. */
584
- "$.xgafv"?:
585
- string;
586
- /** OAuth access token. */
587
- access_token?:
588
- string;
589
- /** Data format for response. */
590
- alt?:
591
- string;
592
- /** JSONP */
593
- callback?:
594
- string;
595
- /** Selector specifying which fields to include in a partial response. */
596
- fields?:
597
- string;
598
- /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
599
- key?:
600
- string;
601
- /** Required. The resource name of the ScanRun to be returned. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'. */
602
- name:
603
- string;
604
- /** OAuth 2.0 token for the current user. */
605
- oauth_token?:
606
- string;
607
- /** Returns response with indentations and line breaks. */
608
- prettyPrint?:
609
- boolean;
610
- /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
611
- quotaUser?:
612
- string;
613
- /** Upload protocol for media (e.g. "raw", "multipart"). */
614
- upload_protocol?:
615
- string;
616
- /** Legacy upload protocol for media (e.g. "media", "multipart"). */
617
- uploadType?:
618
- string;
619
- }): Request<ScanRun>;
620
- /** Lists ScanRuns under a given ScanConfig, in descending order of ScanRun stop time. */
621
- list(request?: {
622
- /** V1 error format. */
623
- "$.xgafv"?:
624
- string;
625
- /** OAuth access token. */
626
- access_token?:
627
- string;
628
- /** Data format for response. */
629
- alt?:
630
- string;
631
- /** JSONP */
632
- callback?:
633
- string;
634
- /** Selector specifying which fields to include in a partial response. */
635
- fields?:
636
- string;
637
- /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
638
- key?:
639
- string;
640
- /** OAuth 2.0 token for the current user. */
641
- oauth_token?:
642
- string;
643
- /** The maximum number of ScanRuns to return, can be limited by server. If not specified or not positive, the implementation will select a reasonable value. */
644
- pageSize?:
645
- number;
646
- /**
647
- * A token identifying a page of results to be returned. This should be a `next_page_token` value returned from a previous List request. If unspecified, the first page of results
648
- * is returned.
649
- */
650
- pageToken?:
651
- string;
652
- /** Required. The parent resource name, which should be a scan resource name in the format 'projects/{projectId}/scanConfigs/{scanConfigId}'. */
653
- parent:
654
- string;
655
- /** Returns response with indentations and line breaks. */
656
- prettyPrint?:
657
- boolean;
658
- /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
659
- quotaUser?:
660
- string;
661
- /** Upload protocol for media (e.g. "raw", "multipart"). */
662
- upload_protocol?:
663
- string;
664
- /** Legacy upload protocol for media (e.g. "media", "multipart"). */
665
- uploadType?:
666
- string;
667
- }): Request<ListScanRunsResponse>;
668
- /** Stops a ScanRun. The stopped ScanRun is returned. */
669
- stop(request: {
670
- /** V1 error format. */
671
- "$.xgafv"?:
672
- string;
673
- /** OAuth access token. */
674
- access_token?:
675
- string;
676
- /** Data format for response. */
677
- alt?:
678
- string;
679
- /** JSONP */
680
- callback?:
681
- string;
682
- /** Selector specifying which fields to include in a partial response. */
683
- fields?:
684
- string;
685
- /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
686
- key?:
687
- string;
688
- /** Required. The resource name of the ScanRun to be stopped. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'. */
689
- name:
690
- string;
691
- /** OAuth 2.0 token for the current user. */
692
- oauth_token?:
693
- string;
694
- /** Returns response with indentations and line breaks. */
695
- prettyPrint?:
696
- boolean;
697
- /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
698
- quotaUser?:
699
- string;
700
- /** Upload protocol for media (e.g. "raw", "multipart"). */
701
- upload_protocol?:
702
- string;
703
- /** Legacy upload protocol for media (e.g. "media", "multipart"). */
704
- uploadType?:
705
- string;
706
- /** Request body */
707
- resource:
708
- StopScanRunRequest;
709
- }): Request<ScanRun>;
710
- stop(request: {
711
- /** V1 error format. */
712
- "$.xgafv"?:
713
- string;
714
- /** OAuth access token. */
715
- access_token?:
716
- string;
717
- /** Data format for response. */
718
- alt?:
719
- string;
720
- /** JSONP */
721
- callback?:
722
- string;
723
- /** Selector specifying which fields to include in a partial response. */
724
- fields?:
725
- string;
726
- /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
727
- key?:
728
- string;
729
- /** Required. The resource name of the ScanRun to be stopped. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'. */
730
- name:
731
- string;
732
- /** OAuth 2.0 token for the current user. */
733
- oauth_token?:
734
- string;
735
- /** Returns response with indentations and line breaks. */
736
- prettyPrint?:
737
- boolean;
738
- /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
739
- quotaUser?:
740
- string;
741
- /** Upload protocol for media (e.g. "raw", "multipart"). */
742
- upload_protocol?:
743
- string;
744
- /** Legacy upload protocol for media (e.g. "media", "multipart"). */
745
- uploadType?:
746
- string;
747
- },
748
- body: StopScanRunRequest): Request<ScanRun>;
749
- crawledUrls:
750
- CrawledUrlsResource;
751
- findings:
752
- FindingsResource;
753
- findingTypeStats:
754
- FindingTypeStatsResource;
755
- }
756
- interface ScanConfigsResource {
757
- /** Creates a new ScanConfig. */
758
- create(request: {
759
- /** V1 error format. */
760
- "$.xgafv"?:
761
- string;
762
- /** OAuth access token. */
763
- access_token?:
764
- string;
765
- /** Data format for response. */
766
- alt?:
767
- string;
768
- /** JSONP */
769
- callback?:
770
- string;
771
- /** Selector specifying which fields to include in a partial response. */
772
- fields?:
773
- string;
774
- /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
775
- key?:
776
- string;
777
- /** OAuth 2.0 token for the current user. */
778
- oauth_token?:
779
- string;
780
- /** Required. The parent resource name where the scan is created, which should be a project resource name in the format 'projects/{projectId}'. */
781
- parent:
782
- string;
783
- /** Returns response with indentations and line breaks. */
784
- prettyPrint?:
785
- boolean;
786
- /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
787
- quotaUser?:
788
- string;
789
- /** Upload protocol for media (e.g. "raw", "multipart"). */
790
- upload_protocol?:
791
- string;
792
- /** Legacy upload protocol for media (e.g. "media", "multipart"). */
793
- uploadType?:
794
- string;
795
- /** Request body */
796
- resource:
797
- ScanConfig;
798
- }): Request<ScanConfig>;
799
- create(request: {
800
- /** V1 error format. */
801
- "$.xgafv"?:
802
- string;
803
- /** OAuth access token. */
804
- access_token?:
805
- string;
806
- /** Data format for response. */
807
- alt?:
808
- string;
809
- /** JSONP */
810
- callback?:
811
- string;
812
- /** Selector specifying which fields to include in a partial response. */
813
- fields?:
814
- string;
815
- /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
816
- key?:
817
- string;
818
- /** OAuth 2.0 token for the current user. */
819
- oauth_token?:
820
- string;
821
- /** Required. The parent resource name where the scan is created, which should be a project resource name in the format 'projects/{projectId}'. */
822
- parent:
823
- string;
824
- /** Returns response with indentations and line breaks. */
825
- prettyPrint?:
826
- boolean;
827
- /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
828
- quotaUser?:
829
- string;
830
- /** Upload protocol for media (e.g. "raw", "multipart"). */
831
- upload_protocol?:
832
- string;
833
- /** Legacy upload protocol for media (e.g. "media", "multipart"). */
834
- uploadType?:
835
- string;
836
- },
837
- body: ScanConfig): Request<ScanConfig>;
838
- /** Deletes an existing ScanConfig and its child resources. */
839
- delete(request?: {
840
- /** V1 error format. */
841
- "$.xgafv"?:
842
- string;
843
- /** OAuth access token. */
844
- access_token?:
845
- string;
846
- /** Data format for response. */
847
- alt?:
848
- string;
849
- /** JSONP */
850
- callback?:
851
- string;
852
- /** Selector specifying which fields to include in a partial response. */
853
- fields?:
854
- string;
855
- /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
856
- key?:
857
- string;
858
- /** Required. The resource name of the ScanConfig to be deleted. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}'. */
859
- name:
860
- string;
861
- /** OAuth 2.0 token for the current user. */
862
- oauth_token?:
863
- string;
864
- /** Returns response with indentations and line breaks. */
865
- prettyPrint?:
866
- boolean;
867
- /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
868
- quotaUser?:
869
- string;
870
- /** Upload protocol for media (e.g. "raw", "multipart"). */
871
- upload_protocol?:
872
- string;
873
- /** Legacy upload protocol for media (e.g. "media", "multipart"). */
874
- uploadType?:
875
- string;
876
- }): Request<{}>;
877
- /** Gets a ScanConfig. */
878
- get(request?: {
879
- /** V1 error format. */
880
- "$.xgafv"?:
881
- string;
882
- /** OAuth access token. */
883
- access_token?:
884
- string;
885
- /** Data format for response. */
886
- alt?:
887
- string;
888
- /** JSONP */
889
- callback?:
890
- string;
891
- /** Selector specifying which fields to include in a partial response. */
892
- fields?:
893
- string;
894
- /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
895
- key?:
896
- string;
897
- /** Required. The resource name of the ScanConfig to be returned. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}'. */
898
- name:
899
- string;
900
- /** OAuth 2.0 token for the current user. */
901
- oauth_token?:
902
- string;
903
- /** Returns response with indentations and line breaks. */
904
- prettyPrint?:
905
- boolean;
906
- /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
907
- quotaUser?:
908
- string;
909
- /** Upload protocol for media (e.g. "raw", "multipart"). */
910
- upload_protocol?:
911
- string;
912
- /** Legacy upload protocol for media (e.g. "media", "multipart"). */
913
- uploadType?:
914
- string;
915
- }): Request<ScanConfig>;
916
- /** Lists ScanConfigs under a given project. */
917
- list(request?: {
918
- /** V1 error format. */
919
- "$.xgafv"?:
920
- string;
921
- /** OAuth access token. */
922
- access_token?:
923
- string;
924
- /** Data format for response. */
925
- alt?:
926
- string;
927
- /** JSONP */
928
- callback?:
929
- string;
930
- /** Selector specifying which fields to include in a partial response. */
931
- fields?:
932
- string;
933
- /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
934
- key?:
935
- string;
936
- /** OAuth 2.0 token for the current user. */
937
- oauth_token?:
938
- string;
939
- /** The maximum number of ScanConfigs to return, can be limited by server. If not specified or not positive, the implementation will select a reasonable value. */
940
- pageSize?:
941
- number;
942
- /**
943
- * A token identifying a page of results to be returned. This should be a `next_page_token` value returned from a previous List request. If unspecified, the first page of results
944
- * is returned.
945
- */
946
- pageToken?:
947
- string;
948
- /** Required. The parent resource name, which should be a project resource name in the format 'projects/{projectId}'. */
949
- parent:
950
- string;
951
- /** Returns response with indentations and line breaks. */
952
- prettyPrint?:
953
- boolean;
954
- /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
955
- quotaUser?:
956
- string;
957
- /** Upload protocol for media (e.g. "raw", "multipart"). */
958
- upload_protocol?:
959
- string;
960
- /** Legacy upload protocol for media (e.g. "media", "multipart"). */
961
- uploadType?:
962
- string;
963
- }): Request<ListScanConfigsResponse>;
964
- /** Updates a ScanConfig. This method support partial update of a ScanConfig. */
965
- patch(request: {
966
- /** V1 error format. */
967
- "$.xgafv"?:
968
- string;
969
- /** OAuth access token. */
970
- access_token?:
971
- string;
972
- /** Data format for response. */
973
- alt?:
974
- string;
975
- /** JSONP */
976
- callback?:
977
- string;
978
- /** Selector specifying which fields to include in a partial response. */
979
- fields?:
980
- string;
981
- /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
982
- key?:
983
- string;
984
- /** The resource name of the ScanConfig. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}'. The ScanConfig IDs are generated by the system. */
985
- name:
986
- string;
987
- /** OAuth 2.0 token for the current user. */
988
- oauth_token?:
989
- string;
990
- /** Returns response with indentations and line breaks. */
991
- prettyPrint?:
992
- boolean;
993
- /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
994
- quotaUser?:
995
- string;
996
- /** Required. The update mask applies to the resource. For the `FieldMask` definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask */
997
- updateMask?:
998
- string;
999
- /** Upload protocol for media (e.g. "raw", "multipart"). */
1000
- upload_protocol?:
1001
- string;
1002
- /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1003
- uploadType?:
1004
- string;
1005
- /** Request body */
1006
- resource:
1007
- ScanConfig;
1008
- }): Request<ScanConfig>;
1009
- patch(request: {
1010
- /** V1 error format. */
1011
- "$.xgafv"?:
1012
- string;
1013
- /** OAuth access token. */
1014
- access_token?:
1015
- string;
1016
- /** Data format for response. */
1017
- alt?:
1018
- string;
1019
- /** JSONP */
1020
- callback?:
1021
- string;
1022
- /** Selector specifying which fields to include in a partial response. */
1023
- fields?:
1024
- string;
1025
- /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1026
- key?:
1027
- string;
1028
- /** The resource name of the ScanConfig. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}'. The ScanConfig IDs are generated by the system. */
1029
- name:
1030
- string;
1031
- /** OAuth 2.0 token for the current user. */
1032
- oauth_token?:
1033
- string;
1034
- /** Returns response with indentations and line breaks. */
1035
- prettyPrint?:
1036
- boolean;
1037
- /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1038
- quotaUser?:
1039
- string;
1040
- /** Required. The update mask applies to the resource. For the `FieldMask` definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask */
1041
- updateMask?:
1042
- string;
1043
- /** Upload protocol for media (e.g. "raw", "multipart"). */
1044
- upload_protocol?:
1045
- string;
1046
- /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1047
- uploadType?:
1048
- string;
1049
- },
1050
- body: ScanConfig): Request<ScanConfig>;
1051
- /** Start a ScanRun according to the given ScanConfig. */
1052
- start(request: {
1053
- /** V1 error format. */
1054
- "$.xgafv"?:
1055
- string;
1056
- /** OAuth access token. */
1057
- access_token?:
1058
- string;
1059
- /** Data format for response. */
1060
- alt?:
1061
- string;
1062
- /** JSONP */
1063
- callback?:
1064
- string;
1065
- /** Selector specifying which fields to include in a partial response. */
1066
- fields?:
1067
- string;
1068
- /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1069
- key?:
1070
- string;
1071
- /** Required. The resource name of the ScanConfig to be used. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}'. */
1072
- name:
1073
- string;
1074
- /** OAuth 2.0 token for the current user. */
1075
- oauth_token?:
1076
- string;
1077
- /** Returns response with indentations and line breaks. */
1078
- prettyPrint?:
1079
- boolean;
1080
- /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1081
- quotaUser?:
1082
- string;
1083
- /** Upload protocol for media (e.g. "raw", "multipart"). */
1084
- upload_protocol?:
1085
- string;
1086
- /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1087
- uploadType?:
1088
- string;
1089
- /** Request body */
1090
- resource:
1091
- StartScanRunRequest;
1092
- }): Request<ScanRun>;
1093
- start(request: {
1094
- /** V1 error format. */
1095
- "$.xgafv"?:
1096
- string;
1097
- /** OAuth access token. */
1098
- access_token?:
1099
- string;
1100
- /** Data format for response. */
1101
- alt?:
1102
- string;
1103
- /** JSONP */
1104
- callback?:
1105
- string;
1106
- /** Selector specifying which fields to include in a partial response. */
1107
- fields?:
1108
- string;
1109
- /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1110
- key?:
1111
- string;
1112
- /** Required. The resource name of the ScanConfig to be used. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}'. */
1113
- name:
1114
- string;
1115
- /** OAuth 2.0 token for the current user. */
1116
- oauth_token?:
1117
- string;
1118
- /** Returns response with indentations and line breaks. */
1119
- prettyPrint?:
1120
- boolean;
1121
- /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1122
- quotaUser?:
1123
- string;
1124
- /** Upload protocol for media (e.g. "raw", "multipart"). */
1125
- upload_protocol?:
1126
- string;
1127
- /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1128
- uploadType?:
1129
- string;
1130
- },
1131
- body: StartScanRunRequest): Request<ScanRun>;
1132
- scanRuns:
1133
- ScanRunsResource;
1134
- }
1135
- interface ProjectsResource {
1136
- scanConfigs:
1137
- ScanConfigsResource;
1138
- }
1139
-
1140
- const projects: ProjectsResource;
30
+ namespace websecurityscanner {
31
+ interface Authentication {
32
+ /** Authentication using a custom account. */
33
+ customAccount?: CustomAccount;
34
+ /** Authentication using a Google account. */
35
+ googleAccount?: GoogleAccount;
36
+ /** Authentication using Identity-Aware-Proxy (IAP). */
37
+ iapCredential?: IapCredential;
38
+ }
39
+ interface CrawledUrl {
40
+ /** Output only. The body of the request that was used to visit the URL. */
41
+ body?: string;
42
+ /** Output only. The http method of the request that was used to visit the URL, in uppercase. */
43
+ httpMethod?: string;
44
+ /** Output only. The URL that was crawled. */
45
+ url?: string;
46
+ }
47
+ interface CustomAccount {
48
+ /** Required. The login form URL of the website. */
49
+ loginUrl?: string;
50
+ /** Required. Input only. The password of the custom account. The credential is stored encrypted and not returned in any response nor included in audit logs. */
51
+ password?: string;
52
+ /** Required. The user name of the custom account. */
53
+ username?: string;
54
+ }
55
+ interface Empty {}
56
+ interface Finding {
57
+ /** Output only. The body of the request that triggered the vulnerability. */
58
+ body?: string;
59
+ /** Output only. The description of the vulnerability. */
60
+ description?: string;
61
+ /** Output only. The URL where the browser lands when the vulnerability is detected. */
62
+ finalUrl?: string;
63
+ /** Output only. The type of the Finding. Detailed and up-to-date information on findings can be found here: https://cloud.google.com/security-command-center/docs/how-to-remediate-web-security-scanner-findings */
64
+ findingType?: string;
65
+ /** Output only. An addon containing information reported for a vulnerability with an HTML form, if any. */
66
+ form?: Form;
67
+ /** Output only. If the vulnerability was originated from nested IFrame, the immediate parent IFrame is reported. */
68
+ frameUrl?: string;
69
+ /** Output only. The URL produced by the server-side fuzzer and used in the request that triggered the vulnerability. */
70
+ fuzzedUrl?: string;
71
+ /** Output only. The http method of the request that triggered the vulnerability, in uppercase. */
72
+ httpMethod?: string;
73
+ /** Output only. The resource name of the Finding. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}/scanruns/{scanRunId}/findings/{findingId}'. The finding IDs are generated by the system. */
74
+ name?: string;
75
+ /** Output only. An addon containing information about outdated libraries. */
76
+ outdatedLibrary?: OutdatedLibrary;
77
+ /** Output only. The URL containing human-readable payload that user can leverage to reproduce the vulnerability. */
78
+ reproductionUrl?: string;
79
+ /** Output only. The severity level of the reported vulnerability. */
80
+ severity?: string;
81
+ /** Output only. The tracking ID uniquely identifies a vulnerability instance across multiple ScanRuns. */
82
+ trackingId?: string;
83
+ /** Output only. An addon containing detailed information regarding any resource causing the vulnerability such as JavaScript sources, image, audio files, etc. */
84
+ violatingResource?: ViolatingResource;
85
+ /** Output only. An addon containing information about vulnerable or missing HTTP headers. */
86
+ vulnerableHeaders?: VulnerableHeaders;
87
+ /** Output only. An addon containing information about request parameters which were found to be vulnerable. */
88
+ vulnerableParameters?: VulnerableParameters;
89
+ /** Output only. An addon containing information reported for an XSS, if any. */
90
+ xss?: Xss;
91
+ /** Output only. An addon containing information reported for an XXE, if any. */
92
+ xxe?: Xxe;
93
+ }
94
+ interface FindingTypeStats {
95
+ /** Output only. The count of findings belonging to this finding type. */
96
+ findingCount?: number;
97
+ /** Output only. The finding type associated with the stats. */
98
+ findingType?: string;
99
+ }
100
+ interface Form {
101
+ /** ! The URI where to send the form when it's submitted. */
102
+ actionUri?: string;
103
+ /** ! The names of form fields related to the vulnerability. */
104
+ fields?: string[];
105
+ }
106
+ interface GoogleAccount {
107
+ /** Required. Input only. The password of the Google account. The credential is stored encrypted and not returned in any response nor included in audit logs. */
108
+ password?: string;
109
+ /** Required. The user name of the Google account. */
110
+ username?: string;
111
+ }
112
+ interface Header {
113
+ /** Header name. */
114
+ name?: string;
115
+ /** Header value. */
116
+ value?: string;
117
+ }
118
+ interface IapCredential {
119
+ /** Authentication configuration when Web-Security-Scanner service account is added in Identity-Aware-Proxy (IAP) access policies. */
120
+ iapTestServiceAccountInfo?: IapTestServiceAccountInfo;
121
+ }
122
+ interface IapTestServiceAccountInfo {
123
+ /** Required. Describes OAuth2 client id of resources protected by Identity-Aware-Proxy (IAP). */
124
+ targetAudienceClientId?: string;
125
+ }
126
+ interface ListCrawledUrlsResponse {
127
+ /** The list of CrawledUrls returned. */
128
+ crawledUrls?: CrawledUrl[];
129
+ /** Token to retrieve the next page of results, or empty if there are no more results in the list. */
130
+ nextPageToken?: string;
131
+ }
132
+ interface ListFindingsResponse {
133
+ /** The list of Findings returned. */
134
+ findings?: Finding[];
135
+ /** Token to retrieve the next page of results, or empty if there are no more results in the list. */
136
+ nextPageToken?: string;
137
+ }
138
+ interface ListFindingTypeStatsResponse {
139
+ /** The list of FindingTypeStats returned. */
140
+ findingTypeStats?: FindingTypeStats[];
141
+ }
142
+ interface ListScanConfigsResponse {
143
+ /** Token to retrieve the next page of results, or empty if there are no more results in the list. */
144
+ nextPageToken?: string;
145
+ /** The list of ScanConfigs returned. */
146
+ scanConfigs?: ScanConfig[];
147
+ }
148
+ interface ListScanRunsResponse {
149
+ /** Token to retrieve the next page of results, or empty if there are no more results in the list. */
150
+ nextPageToken?: string;
151
+ /** The list of ScanRuns returned. */
152
+ scanRuns?: ScanRun[];
153
+ }
154
+ interface OutdatedLibrary {
155
+ /** URLs to learn more information about the vulnerabilities in the library. */
156
+ learnMoreUrls?: string[];
157
+ /** The name of the outdated library. */
158
+ libraryName?: string;
159
+ /** The version number. */
160
+ version?: string;
161
+ }
162
+ interface ScanConfig {
163
+ /** The authentication configuration. If specified, service will use the authentication configuration during scanning. */
164
+ authentication?: Authentication;
165
+ /** The excluded URL patterns as described in https://cloud.google.com/security-command-center/docs/how-to-use-web-security-scanner#excluding_urls */
166
+ blacklistPatterns?: string[];
167
+ /** Required. The user provided display name of the ScanConfig. */
168
+ displayName?: string;
169
+ /** Controls export of scan configurations and results to Security Command Center. */
170
+ exportToSecurityCommandCenter?: string;
171
+ /** Whether to keep scanning even if most requests return HTTP error codes. */
172
+ ignoreHttpStatusErrors?: boolean;
173
+ /** Whether the scan config is managed by Web Security Scanner, output only. */
174
+ managedScan?: boolean;
175
+ /** The maximum QPS during scanning. A valid value ranges from 5 to 20 inclusively. If the field is unspecified or its value is set 0, server will default to 15. Other values outside of [5, 20] range will be rejected with INVALID_ARGUMENT error. */
176
+ maxQps?: number;
177
+ /** The resource name of the ScanConfig. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}'. The ScanConfig IDs are generated by the system. */
178
+ name?: string;
179
+ /** The risk level selected for the scan */
180
+ riskLevel?: string;
181
+ /** The schedule of the ScanConfig. */
182
+ schedule?: Schedule;
183
+ /** Required. The starting URLs from which the scanner finds site pages. */
184
+ startingUrls?: string[];
185
+ /** Whether the scan configuration has enabled static IP address scan feature. If enabled, the scanner will access applications from static IP addresses. */
186
+ staticIpScan?: boolean;
187
+ /** The user agent used during scanning. */
188
+ userAgent?: string;
1141
189
  }
190
+ interface ScanConfigError {
191
+ /** Output only. Indicates the reason code for a configuration failure. */
192
+ code?: string;
193
+ /** Output only. Indicates the full name of the ScanConfig field that triggers this error, for example "scan_config.max_qps". This field is provided for troubleshooting purposes only and its actual value can change in the future. */
194
+ fieldName?: string;
195
+ }
196
+ interface ScanRun {
197
+ /** Output only. The time at which the ScanRun reached termination state - that the ScanRun is either finished or stopped by user. */
198
+ endTime?: string;
199
+ /** Output only. If result_state is an ERROR, this field provides the primary reason for scan's termination and more details, if such are available. */
200
+ errorTrace?: ScanRunErrorTrace;
201
+ /** Output only. The execution state of the ScanRun. */
202
+ executionState?: string;
203
+ /** Output only. Whether the scan run has found any vulnerabilities. */
204
+ hasVulnerabilities?: boolean;
205
+ /** Output only. The resource name of the ScanRun. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'. The ScanRun IDs are generated by the system. */
206
+ name?: string;
207
+ /** Output only. The percentage of total completion ranging from 0 to 100. If the scan is in queue, the value is 0. If the scan is running, the value ranges from 0 to 100. If the scan is finished, the value is 100. */
208
+ progressPercent?: number;
209
+ /** Output only. The result state of the ScanRun. This field is only available after the execution state reaches "FINISHED". */
210
+ resultState?: string;
211
+ /** Output only. The time at which the ScanRun started. */
212
+ startTime?: string;
213
+ /** Output only. The number of URLs crawled during this ScanRun. If the scan is in progress, the value represents the number of URLs crawled up to now. */
214
+ urlsCrawledCount?: string;
215
+ /** Output only. The number of URLs tested during this ScanRun. If the scan is in progress, the value represents the number of URLs tested up to now. The number of URLs tested is usually larger than the number URLS crawled because typically a crawled URL is tested with multiple test payloads. */
216
+ urlsTestedCount?: string;
217
+ /** Output only. A list of warnings, if such are encountered during this scan run. */
218
+ warningTraces?: ScanRunWarningTrace[];
219
+ }
220
+ interface ScanRunErrorTrace {
221
+ /** Output only. Indicates the error reason code. */
222
+ code?: string;
223
+ /** Output only. If the scan encounters TOO_MANY_HTTP_ERRORS, this field indicates the most common HTTP error code, if such is available. For example, if this code is 404, the scan has encountered too many NOT_FOUND responses. */
224
+ mostCommonHttpErrorCode?: number;
225
+ /** Output only. If the scan encounters SCAN_CONFIG_ISSUE error, this field has the error message encountered during scan configuration validation that is performed before each scan run. */
226
+ scanConfigError?: ScanConfigError;
227
+ }
228
+ interface ScanRunWarningTrace {
229
+ /** Output only. Indicates the warning code. */
230
+ code?: string;
231
+ }
232
+ interface Schedule {
233
+ /** Required. The duration of time between executions in days. */
234
+ intervalDurationDays?: number;
235
+ /** A timestamp indicates when the next run will be scheduled. The value is refreshed by the server after each run. If unspecified, it will default to current server time, which means the scan will be scheduled to start immediately. */
236
+ scheduleTime?: string;
237
+ }
238
+ interface StartScanRunRequest {}
239
+ interface StopScanRunRequest {}
240
+ interface ViolatingResource {
241
+ /** The MIME type of this resource. */
242
+ contentType?: string;
243
+ /** URL of this violating resource. */
244
+ resourceUrl?: string;
245
+ }
246
+ interface VulnerableHeaders {
247
+ /** List of vulnerable headers. */
248
+ headers?: Header[];
249
+ /** List of missing headers. */
250
+ missingHeaders?: Header[];
251
+ }
252
+ interface VulnerableParameters {
253
+ /** The vulnerable parameter names. */
254
+ parameterNames?: string[];
255
+ }
256
+ interface Xss {
257
+ /** The attack vector of the payload triggering this XSS. */
258
+ attackVector?: string;
259
+ /** An error message generated by a javascript breakage. */
260
+ errorMessage?: string;
261
+ /** Stack traces leading to the point where the XSS occurred. */
262
+ stackTraces?: string[];
263
+ /** The reproduction url for the seeding POST request of a Stored XSS. */
264
+ storedXssSeedingUrl?: string;
265
+ }
266
+ interface Xxe {
267
+ /** Location within the request where the payload was placed. */
268
+ payloadLocation?: string;
269
+ /** The XML string that triggered the XXE vulnerability. Non-payload values might be redacted. */
270
+ payloadValue?: string;
271
+ }
272
+ interface CrawledUrlsResource {
273
+ /** List CrawledUrls under a given ScanRun. */
274
+ list(request?: {
275
+ /** V1 error format. */
276
+ '$.xgafv'?: string;
277
+ /** OAuth access token. */
278
+ access_token?: string;
279
+ /** Data format for response. */
280
+ alt?: string;
281
+ /** JSONP */
282
+ callback?: string;
283
+ /** Selector specifying which fields to include in a partial response. */
284
+ fields?: string;
285
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
286
+ key?: string;
287
+ /** OAuth 2.0 token for the current user. */
288
+ oauth_token?: string;
289
+ /** The maximum number of CrawledUrls to return, can be limited by server. If not specified or not positive, the implementation will select a reasonable value. */
290
+ pageSize?: number;
291
+ /** A token identifying a page of results to be returned. This should be a `next_page_token` value returned from a previous List request. If unspecified, the first page of results is returned. */
292
+ pageToken?: string;
293
+ /** Required. The parent resource name, which should be a scan run resource name in the format 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'. */
294
+ parent: string;
295
+ /** Returns response with indentations and line breaks. */
296
+ prettyPrint?: boolean;
297
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
298
+ quotaUser?: string;
299
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
300
+ upload_protocol?: string;
301
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
302
+ uploadType?: string;
303
+ }): Request<ListCrawledUrlsResponse>;
304
+ }
305
+ interface FindingsResource {
306
+ /** Gets a Finding. */
307
+ get(request?: {
308
+ /** V1 error format. */
309
+ '$.xgafv'?: string;
310
+ /** OAuth access token. */
311
+ access_token?: string;
312
+ /** Data format for response. */
313
+ alt?: string;
314
+ /** JSONP */
315
+ callback?: string;
316
+ /** Selector specifying which fields to include in a partial response. */
317
+ fields?: string;
318
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
319
+ key?: string;
320
+ /** Required. The resource name of the Finding to be returned. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}/findings/{findingId}'. */
321
+ name: string;
322
+ /** OAuth 2.0 token for the current user. */
323
+ oauth_token?: string;
324
+ /** Returns response with indentations and line breaks. */
325
+ prettyPrint?: boolean;
326
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
327
+ quotaUser?: string;
328
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
329
+ upload_protocol?: string;
330
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
331
+ uploadType?: string;
332
+ }): Request<Finding>;
333
+ /** List Findings under a given ScanRun. */
334
+ list(request?: {
335
+ /** V1 error format. */
336
+ '$.xgafv'?: string;
337
+ /** OAuth access token. */
338
+ access_token?: string;
339
+ /** Data format for response. */
340
+ alt?: string;
341
+ /** JSONP */
342
+ callback?: string;
343
+ /** Selector specifying which fields to include in a partial response. */
344
+ fields?: string;
345
+ /** The filter expression. The expression must be in the format: . Supported field: 'finding_type'. Supported operator: '='. */
346
+ filter?: string;
347
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
348
+ key?: string;
349
+ /** OAuth 2.0 token for the current user. */
350
+ oauth_token?: string;
351
+ /** The maximum number of Findings to return, can be limited by server. If not specified or not positive, the implementation will select a reasonable value. */
352
+ pageSize?: number;
353
+ /** A token identifying a page of results to be returned. This should be a `next_page_token` value returned from a previous List request. If unspecified, the first page of results is returned. */
354
+ pageToken?: string;
355
+ /** Required. The parent resource name, which should be a scan run resource name in the format 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'. */
356
+ parent: string;
357
+ /** Returns response with indentations and line breaks. */
358
+ prettyPrint?: boolean;
359
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
360
+ quotaUser?: string;
361
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
362
+ upload_protocol?: string;
363
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
364
+ uploadType?: string;
365
+ }): Request<ListFindingsResponse>;
366
+ }
367
+ interface FindingTypeStatsResource {
368
+ /** List all FindingTypeStats under a given ScanRun. */
369
+ list(request?: {
370
+ /** V1 error format. */
371
+ '$.xgafv'?: string;
372
+ /** OAuth access token. */
373
+ access_token?: string;
374
+ /** Data format for response. */
375
+ alt?: string;
376
+ /** JSONP */
377
+ callback?: string;
378
+ /** Selector specifying which fields to include in a partial response. */
379
+ fields?: string;
380
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
381
+ key?: string;
382
+ /** OAuth 2.0 token for the current user. */
383
+ oauth_token?: string;
384
+ /** Required. The parent resource name, which should be a scan run resource name in the format 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'. */
385
+ parent: string;
386
+ /** Returns response with indentations and line breaks. */
387
+ prettyPrint?: boolean;
388
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
389
+ quotaUser?: string;
390
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
391
+ upload_protocol?: string;
392
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
393
+ uploadType?: string;
394
+ }): Request<ListFindingTypeStatsResponse>;
395
+ }
396
+ interface ScanRunsResource {
397
+ /** Gets a ScanRun. */
398
+ get(request?: {
399
+ /** V1 error format. */
400
+ '$.xgafv'?: string;
401
+ /** OAuth access token. */
402
+ access_token?: string;
403
+ /** Data format for response. */
404
+ alt?: string;
405
+ /** JSONP */
406
+ callback?: string;
407
+ /** Selector specifying which fields to include in a partial response. */
408
+ fields?: string;
409
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
410
+ key?: string;
411
+ /** Required. The resource name of the ScanRun to be returned. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'. */
412
+ name: string;
413
+ /** OAuth 2.0 token for the current user. */
414
+ oauth_token?: string;
415
+ /** Returns response with indentations and line breaks. */
416
+ prettyPrint?: boolean;
417
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
418
+ quotaUser?: string;
419
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
420
+ upload_protocol?: string;
421
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
422
+ uploadType?: string;
423
+ }): Request<ScanRun>;
424
+ /** Lists ScanRuns under a given ScanConfig, in descending order of ScanRun stop time. */
425
+ list(request?: {
426
+ /** V1 error format. */
427
+ '$.xgafv'?: string;
428
+ /** OAuth access token. */
429
+ access_token?: string;
430
+ /** Data format for response. */
431
+ alt?: string;
432
+ /** JSONP */
433
+ callback?: string;
434
+ /** Selector specifying which fields to include in a partial response. */
435
+ fields?: string;
436
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
437
+ key?: string;
438
+ /** OAuth 2.0 token for the current user. */
439
+ oauth_token?: string;
440
+ /** The maximum number of ScanRuns to return, can be limited by server. If not specified or not positive, the implementation will select a reasonable value. */
441
+ pageSize?: number;
442
+ /** A token identifying a page of results to be returned. This should be a `next_page_token` value returned from a previous List request. If unspecified, the first page of results is returned. */
443
+ pageToken?: string;
444
+ /** Required. The parent resource name, which should be a scan resource name in the format 'projects/{projectId}/scanConfigs/{scanConfigId}'. */
445
+ parent: string;
446
+ /** Returns response with indentations and line breaks. */
447
+ prettyPrint?: boolean;
448
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
449
+ quotaUser?: string;
450
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
451
+ upload_protocol?: string;
452
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
453
+ uploadType?: string;
454
+ }): Request<ListScanRunsResponse>;
455
+ /** Stops a ScanRun. The stopped ScanRun is returned. */
456
+ stop(request: {
457
+ /** V1 error format. */
458
+ '$.xgafv'?: string;
459
+ /** OAuth access token. */
460
+ access_token?: string;
461
+ /** Data format for response. */
462
+ alt?: string;
463
+ /** JSONP */
464
+ callback?: string;
465
+ /** Selector specifying which fields to include in a partial response. */
466
+ fields?: string;
467
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
468
+ key?: string;
469
+ /** Required. The resource name of the ScanRun to be stopped. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'. */
470
+ name: string;
471
+ /** OAuth 2.0 token for the current user. */
472
+ oauth_token?: string;
473
+ /** Returns response with indentations and line breaks. */
474
+ prettyPrint?: boolean;
475
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
476
+ quotaUser?: string;
477
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
478
+ upload_protocol?: string;
479
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
480
+ uploadType?: string;
481
+ /** Request body */
482
+ resource: StopScanRunRequest;
483
+ }): Request<ScanRun>;
484
+ stop(
485
+ request: {
486
+ /** V1 error format. */
487
+ '$.xgafv'?: string;
488
+ /** OAuth access token. */
489
+ access_token?: string;
490
+ /** Data format for response. */
491
+ alt?: string;
492
+ /** JSONP */
493
+ callback?: string;
494
+ /** Selector specifying which fields to include in a partial response. */
495
+ fields?: string;
496
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
497
+ key?: string;
498
+ /** Required. The resource name of the ScanRun to be stopped. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'. */
499
+ name: string;
500
+ /** OAuth 2.0 token for the current user. */
501
+ oauth_token?: string;
502
+ /** Returns response with indentations and line breaks. */
503
+ prettyPrint?: boolean;
504
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
505
+ quotaUser?: string;
506
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
507
+ upload_protocol?: string;
508
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
509
+ uploadType?: string;
510
+ },
511
+ body: StopScanRunRequest
512
+ ): Request<ScanRun>;
513
+ crawledUrls: CrawledUrlsResource;
514
+ findings: FindingsResource;
515
+ findingTypeStats: FindingTypeStatsResource;
516
+ }
517
+ interface ScanConfigsResource {
518
+ /** Creates a new ScanConfig. */
519
+ create(request: {
520
+ /** V1 error format. */
521
+ '$.xgafv'?: string;
522
+ /** OAuth access token. */
523
+ access_token?: string;
524
+ /** Data format for response. */
525
+ alt?: string;
526
+ /** JSONP */
527
+ callback?: string;
528
+ /** Selector specifying which fields to include in a partial response. */
529
+ fields?: string;
530
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
531
+ key?: string;
532
+ /** OAuth 2.0 token for the current user. */
533
+ oauth_token?: string;
534
+ /** Required. The parent resource name where the scan is created, which should be a project resource name in the format 'projects/{projectId}'. */
535
+ parent: string;
536
+ /** Returns response with indentations and line breaks. */
537
+ prettyPrint?: boolean;
538
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
539
+ quotaUser?: string;
540
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
541
+ upload_protocol?: string;
542
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
543
+ uploadType?: string;
544
+ /** Request body */
545
+ resource: ScanConfig;
546
+ }): Request<ScanConfig>;
547
+ create(
548
+ request: {
549
+ /** V1 error format. */
550
+ '$.xgafv'?: string;
551
+ /** OAuth access token. */
552
+ access_token?: string;
553
+ /** Data format for response. */
554
+ alt?: string;
555
+ /** JSONP */
556
+ callback?: string;
557
+ /** Selector specifying which fields to include in a partial response. */
558
+ fields?: string;
559
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
560
+ key?: string;
561
+ /** OAuth 2.0 token for the current user. */
562
+ oauth_token?: string;
563
+ /** Required. The parent resource name where the scan is created, which should be a project resource name in the format 'projects/{projectId}'. */
564
+ parent: string;
565
+ /** Returns response with indentations and line breaks. */
566
+ prettyPrint?: boolean;
567
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
568
+ quotaUser?: string;
569
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
570
+ upload_protocol?: string;
571
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
572
+ uploadType?: string;
573
+ },
574
+ body: ScanConfig
575
+ ): Request<ScanConfig>;
576
+ /** Deletes an existing ScanConfig and its child resources. */
577
+ delete(request?: {
578
+ /** V1 error format. */
579
+ '$.xgafv'?: string;
580
+ /** OAuth access token. */
581
+ access_token?: string;
582
+ /** Data format for response. */
583
+ alt?: string;
584
+ /** JSONP */
585
+ callback?: string;
586
+ /** Selector specifying which fields to include in a partial response. */
587
+ fields?: string;
588
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
589
+ key?: string;
590
+ /** Required. The resource name of the ScanConfig to be deleted. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}'. */
591
+ name: string;
592
+ /** OAuth 2.0 token for the current user. */
593
+ oauth_token?: string;
594
+ /** Returns response with indentations and line breaks. */
595
+ prettyPrint?: boolean;
596
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
597
+ quotaUser?: string;
598
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
599
+ upload_protocol?: string;
600
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
601
+ uploadType?: string;
602
+ }): Request<{}>;
603
+ /** Gets a ScanConfig. */
604
+ get(request?: {
605
+ /** V1 error format. */
606
+ '$.xgafv'?: string;
607
+ /** OAuth access token. */
608
+ access_token?: string;
609
+ /** Data format for response. */
610
+ alt?: string;
611
+ /** JSONP */
612
+ callback?: string;
613
+ /** Selector specifying which fields to include in a partial response. */
614
+ fields?: string;
615
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
616
+ key?: string;
617
+ /** Required. The resource name of the ScanConfig to be returned. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}'. */
618
+ name: string;
619
+ /** OAuth 2.0 token for the current user. */
620
+ oauth_token?: string;
621
+ /** Returns response with indentations and line breaks. */
622
+ prettyPrint?: boolean;
623
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
624
+ quotaUser?: string;
625
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
626
+ upload_protocol?: string;
627
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
628
+ uploadType?: string;
629
+ }): Request<ScanConfig>;
630
+ /** Lists ScanConfigs under a given project. */
631
+ list(request?: {
632
+ /** V1 error format. */
633
+ '$.xgafv'?: string;
634
+ /** OAuth access token. */
635
+ access_token?: string;
636
+ /** Data format for response. */
637
+ alt?: string;
638
+ /** JSONP */
639
+ callback?: string;
640
+ /** Selector specifying which fields to include in a partial response. */
641
+ fields?: string;
642
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
643
+ key?: string;
644
+ /** OAuth 2.0 token for the current user. */
645
+ oauth_token?: string;
646
+ /** The maximum number of ScanConfigs to return, can be limited by server. If not specified or not positive, the implementation will select a reasonable value. */
647
+ pageSize?: number;
648
+ /** A token identifying a page of results to be returned. This should be a `next_page_token` value returned from a previous List request. If unspecified, the first page of results is returned. */
649
+ pageToken?: string;
650
+ /** Required. The parent resource name, which should be a project resource name in the format 'projects/{projectId}'. */
651
+ parent: string;
652
+ /** Returns response with indentations and line breaks. */
653
+ prettyPrint?: boolean;
654
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
655
+ quotaUser?: string;
656
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
657
+ upload_protocol?: string;
658
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
659
+ uploadType?: string;
660
+ }): Request<ListScanConfigsResponse>;
661
+ /** Updates a ScanConfig. This method support partial update of a ScanConfig. */
662
+ patch(request: {
663
+ /** V1 error format. */
664
+ '$.xgafv'?: string;
665
+ /** OAuth access token. */
666
+ access_token?: string;
667
+ /** Data format for response. */
668
+ alt?: string;
669
+ /** JSONP */
670
+ callback?: string;
671
+ /** Selector specifying which fields to include in a partial response. */
672
+ fields?: string;
673
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
674
+ key?: string;
675
+ /** The resource name of the ScanConfig. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}'. The ScanConfig IDs are generated by the system. */
676
+ name: string;
677
+ /** OAuth 2.0 token for the current user. */
678
+ oauth_token?: string;
679
+ /** Returns response with indentations and line breaks. */
680
+ prettyPrint?: boolean;
681
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
682
+ quotaUser?: string;
683
+ /** Required. The update mask applies to the resource. For the `FieldMask` definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask */
684
+ updateMask?: string;
685
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
686
+ upload_protocol?: string;
687
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
688
+ uploadType?: string;
689
+ /** Request body */
690
+ resource: ScanConfig;
691
+ }): Request<ScanConfig>;
692
+ patch(
693
+ request: {
694
+ /** V1 error format. */
695
+ '$.xgafv'?: string;
696
+ /** OAuth access token. */
697
+ access_token?: string;
698
+ /** Data format for response. */
699
+ alt?: string;
700
+ /** JSONP */
701
+ callback?: string;
702
+ /** Selector specifying which fields to include in a partial response. */
703
+ fields?: string;
704
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
705
+ key?: string;
706
+ /** The resource name of the ScanConfig. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}'. The ScanConfig IDs are generated by the system. */
707
+ name: string;
708
+ /** OAuth 2.0 token for the current user. */
709
+ oauth_token?: string;
710
+ /** Returns response with indentations and line breaks. */
711
+ prettyPrint?: boolean;
712
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
713
+ quotaUser?: string;
714
+ /** Required. The update mask applies to the resource. For the `FieldMask` definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask */
715
+ updateMask?: string;
716
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
717
+ upload_protocol?: string;
718
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
719
+ uploadType?: string;
720
+ },
721
+ body: ScanConfig
722
+ ): Request<ScanConfig>;
723
+ /** Start a ScanRun according to the given ScanConfig. */
724
+ start(request: {
725
+ /** V1 error format. */
726
+ '$.xgafv'?: string;
727
+ /** OAuth access token. */
728
+ access_token?: string;
729
+ /** Data format for response. */
730
+ alt?: string;
731
+ /** JSONP */
732
+ callback?: string;
733
+ /** Selector specifying which fields to include in a partial response. */
734
+ fields?: string;
735
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
736
+ key?: string;
737
+ /** Required. The resource name of the ScanConfig to be used. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}'. */
738
+ name: string;
739
+ /** OAuth 2.0 token for the current user. */
740
+ oauth_token?: string;
741
+ /** Returns response with indentations and line breaks. */
742
+ prettyPrint?: boolean;
743
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
744
+ quotaUser?: string;
745
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
746
+ upload_protocol?: string;
747
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
748
+ uploadType?: string;
749
+ /** Request body */
750
+ resource: StartScanRunRequest;
751
+ }): Request<ScanRun>;
752
+ start(
753
+ request: {
754
+ /** V1 error format. */
755
+ '$.xgafv'?: string;
756
+ /** OAuth access token. */
757
+ access_token?: string;
758
+ /** Data format for response. */
759
+ alt?: string;
760
+ /** JSONP */
761
+ callback?: string;
762
+ /** Selector specifying which fields to include in a partial response. */
763
+ fields?: string;
764
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
765
+ key?: string;
766
+ /** Required. The resource name of the ScanConfig to be used. The name follows the format of 'projects/{projectId}/scanConfigs/{scanConfigId}'. */
767
+ name: string;
768
+ /** OAuth 2.0 token for the current user. */
769
+ oauth_token?: string;
770
+ /** Returns response with indentations and line breaks. */
771
+ prettyPrint?: boolean;
772
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
773
+ quotaUser?: string;
774
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
775
+ upload_protocol?: string;
776
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
777
+ uploadType?: string;
778
+ },
779
+ body: StartScanRunRequest
780
+ ): Request<ScanRun>;
781
+ scanRuns: ScanRunsResource;
782
+ }
783
+ interface ProjectsResource {
784
+ scanConfigs: ScanConfigsResource;
785
+ }
786
+
787
+ const projects: ProjectsResource;
788
+ }
1142
789
  }