@maxim_mazurok/gapi.client.netapp-v1beta1 0.0.20241002

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.
Files changed (3) hide show
  1. package/index.d.ts +3254 -0
  2. package/package.json +20 -0
  3. package/readme.md +73 -0
package/index.d.ts ADDED
@@ -0,0 +1,3254 @@
1
+ /* Type definitions for non-npm package NetApp API v1beta1 0.0 */
2
+ // Project: https://cloud.google.com/netapp/
3
+ // Definitions by: Maxim Mazurok <https://github.com/Maxim-Mazurok>
4
+ // Nick Amoscato <https://github.com/namoscato>
5
+ // Declan Vong <https://github.com/declanvong>
6
+ // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
7
+
8
+ // IMPORTANT
9
+ // This file was generated by https://github.com/Maxim-Mazurok/google-api-typings-generator. Please do not edit it manually.
10
+ // In case of any problems please post issue to https://github.com/Maxim-Mazurok/google-api-typings-generator
11
+ // Generated from: https://netapp.googleapis.com/$discovery/rest?version=v1beta1
12
+ // Revision: 20241002
13
+
14
+ /// <reference types="gapi.client" />
15
+
16
+ declare namespace gapi.client {
17
+ /** Load NetApp API v1beta1 */
18
+ function load(
19
+ urlOrObject: 'https://netapp.googleapis.com/$discovery/rest?version=v1beta1'
20
+ ): Promise<void>;
21
+ /** @deprecated Please load APIs with discovery documents. */
22
+ function load(name: 'netapp', version: 'v1beta1'): Promise<void>;
23
+ /** @deprecated Please load APIs with discovery documents. */
24
+ function load(name: 'netapp', version: 'v1beta1', callback: () => any): void;
25
+
26
+ namespace netapp {
27
+ interface ActiveDirectory {
28
+ /** Optional. Users to be added to the Built-in Admininstrators group. */
29
+ administrators?: string[];
30
+ /** If enabled, AES encryption will be enabled for SMB communication. */
31
+ aesEncryption?: boolean;
32
+ /** Optional. Users to be added to the Built-in Backup Operator active directory group. */
33
+ backupOperators?: string[];
34
+ /** Output only. Create time of the active directory. */
35
+ createTime?: string;
36
+ /** Description of the active directory. */
37
+ description?: string;
38
+ /** Required. Comma separated list of DNS server IP addresses for the Active Directory domain. */
39
+ dns?: string;
40
+ /** Required. Name of the Active Directory domain */
41
+ domain?: string;
42
+ /** If enabled, traffic between the SMB server to Domain Controller (DC) will be encrypted. */
43
+ encryptDcConnections?: boolean;
44
+ /** Name of the active directory machine. This optional parameter is used only while creating kerberos volume */
45
+ kdcHostname?: string;
46
+ /** KDC server IP address for the active directory machine. */
47
+ kdcIp?: string;
48
+ /** Labels for the active directory. */
49
+ labels?: {[P in string]: string};
50
+ /** Specifies whether or not the LDAP traffic needs to be signed. */
51
+ ldapSigning?: boolean;
52
+ /** Identifier. The resource name of the active directory. Format: `projects/{project_number}/locations/{location_id}/activeDirectories/{active_directory_id}`. */
53
+ name?: string;
54
+ /** Required. NetBIOSPrefix is used as a prefix for SMB server name. */
55
+ netBiosPrefix?: string;
56
+ /** If enabled, will allow access to local users and LDAP users. If access is needed for only LDAP users, it has to be disabled. */
57
+ nfsUsersWithLdap?: boolean;
58
+ /** The Organizational Unit (OU) within the Windows Active Directory the user belongs to. */
59
+ organizationalUnit?: string;
60
+ /** Required. Password of the Active Directory domain administrator. */
61
+ password?: string;
62
+ /** Optional. Domain users to be given the SeSecurityPrivilege. */
63
+ securityOperators?: string[];
64
+ /** The Active Directory site the service will limit Domain Controller discovery too. */
65
+ site?: string;
66
+ /** Output only. The state of the AD. */
67
+ state?: string;
68
+ /** Output only. The state details of the Active Directory. */
69
+ stateDetails?: string;
70
+ /** Required. Username of the Active Directory domain administrator. */
71
+ username?: string;
72
+ }
73
+ interface AssetLocation {
74
+ /** Spanner path of the CCFE RMS database. It is only applicable for CCFE tenants that use CCFE RMS for storing resource metadata. */
75
+ ccfeRmsPath?: string;
76
+ /** Defines the customer expectation around ZI/ZS for this asset and ZI/ZS state of the region at the time of asset creation. */
77
+ expected?: IsolationExpectations;
78
+ /** Defines extra parameters required for specific asset types. */
79
+ extraParameters?: ExtraParameter[];
80
+ /** Contains all kinds of physical location definitions for this asset. */
81
+ locationData?: LocationData[];
82
+ /** Defines parents assets if any in order to allow later generation of child_asset_location data via child assets. */
83
+ parentAsset?: CloudAsset[];
84
+ }
85
+ interface Backup {
86
+ /** Output only. Type of backup, manually created or created by a backup policy. */
87
+ backupType?: string;
88
+ /** Output only. Total size of all backups in a chain in bytes = baseline backup size + sum(incremental backup size) */
89
+ chainStorageBytes?: string;
90
+ /** Output only. The time when the backup was created. */
91
+ createTime?: string;
92
+ /** A description of the backup with 2048 characters or less. Requests with longer descriptions will be rejected. */
93
+ description?: string;
94
+ /** Resource labels to represent user provided metadata. */
95
+ labels?: {[P in string]: string};
96
+ /** Identifier. The resource name of the backup. Format: `projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}/backups/{backup_id}`. */
97
+ name?: string;
98
+ /** If specified, backup will be created from the given snapshot. If not specified, there will be a new snapshot taken to initiate the backup creation. Format: `projects/{project_id}/locations/{location}/volumes/{volume_id}/snapshots/{snapshot_id}` */
99
+ sourceSnapshot?: string;
100
+ /** Volume full name of this backup belongs to. Format: `projects/{projects_id}/locations/{location}/volumes/{volume_id}` */
101
+ sourceVolume?: string;
102
+ /** Output only. The backup state. */
103
+ state?: string;
104
+ /** Output only. Size of the file system when the backup was created. When creating a new volume from the backup, the volume capacity will have to be at least as big. */
105
+ volumeUsageBytes?: string;
106
+ }
107
+ interface BackupConfig {
108
+ /** Output only. Total size of all backups in a chain in bytes = baseline backup size + sum(incremental backup size). */
109
+ backupChainBytes?: string;
110
+ /** Optional. When specified, schedule backups will be created based on the policy configuration. */
111
+ backupPolicies?: string[];
112
+ /** Optional. Name of backup vault. Format: projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id} */
113
+ backupVault?: string;
114
+ /** Optional. When set to true, scheduled backup is enabled on the volume. This field should be nil when there's no backup policy attached. */
115
+ scheduledBackupEnabled?: boolean;
116
+ }
117
+ interface BackupPolicy {
118
+ /** Output only. The total number of volumes assigned by this backup policy. */
119
+ assignedVolumeCount?: number;
120
+ /** Output only. The time when the backup policy was created. */
121
+ createTime?: string;
122
+ /** Number of daily backups to keep. Note that the minimum daily backup limit is 2. */
123
+ dailyBackupLimit?: number;
124
+ /** Description of the backup policy. */
125
+ description?: string;
126
+ /** If enabled, make backups automatically according to the schedules. This will be applied to all volumes that have this policy attached and enforced on volume level. If not specified, default is true. */
127
+ enabled?: boolean;
128
+ /** Resource labels to represent user provided metadata. */
129
+ labels?: {[P in string]: string};
130
+ /** Number of monthly backups to keep. Note that the sum of daily, weekly and monthly backups should be greater than 1. */
131
+ monthlyBackupLimit?: number;
132
+ /** Identifier. The resource name of the backup policy. Format: `projects/{project_id}/locations/{location}/backupPolicies/{backup_policy_id}`. */
133
+ name?: string;
134
+ /** Output only. The backup policy state. */
135
+ state?: string;
136
+ /** Number of weekly backups to keep. Note that the sum of daily, weekly and monthly backups should be greater than 1. */
137
+ weeklyBackupLimit?: number;
138
+ }
139
+ interface BackupVault {
140
+ /** Output only. Create time of the backup vault. */
141
+ createTime?: string;
142
+ /** Description of the backup vault. */
143
+ description?: string;
144
+ /** Resource labels to represent user provided metadata. */
145
+ labels?: {[P in string]: string};
146
+ /** Identifier. The resource name of the backup vault. Format: `projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}`. */
147
+ name?: string;
148
+ /** Output only. The backup vault state. */
149
+ state?: string;
150
+ }
151
+ interface BlobstoreLocation {
152
+ policyId?: string[];
153
+ }
154
+ interface CancelOperationRequest {}
155
+ interface CloudAsset {
156
+ assetName?: string;
157
+ assetType?: string;
158
+ }
159
+ interface CloudAssetComposition {
160
+ childAsset?: CloudAsset[];
161
+ }
162
+ interface DailySchedule {
163
+ /** Set the hour to start the snapshot (0-23), defaults to midnight (0). */
164
+ hour?: number;
165
+ /** Set the minute of the hour to start the snapshot (0-59), defaults to the top of the hour (0). */
166
+ minute?: number;
167
+ /** The maximum number of Snapshots to keep for the hourly schedule */
168
+ snapshotsToKeep?: number;
169
+ }
170
+ interface DestinationVolumeParameters {
171
+ /** Description for the destination volume. */
172
+ description?: string;
173
+ /** Destination volume's share name. If not specified, source volume's share name will be used. */
174
+ shareName?: string;
175
+ /** Required. Existing destination StoragePool name. */
176
+ storagePool?: string;
177
+ /** Desired destination volume resource id. If not specified, source volume's resource id will be used. This value must start with a lowercase letter followed by up to 62 lowercase letters, numbers, or hyphens, and cannot end with a hyphen. */
178
+ volumeId?: string;
179
+ }
180
+ interface DirectLocationAssignment {
181
+ location?: LocationAssignment[];
182
+ }
183
+ interface EncryptVolumesRequest {}
184
+ interface ExportPolicy {
185
+ /** Required. List of export policy rules */
186
+ rules?: SimpleExportPolicyRule[];
187
+ }
188
+ interface ExtraParameter {
189
+ /** Details about zones used by regional compute.googleapis.com/InstanceGroupManager to create instances. */
190
+ regionalMigDistributionPolicy?: RegionalMigDistributionPolicy;
191
+ }
192
+ interface GoogleProtobufEmpty {}
193
+ interface HourlySchedule {
194
+ /** Set the minute of the hour to start the snapshot (0-59), defaults to the top of the hour (0). */
195
+ minute?: number;
196
+ /** The maximum number of Snapshots to keep for the hourly schedule */
197
+ snapshotsToKeep?: number;
198
+ }
199
+ interface IsolationExpectations {
200
+ /** Explicit overrides for ZI and ZS requirements to be used for resources that should be excluded from ZI/ZS verification logic. */
201
+ requirementOverride?: RequirementOverride;
202
+ ziOrgPolicy?: string;
203
+ ziRegionPolicy?: string;
204
+ ziRegionState?: string;
205
+ /** Deprecated: use zi_org_policy, zi_region_policy and zi_region_state instead for setting ZI expectations as per go/zicy-publish-physical-location. */
206
+ zoneIsolation?: string;
207
+ /** Deprecated: use zs_org_policy, and zs_region_stateinstead for setting Zs expectations as per go/zicy-publish-physical-location. */
208
+ zoneSeparation?: string;
209
+ zsOrgPolicy?: string;
210
+ zsRegionState?: string;
211
+ }
212
+ interface KmsConfig {
213
+ /** Output only. Create time of the KmsConfig. */
214
+ createTime?: string;
215
+ /** Required. Customer managed crypto key resource full name. Format: projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{key}. */
216
+ cryptoKeyName?: string;
217
+ /** Description of the KmsConfig. */
218
+ description?: string;
219
+ /** Output only. Instructions to provide the access to the customer provided encryption key. */
220
+ instructions?: string;
221
+ /** Labels as key value pairs */
222
+ labels?: {[P in string]: string};
223
+ /** Identifier. Name of the KmsConfig. */
224
+ name?: string;
225
+ /** Output only. The Service account which will have access to the customer provided encryption key. */
226
+ serviceAccount?: string;
227
+ /** Output only. State of the KmsConfig. */
228
+ state?: string;
229
+ /** Output only. State details of the KmsConfig. */
230
+ stateDetails?: string;
231
+ }
232
+ interface ListActiveDirectoriesResponse {
233
+ /** The list of active directories. */
234
+ activeDirectories?: ActiveDirectory[];
235
+ /** A token identifying a page of results the server should return. */
236
+ nextPageToken?: string;
237
+ /** Locations that could not be reached. */
238
+ unreachable?: string[];
239
+ }
240
+ interface ListBackupPoliciesResponse {
241
+ /** The list of backup policies. */
242
+ backupPolicies?: BackupPolicy[];
243
+ /** A token identifying a page of results the server should return. */
244
+ nextPageToken?: string;
245
+ /** Locations that could not be reached. */
246
+ unreachable?: string[];
247
+ }
248
+ interface ListBackupsResponse {
249
+ /** A list of backups in the project. */
250
+ backups?: Backup[];
251
+ /** The token you can use to retrieve the next page of results. Not returned if there are no more results in the list. */
252
+ nextPageToken?: string;
253
+ /** Locations that could not be reached. */
254
+ unreachable?: string[];
255
+ }
256
+ interface ListBackupVaultsResponse {
257
+ /** A list of backupVaults in the project for the specified location. */
258
+ backupVaults?: BackupVault[];
259
+ /** The token you can use to retrieve the next page of results. Not returned if there are no more results in the list. */
260
+ nextPageToken?: string;
261
+ /** Locations that could not be reached. */
262
+ unreachable?: string[];
263
+ }
264
+ interface ListKmsConfigsResponse {
265
+ /** The list of KmsConfigs */
266
+ kmsConfigs?: KmsConfig[];
267
+ /** A token identifying a page of results the server should return. */
268
+ nextPageToken?: string;
269
+ /** Locations that could not be reached. */
270
+ unreachable?: string[];
271
+ }
272
+ interface ListLocationsResponse {
273
+ /** A list of locations that matches the specified filter in the request. */
274
+ locations?: Location[];
275
+ /** The standard List next-page token. */
276
+ nextPageToken?: string;
277
+ }
278
+ interface ListOperationsResponse {
279
+ /** The standard List next-page token. */
280
+ nextPageToken?: string;
281
+ /** A list of operations that matches the specified filter in the request. */
282
+ operations?: Operation[];
283
+ }
284
+ interface ListReplicationsResponse {
285
+ /** The token you can use to retrieve the next page of results. Not returned if there are no more results in the list. */
286
+ nextPageToken?: string;
287
+ /** A list of replications in the project for the specified volume. */
288
+ replications?: Replication[];
289
+ /** Locations that could not be reached. */
290
+ unreachable?: string[];
291
+ }
292
+ interface ListSnapshotsResponse {
293
+ /** The token you can use to retrieve the next page of results. Not returned if there are no more results in the list. */
294
+ nextPageToken?: string;
295
+ /** A list of snapshots in the project for the specified volume. */
296
+ snapshots?: Snapshot[];
297
+ /** Locations that could not be reached. */
298
+ unreachable?: string[];
299
+ }
300
+ interface ListStoragePoolsResponse {
301
+ /** A token identifying a page of results the server should return. */
302
+ nextPageToken?: string;
303
+ /** The list of StoragePools */
304
+ storagePools?: StoragePool[];
305
+ /** Locations that could not be reached. */
306
+ unreachable?: string[];
307
+ }
308
+ interface ListVolumesResponse {
309
+ /** A token identifying a page of results the server should return. */
310
+ nextPageToken?: string;
311
+ /** Locations that could not be reached. */
312
+ unreachable?: string[];
313
+ /** The list of Volume */
314
+ volumes?: Volume[];
315
+ }
316
+ interface Location {
317
+ /** The friendly name for this location, typically a nearby city name. For example, "Tokyo". */
318
+ displayName?: string;
319
+ /** Cross-service attributes for the location. For example {"cloud.googleapis.com/region": "us-east1"} */
320
+ labels?: {[P in string]: string};
321
+ /** The canonical id for this location. For example: `"us-east1"`. */
322
+ locationId?: string;
323
+ /** Service-specific metadata. For example the available capacity at the given location. */
324
+ metadata?: {[P in string]: any};
325
+ /** Resource name for the location, which may vary between implementations. For example: `"projects/example-project/locations/us-east1"` */
326
+ name?: string;
327
+ }
328
+ interface LocationAssignment {
329
+ location?: string;
330
+ locationType?: string;
331
+ }
332
+ interface LocationData {
333
+ blobstoreLocation?: BlobstoreLocation;
334
+ childAssetLocation?: CloudAssetComposition;
335
+ directLocation?: DirectLocationAssignment;
336
+ gcpProjectProxy?: TenantProjectProxy;
337
+ placerLocation?: PlacerLocation;
338
+ spannerLocation?: SpannerLocation;
339
+ }
340
+ interface LocationMetadata {
341
+ /** Output only. Supported service levels in a location. */
342
+ supportedServiceLevels?: string[];
343
+ }
344
+ interface MonthlySchedule {
345
+ /** Set the day or days of the month to make a snapshot (1-31). Accepts a comma separated number of days. Defaults to '1'. */
346
+ daysOfMonth?: string;
347
+ /** Set the hour to start the snapshot (0-23), defaults to midnight (0). */
348
+ hour?: number;
349
+ /** Set the minute of the hour to start the snapshot (0-59), defaults to the top of the hour (0). */
350
+ minute?: number;
351
+ /** The maximum number of Snapshots to keep for the hourly schedule */
352
+ snapshotsToKeep?: number;
353
+ }
354
+ interface MountOption {
355
+ /** Export string */
356
+ export?: string;
357
+ /** Full export string */
358
+ exportFull?: string;
359
+ /** Instructions for mounting */
360
+ instructions?: string;
361
+ /** Protocol to mount with. */
362
+ protocol?: string;
363
+ }
364
+ interface Operation {
365
+ /** 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. */
366
+ done?: boolean;
367
+ /** The error result of the operation in case of failure or cancellation. */
368
+ error?: Status;
369
+ /** 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. */
370
+ metadata?: {[P in string]: any};
371
+ /** 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}`. */
372
+ name?: string;
373
+ /** 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`. */
374
+ response?: {[P in string]: any};
375
+ }
376
+ interface OperationMetadata {
377
+ /** Output only. API version used to start the operation. */
378
+ apiVersion?: string;
379
+ /** Output only. The time the operation was created. */
380
+ createTime?: string;
381
+ /** Output only. The time the operation finished running. */
382
+ endTime?: string;
383
+ /** Output only. Identifies whether the user has requested cancellation of the operation. Operations that have been canceled successfully have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`. */
384
+ requestedCancellation?: boolean;
385
+ /** Output only. Human-readable status of the operation, if any. */
386
+ statusMessage?: string;
387
+ /** Output only. Server-defined resource path for the target of the operation. */
388
+ target?: string;
389
+ /** Output only. Name of the verb executed by the operation. */
390
+ verb?: string;
391
+ }
392
+ interface PlacerLocation {
393
+ /** Directory with a config related to it in placer (e.g. "/placer/prod/home/my-root/my-dir") */
394
+ placerConfig?: string;
395
+ }
396
+ interface RegionalMigDistributionPolicy {
397
+ /** The shape in which the group converges around distribution of resources. Instance of proto2 enum */
398
+ targetShape?: number;
399
+ /** Cloud zones used by regional MIG to create instances. */
400
+ zones?: ZoneConfiguration[];
401
+ }
402
+ interface Replication {
403
+ /** Output only. Replication create time. */
404
+ createTime?: string;
405
+ /** A description about this replication relationship. */
406
+ description?: string;
407
+ /** Output only. Full name of destination volume resource. Example : "projects/{project}/locations/{location}/volumes/{volume_id}" */
408
+ destinationVolume?: string;
409
+ /** Required. Input only. Destination volume parameters */
410
+ destinationVolumeParameters?: DestinationVolumeParameters;
411
+ /** Output only. Condition of the relationship. Can be one of the following: - true: The replication relationship is healthy. It has not missed the most recent scheduled transfer. - false: The replication relationship is not healthy. It has missed the most recent scheduled transfer. */
412
+ healthy?: boolean;
413
+ /** Resource labels to represent user provided metadata. */
414
+ labels?: {[P in string]: string};
415
+ /** Output only. Indicates the state of mirroring. */
416
+ mirrorState?: string;
417
+ /** Identifier. The resource name of the Replication. Format: `projects/{project_id}/locations/{location}/volumes/{volume_id}/replications/{replication_id}`. */
418
+ name?: string;
419
+ /** Required. Indicates the schedule for replication. */
420
+ replicationSchedule?: string;
421
+ /** Output only. Indicates whether this points to source or destination. */
422
+ role?: string;
423
+ /** Output only. Full name of source volume resource. Example : "projects/{project}/locations/{location}/volumes/{volume_id}" */
424
+ sourceVolume?: string;
425
+ /** Output only. State of the replication. */
426
+ state?: string;
427
+ /** Output only. State details of the replication. */
428
+ stateDetails?: string;
429
+ /** Output only. Replication transfer statistics. */
430
+ transferStats?: TransferStats;
431
+ }
432
+ interface RequirementOverride {
433
+ ziOverride?: string;
434
+ zsOverride?: string;
435
+ }
436
+ interface RestoreParameters {
437
+ /** Full name of the backup resource. Format: projects/{project}/locations/{location}/backupVaults/{backup_vault_id}/backups/{backup_id} */
438
+ sourceBackup?: string;
439
+ /** Full name of the snapshot resource. Format: projects/{project}/locations/{location}/volumes/{volume}/snapshots/{snapshot} */
440
+ sourceSnapshot?: string;
441
+ }
442
+ interface ResumeReplicationRequest {}
443
+ interface ReverseReplicationDirectionRequest {}
444
+ interface RevertVolumeRequest {
445
+ /** Required. The snapshot resource ID, in the format 'my-snapshot', where the specified ID is the {snapshot_id} of the fully qualified name like projects/{project_id}/locations/{location_id}/volumes/{volume_id}/snapshots/{snapshot_id} */
446
+ snapshotId?: string;
447
+ }
448
+ interface SimpleExportPolicyRule {
449
+ /** Access type (ReadWrite, ReadOnly, None) */
450
+ accessType?: string;
451
+ /** Comma separated list of allowed clients IP addresses */
452
+ allowedClients?: string;
453
+ /** Whether Unix root access will be granted. */
454
+ hasRootAccess?: string;
455
+ /** If enabled (true) the rule defines a read only access for clients matching the 'allowedClients' specification. It enables nfs clients to mount using 'integrity' kerberos security mode. */
456
+ kerberos5iReadOnly?: boolean;
457
+ /** If enabled (true) the rule defines read and write access for clients matching the 'allowedClients' specification. It enables nfs clients to mount using 'integrity' kerberos security mode. The 'kerberos5iReadOnly' value be ignored if this is enabled. */
458
+ kerberos5iReadWrite?: boolean;
459
+ /** If enabled (true) the rule defines a read only access for clients matching the 'allowedClients' specification. It enables nfs clients to mount using 'privacy' kerberos security mode. */
460
+ kerberos5pReadOnly?: boolean;
461
+ /** If enabled (true) the rule defines read and write access for clients matching the 'allowedClients' specification. It enables nfs clients to mount using 'privacy' kerberos security mode. The 'kerberos5pReadOnly' value be ignored if this is enabled. */
462
+ kerberos5pReadWrite?: boolean;
463
+ /** If enabled (true) the rule defines a read only access for clients matching the 'allowedClients' specification. It enables nfs clients to mount using 'authentication' kerberos security mode. */
464
+ kerberos5ReadOnly?: boolean;
465
+ /** If enabled (true) the rule defines read and write access for clients matching the 'allowedClients' specification. It enables nfs clients to mount using 'authentication' kerberos security mode. The 'kerberos5ReadOnly' value be ignored if this is enabled. */
466
+ kerberos5ReadWrite?: boolean;
467
+ /** NFS V3 protocol. */
468
+ nfsv3?: boolean;
469
+ /** NFS V4 protocol. */
470
+ nfsv4?: boolean;
471
+ }
472
+ interface Snapshot {
473
+ /** Output only. The time when the snapshot was created. */
474
+ createTime?: string;
475
+ /** A description of the snapshot with 2048 characters or less. Requests with longer descriptions will be rejected. */
476
+ description?: string;
477
+ /** Resource labels to represent user provided metadata. */
478
+ labels?: {[P in string]: string};
479
+ /** Identifier. The resource name of the snapshot. Format: `projects/{project_id}/locations/{location}/volumes/{volume_id}/snapshots/{snapshot_id}`. */
480
+ name?: string;
481
+ /** Output only. The snapshot state. */
482
+ state?: string;
483
+ /** Output only. State details of the storage pool */
484
+ stateDetails?: string;
485
+ /** Output only. Current storage usage for the snapshot in bytes. */
486
+ usedBytes?: number;
487
+ }
488
+ interface SnapshotPolicy {
489
+ /** Daily schedule policy. */
490
+ dailySchedule?: DailySchedule;
491
+ /** If enabled, make snapshots automatically according to the schedules. Default is false. */
492
+ enabled?: boolean;
493
+ /** Hourly schedule policy. */
494
+ hourlySchedule?: HourlySchedule;
495
+ /** Monthly schedule policy. */
496
+ monthlySchedule?: MonthlySchedule;
497
+ /** Weekly schedule policy. */
498
+ weeklySchedule?: WeeklySchedule;
499
+ }
500
+ interface SpannerLocation {
501
+ /** Set of backups used by the resource with name in the same format as what is available at http://table/spanner_automon.backup_metadata */
502
+ backupName?: string[];
503
+ /** Set of databases used by the resource in format /span// */
504
+ dbName?: string[];
505
+ }
506
+ interface Status {
507
+ /** The status code, which should be an enum value of google.rpc.Code. */
508
+ code?: number;
509
+ /** A list of messages that carry the error details. There is a common set of message types for APIs to use. */
510
+ details?: Array<{[P in string]: any}>;
511
+ /** 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. */
512
+ message?: string;
513
+ }
514
+ interface StopReplicationRequest {
515
+ /** Indicates whether to stop replication forcefully while data transfer is in progress. Warning! if force is true, this will abort any current transfers and can lead to data loss due to partial transfer. If force is false, stop replication will fail while data transfer is in progress and you will need to retry later. */
516
+ force?: boolean;
517
+ }
518
+ interface StoragePool {
519
+ /** Optional. Specifies the Active Directory to be used for creating a SMB volume. */
520
+ activeDirectory?: string;
521
+ /** Optional. True if the storage pool supports Auto Tiering enabled volumes. Default is false. Auto-tiering can be enabled after storage pool creation but it can't be disabled once enabled. */
522
+ allowAutoTiering?: boolean;
523
+ /** Required. Capacity in GIB of the pool */
524
+ capacityGib?: string;
525
+ /** Output only. Create time of the storage pool */
526
+ createTime?: string;
527
+ /** Optional. Description of the storage pool */
528
+ description?: string;
529
+ /** Output only. Specifies the current pool encryption key source. */
530
+ encryptionType?: string;
531
+ /** Deprecated. Used to allow SO pool to access AD or DNS server from other regions. */
532
+ globalAccessAllowed?: boolean;
533
+ /** Optional. Specifies the KMS config to be used for volume encryption. */
534
+ kmsConfig?: string;
535
+ /** Optional. Labels as key value pairs */
536
+ labels?: {[P in string]: string};
537
+ /** Optional. Flag indicating if the pool is NFS LDAP enabled or not. */
538
+ ldapEnabled?: boolean;
539
+ /** Identifier. Name of the storage pool */
540
+ name?: string;
541
+ /** Required. VPC Network name. Format: projects/{project}/global/networks/{network} */
542
+ network?: string;
543
+ /** Optional. This field is not implemented. The values provided in this field are ignored. */
544
+ psaRange?: string;
545
+ /** Optional. Specifies the replica zone for regional storagePool. */
546
+ replicaZone?: string;
547
+ /** Required. Service level of the storage pool */
548
+ serviceLevel?: string;
549
+ /** Output only. State of the storage pool */
550
+ state?: string;
551
+ /** Output only. State details of the storage pool */
552
+ stateDetails?: string;
553
+ /** Output only. Allocated size of all volumes in GIB in the storage pool */
554
+ volumeCapacityGib?: string;
555
+ /** Output only. Volume count of the storage pool */
556
+ volumeCount?: number;
557
+ /** Optional. Specifies the active zone for regional storagePool. */
558
+ zone?: string;
559
+ }
560
+ interface SwitchActiveReplicaZoneRequest {}
561
+ interface TenantProjectProxy {
562
+ projectNumbers?: string[];
563
+ }
564
+ interface TieringPolicy {
565
+ /** Optional. Time in days to mark the volume's data block as cold and make it eligible for tiering, can be range from 7-183. Default is 31. */
566
+ coolingThresholdDays?: number;
567
+ /** Optional. Flag indicating if the volume has tiering policy enable/pause. Default is PAUSED. */
568
+ tierAction?: string;
569
+ }
570
+ interface TransferStats {
571
+ /** Lag duration indicates the duration by which Destination region volume content lags behind the primary region volume content. */
572
+ lagDuration?: string;
573
+ /** Last transfer size in bytes. */
574
+ lastTransferBytes?: string;
575
+ /** Time taken during last transfer. */
576
+ lastTransferDuration?: string;
577
+ /** Time when last transfer completed. */
578
+ lastTransferEndTime?: string;
579
+ /** A message describing the cause of the last transfer failure. */
580
+ lastTransferError?: string;
581
+ /** Cumulative time taken across all transfers for the replication relationship. */
582
+ totalTransferDuration?: string;
583
+ /** Cumulative bytes trasferred so far for the replication relatinonship. */
584
+ transferBytes?: string;
585
+ /** Time when progress was updated last. */
586
+ updateTime?: string;
587
+ }
588
+ interface VerifyKmsConfigRequest {}
589
+ interface VerifyKmsConfigResponse {
590
+ /** Output only. Error message if config is not healthy. */
591
+ healthError?: string;
592
+ /** Output only. If the customer key configured correctly to the encrypt volume. */
593
+ healthy?: boolean;
594
+ /** Output only. Instructions for the customers to provide the access to the encryption key. */
595
+ instructions?: string;
596
+ }
597
+ interface Volume {
598
+ /** Output only. Specifies the ActiveDirectory name of a SMB volume. */
599
+ activeDirectory?: string;
600
+ /** BackupConfig of the volume. */
601
+ backupConfig?: BackupConfig;
602
+ /** Required. Capacity in GIB of the volume */
603
+ capacityGib?: string;
604
+ /** Output only. Size of the volume cold tier data in GiB. */
605
+ coldTierSizeGib?: string;
606
+ /** Output only. Create time of the volume */
607
+ createTime?: string;
608
+ /** Optional. Description of the volume */
609
+ description?: string;
610
+ /** Output only. Specified the current volume encryption key source. */
611
+ encryptionType?: string;
612
+ /** Optional. Export policy of the volume */
613
+ exportPolicy?: ExportPolicy;
614
+ /** Output only. Indicates whether the volume is part of a replication relationship. */
615
+ hasReplication?: boolean;
616
+ /** Optional. Flag indicating if the volume is a kerberos volume or not, export policy rules control kerberos security modes (krb5, krb5i, krb5p). */
617
+ kerberosEnabled?: boolean;
618
+ /** Output only. Specifies the KMS config to be used for volume encryption. */
619
+ kmsConfig?: string;
620
+ /** Optional. Labels as key value pairs */
621
+ labels?: {[P in string]: string};
622
+ /** Optional. Flag indicating if the volume will be a large capacity volume or a regular volume. */
623
+ largeCapacity?: boolean;
624
+ /** Output only. Flag indicating if the volume is NFS LDAP enabled or not. */
625
+ ldapEnabled?: boolean;
626
+ /** Output only. Mount options of this volume */
627
+ mountOptions?: MountOption[];
628
+ /** Optional. Flag indicating if the volume will have an IP address per node for volumes supporting multiple IP endpoints. Only the volume with large_capacity will be allowed to have multiple endpoints. */
629
+ multipleEndpoints?: boolean;
630
+ /** Identifier. Name of the volume */
631
+ name?: string;
632
+ /** Output only. VPC Network name. Format: projects/{project}/global/networks/{network} */
633
+ network?: string;
634
+ /** Required. Protocols required for the volume */
635
+ protocols?: string[];
636
+ /** Output only. This field is not implemented. The values provided in this field are ignored. */
637
+ psaRange?: string;
638
+ /** Output only. Specifies the replica zone for regional volume. */
639
+ replicaZone?: string;
640
+ /** Optional. Specifies the source of the volume to be created from. */
641
+ restoreParameters?: RestoreParameters;
642
+ /** Optional. List of actions that are restricted on this volume. */
643
+ restrictedActions?: string[];
644
+ /** Optional. Security Style of the Volume */
645
+ securityStyle?: string;
646
+ /** Output only. Service level of the volume */
647
+ serviceLevel?: string;
648
+ /** Required. Share name of the volume */
649
+ shareName?: string;
650
+ /** Optional. SMB share settings for the volume. */
651
+ smbSettings?: string[];
652
+ /** Optional. Snap_reserve specifies percentage of volume storage reserved for snapshot storage. Default is 0 percent. */
653
+ snapReserve?: number;
654
+ /** Optional. Snapshot_directory if enabled (true) the volume will contain a read-only .snapshot directory which provides access to each of the volume's snapshots. */
655
+ snapshotDirectory?: boolean;
656
+ /** Optional. SnapshotPolicy for a volume. */
657
+ snapshotPolicy?: SnapshotPolicy;
658
+ /** Output only. State of the volume */
659
+ state?: string;
660
+ /** Output only. State details of the volume */
661
+ stateDetails?: string;
662
+ /** Required. StoragePool name of the volume */
663
+ storagePool?: string;
664
+ /** Tiering policy for the volume. */
665
+ tieringPolicy?: TieringPolicy;
666
+ /** Optional. Default unix style permission (e.g. 777) the mount point will be created with. Applicable for NFS protocol types only. */
667
+ unixPermissions?: string;
668
+ /** Output only. Used capacity in GIB of the volume. This is computed periodically and it does not represent the realtime usage. */
669
+ usedGib?: string;
670
+ /** Output only. Specifies the active zone for regional volume. */
671
+ zone?: string;
672
+ }
673
+ interface WeeklySchedule {
674
+ /** Set the day or days of the week to make a snapshot. Accepts a comma separated days of the week. Defaults to 'Sunday'. */
675
+ day?: string;
676
+ /** Set the hour to start the snapshot (0-23), defaults to midnight (0). */
677
+ hour?: number;
678
+ /** Set the minute of the hour to start the snapshot (0-59), defaults to the top of the hour (0). */
679
+ minute?: number;
680
+ /** The maximum number of Snapshots to keep for the hourly schedule */
681
+ snapshotsToKeep?: number;
682
+ }
683
+ interface ZoneConfiguration {
684
+ zone?: string;
685
+ }
686
+ interface ActiveDirectoriesResource {
687
+ /** CreateActiveDirectory Creates the active directory specified in the request. */
688
+ create(request: {
689
+ /** V1 error format. */
690
+ '$.xgafv'?: string;
691
+ /** OAuth access token. */
692
+ access_token?: string;
693
+ /** Required. ID of the active directory to create. Must be unique within the parent resource. Must contain only letters, numbers and hyphen, with the first character a letter , the last a letter or a number, and a 63 character maximum. */
694
+ activeDirectoryId?: string;
695
+ /** Data format for response. */
696
+ alt?: string;
697
+ /** JSONP */
698
+ callback?: string;
699
+ /** Selector specifying which fields to include in a partial response. */
700
+ fields?: string;
701
+ /** 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. */
702
+ key?: string;
703
+ /** OAuth 2.0 token for the current user. */
704
+ oauth_token?: string;
705
+ /** Required. Value for parent. */
706
+ parent: string;
707
+ /** Returns response with indentations and line breaks. */
708
+ prettyPrint?: boolean;
709
+ /** 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. */
710
+ quotaUser?: string;
711
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
712
+ upload_protocol?: string;
713
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
714
+ uploadType?: string;
715
+ /** Request body */
716
+ resource: ActiveDirectory;
717
+ }): Request<Operation>;
718
+ create(
719
+ request: {
720
+ /** V1 error format. */
721
+ '$.xgafv'?: string;
722
+ /** OAuth access token. */
723
+ access_token?: string;
724
+ /** Required. ID of the active directory to create. Must be unique within the parent resource. Must contain only letters, numbers and hyphen, with the first character a letter , the last a letter or a number, and a 63 character maximum. */
725
+ activeDirectoryId?: string;
726
+ /** Data format for response. */
727
+ alt?: string;
728
+ /** JSONP */
729
+ callback?: string;
730
+ /** Selector specifying which fields to include in a partial response. */
731
+ fields?: string;
732
+ /** 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. */
733
+ key?: string;
734
+ /** OAuth 2.0 token for the current user. */
735
+ oauth_token?: string;
736
+ /** Required. Value for parent. */
737
+ parent: string;
738
+ /** Returns response with indentations and line breaks. */
739
+ prettyPrint?: boolean;
740
+ /** 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. */
741
+ quotaUser?: string;
742
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
743
+ upload_protocol?: string;
744
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
745
+ uploadType?: string;
746
+ },
747
+ body: ActiveDirectory
748
+ ): Request<Operation>;
749
+ /** Delete the active directory specified in the request. */
750
+ delete(request?: {
751
+ /** V1 error format. */
752
+ '$.xgafv'?: string;
753
+ /** OAuth access token. */
754
+ access_token?: string;
755
+ /** Data format for response. */
756
+ alt?: string;
757
+ /** JSONP */
758
+ callback?: string;
759
+ /** Selector specifying which fields to include in a partial response. */
760
+ fields?: string;
761
+ /** 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. */
762
+ key?: string;
763
+ /** Required. Name of the active directory. */
764
+ name: string;
765
+ /** OAuth 2.0 token for the current user. */
766
+ oauth_token?: string;
767
+ /** Returns response with indentations and line breaks. */
768
+ prettyPrint?: boolean;
769
+ /** 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. */
770
+ quotaUser?: string;
771
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
772
+ upload_protocol?: string;
773
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
774
+ uploadType?: string;
775
+ }): Request<Operation>;
776
+ /** Describes a specified active directory. */
777
+ get(request?: {
778
+ /** V1 error format. */
779
+ '$.xgafv'?: string;
780
+ /** OAuth access token. */
781
+ access_token?: string;
782
+ /** Data format for response. */
783
+ alt?: string;
784
+ /** JSONP */
785
+ callback?: string;
786
+ /** Selector specifying which fields to include in a partial response. */
787
+ fields?: string;
788
+ /** 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. */
789
+ key?: string;
790
+ /** Required. Name of the active directory. */
791
+ name: string;
792
+ /** OAuth 2.0 token for the current user. */
793
+ oauth_token?: string;
794
+ /** Returns response with indentations and line breaks. */
795
+ prettyPrint?: boolean;
796
+ /** 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. */
797
+ quotaUser?: string;
798
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
799
+ upload_protocol?: string;
800
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
801
+ uploadType?: string;
802
+ }): Request<ActiveDirectory>;
803
+ /** Lists active directories. */
804
+ list(request?: {
805
+ /** V1 error format. */
806
+ '$.xgafv'?: string;
807
+ /** OAuth access token. */
808
+ access_token?: string;
809
+ /** Data format for response. */
810
+ alt?: string;
811
+ /** JSONP */
812
+ callback?: string;
813
+ /** Selector specifying which fields to include in a partial response. */
814
+ fields?: string;
815
+ /** Filtering results */
816
+ filter?: string;
817
+ /** 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. */
818
+ key?: string;
819
+ /** OAuth 2.0 token for the current user. */
820
+ oauth_token?: string;
821
+ /** Hint for how to order the results */
822
+ orderBy?: string;
823
+ /** Requested page size. Server may return fewer items than requested. If unspecified, the server will pick an appropriate default. */
824
+ pageSize?: number;
825
+ /** A token identifying a page of results the server should return. */
826
+ pageToken?: string;
827
+ /** Required. Parent value for ListActiveDirectoriesRequest */
828
+ parent: string;
829
+ /** Returns response with indentations and line breaks. */
830
+ prettyPrint?: boolean;
831
+ /** 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. */
832
+ quotaUser?: string;
833
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
834
+ upload_protocol?: string;
835
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
836
+ uploadType?: string;
837
+ }): Request<ListActiveDirectoriesResponse>;
838
+ /** Update the parameters of an active directories. */
839
+ patch(request: {
840
+ /** V1 error format. */
841
+ '$.xgafv'?: string;
842
+ /** OAuth access token. */
843
+ access_token?: string;
844
+ /** Data format for response. */
845
+ alt?: string;
846
+ /** JSONP */
847
+ callback?: string;
848
+ /** Selector specifying which fields to include in a partial response. */
849
+ fields?: string;
850
+ /** 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. */
851
+ key?: string;
852
+ /** Identifier. The resource name of the active directory. Format: `projects/{project_number}/locations/{location_id}/activeDirectories/{active_directory_id}`. */
853
+ name: string;
854
+ /** OAuth 2.0 token for the current user. */
855
+ oauth_token?: string;
856
+ /** Returns response with indentations and line breaks. */
857
+ prettyPrint?: boolean;
858
+ /** 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. */
859
+ quotaUser?: string;
860
+ /** Required. Field mask is used to specify the fields to be overwritten in the Active Directory resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. */
861
+ updateMask?: string;
862
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
863
+ upload_protocol?: string;
864
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
865
+ uploadType?: string;
866
+ /** Request body */
867
+ resource: ActiveDirectory;
868
+ }): Request<Operation>;
869
+ patch(
870
+ request: {
871
+ /** V1 error format. */
872
+ '$.xgafv'?: string;
873
+ /** OAuth access token. */
874
+ access_token?: string;
875
+ /** Data format for response. */
876
+ alt?: string;
877
+ /** JSONP */
878
+ callback?: string;
879
+ /** Selector specifying which fields to include in a partial response. */
880
+ fields?: string;
881
+ /** 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. */
882
+ key?: string;
883
+ /** Identifier. The resource name of the active directory. Format: `projects/{project_number}/locations/{location_id}/activeDirectories/{active_directory_id}`. */
884
+ name: string;
885
+ /** OAuth 2.0 token for the current user. */
886
+ oauth_token?: string;
887
+ /** Returns response with indentations and line breaks. */
888
+ prettyPrint?: boolean;
889
+ /** 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. */
890
+ quotaUser?: string;
891
+ /** Required. Field mask is used to specify the fields to be overwritten in the Active Directory resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. */
892
+ updateMask?: string;
893
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
894
+ upload_protocol?: string;
895
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
896
+ uploadType?: string;
897
+ },
898
+ body: ActiveDirectory
899
+ ): Request<Operation>;
900
+ }
901
+ interface BackupPoliciesResource {
902
+ /** Creates new backup policy */
903
+ create(request: {
904
+ /** V1 error format. */
905
+ '$.xgafv'?: string;
906
+ /** OAuth access token. */
907
+ access_token?: string;
908
+ /** Data format for response. */
909
+ alt?: string;
910
+ /** Required. The ID to use for the backup policy. The ID must be unique within the specified location. Must contain only letters, numbers and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. */
911
+ backupPolicyId?: string;
912
+ /** JSONP */
913
+ callback?: string;
914
+ /** Selector specifying which fields to include in a partial response. */
915
+ fields?: string;
916
+ /** 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. */
917
+ key?: string;
918
+ /** OAuth 2.0 token for the current user. */
919
+ oauth_token?: string;
920
+ /** Required. The location to create the backup policies of, in the format `projects/{project_id}/locations/{location}` */
921
+ parent: string;
922
+ /** Returns response with indentations and line breaks. */
923
+ prettyPrint?: boolean;
924
+ /** 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. */
925
+ quotaUser?: string;
926
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
927
+ upload_protocol?: string;
928
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
929
+ uploadType?: string;
930
+ /** Request body */
931
+ resource: BackupPolicy;
932
+ }): Request<Operation>;
933
+ create(
934
+ request: {
935
+ /** V1 error format. */
936
+ '$.xgafv'?: string;
937
+ /** OAuth access token. */
938
+ access_token?: string;
939
+ /** Data format for response. */
940
+ alt?: string;
941
+ /** Required. The ID to use for the backup policy. The ID must be unique within the specified location. Must contain only letters, numbers and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. */
942
+ backupPolicyId?: string;
943
+ /** JSONP */
944
+ callback?: string;
945
+ /** Selector specifying which fields to include in a partial response. */
946
+ fields?: string;
947
+ /** 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. */
948
+ key?: string;
949
+ /** OAuth 2.0 token for the current user. */
950
+ oauth_token?: string;
951
+ /** Required. The location to create the backup policies of, in the format `projects/{project_id}/locations/{location}` */
952
+ parent: string;
953
+ /** Returns response with indentations and line breaks. */
954
+ prettyPrint?: boolean;
955
+ /** 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. */
956
+ quotaUser?: string;
957
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
958
+ upload_protocol?: string;
959
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
960
+ uploadType?: string;
961
+ },
962
+ body: BackupPolicy
963
+ ): Request<Operation>;
964
+ /** Warning! This operation will permanently delete the backup policy. */
965
+ delete(request?: {
966
+ /** V1 error format. */
967
+ '$.xgafv'?: string;
968
+ /** OAuth access token. */
969
+ access_token?: string;
970
+ /** Data format for response. */
971
+ alt?: string;
972
+ /** JSONP */
973
+ callback?: string;
974
+ /** Selector specifying which fields to include in a partial response. */
975
+ fields?: string;
976
+ /** 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. */
977
+ key?: string;
978
+ /** Required. The backup policy resource name, in the format `projects/{project_id}/locations/{location}/backupPolicies/{backup_policy_id}` */
979
+ name: string;
980
+ /** OAuth 2.0 token for the current user. */
981
+ oauth_token?: string;
982
+ /** Returns response with indentations and line breaks. */
983
+ prettyPrint?: boolean;
984
+ /** 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. */
985
+ quotaUser?: string;
986
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
987
+ upload_protocol?: string;
988
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
989
+ uploadType?: string;
990
+ }): Request<Operation>;
991
+ /** Returns the description of the specified backup policy by backup_policy_id. */
992
+ get(request?: {
993
+ /** V1 error format. */
994
+ '$.xgafv'?: string;
995
+ /** OAuth access token. */
996
+ access_token?: string;
997
+ /** Data format for response. */
998
+ alt?: string;
999
+ /** JSONP */
1000
+ callback?: string;
1001
+ /** Selector specifying which fields to include in a partial response. */
1002
+ fields?: string;
1003
+ /** 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. */
1004
+ key?: string;
1005
+ /** Required. The backupPolicy resource name, in the format `projects/{project_id}/locations/{location}/backupPolicies/{backup_policy_id}` */
1006
+ name: string;
1007
+ /** OAuth 2.0 token for the current user. */
1008
+ oauth_token?: string;
1009
+ /** Returns response with indentations and line breaks. */
1010
+ prettyPrint?: boolean;
1011
+ /** 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. */
1012
+ quotaUser?: string;
1013
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1014
+ upload_protocol?: string;
1015
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1016
+ uploadType?: string;
1017
+ }): Request<BackupPolicy>;
1018
+ /** Returns list of all available backup policies. */
1019
+ list(request?: {
1020
+ /** V1 error format. */
1021
+ '$.xgafv'?: string;
1022
+ /** OAuth access token. */
1023
+ access_token?: string;
1024
+ /** Data format for response. */
1025
+ alt?: string;
1026
+ /** JSONP */
1027
+ callback?: string;
1028
+ /** Selector specifying which fields to include in a partial response. */
1029
+ fields?: string;
1030
+ /** Filtering results */
1031
+ filter?: string;
1032
+ /** 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. */
1033
+ key?: string;
1034
+ /** OAuth 2.0 token for the current user. */
1035
+ oauth_token?: string;
1036
+ /** Hint for how to order the results */
1037
+ orderBy?: string;
1038
+ /** Requested page size. Server may return fewer items than requested. If unspecified, the server will pick an appropriate default. */
1039
+ pageSize?: number;
1040
+ /** A token identifying a page of results the server should return. */
1041
+ pageToken?: string;
1042
+ /** Required. Parent value for ListBackupPoliciesRequest */
1043
+ parent: string;
1044
+ /** Returns response with indentations and line breaks. */
1045
+ prettyPrint?: boolean;
1046
+ /** 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. */
1047
+ quotaUser?: string;
1048
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1049
+ upload_protocol?: string;
1050
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1051
+ uploadType?: string;
1052
+ }): Request<ListBackupPoliciesResponse>;
1053
+ /** Updates settings of a specific backup policy. */
1054
+ patch(request: {
1055
+ /** V1 error format. */
1056
+ '$.xgafv'?: string;
1057
+ /** OAuth access token. */
1058
+ access_token?: string;
1059
+ /** Data format for response. */
1060
+ alt?: string;
1061
+ /** JSONP */
1062
+ callback?: string;
1063
+ /** Selector specifying which fields to include in a partial response. */
1064
+ fields?: string;
1065
+ /** 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. */
1066
+ key?: string;
1067
+ /** Identifier. The resource name of the backup policy. Format: `projects/{project_id}/locations/{location}/backupPolicies/{backup_policy_id}`. */
1068
+ name: string;
1069
+ /** OAuth 2.0 token for the current user. */
1070
+ oauth_token?: string;
1071
+ /** Returns response with indentations and line breaks. */
1072
+ prettyPrint?: boolean;
1073
+ /** 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. */
1074
+ quotaUser?: string;
1075
+ /** Required. Field mask is used to specify the fields to be overwritten in the Backup Policy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. */
1076
+ updateMask?: string;
1077
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1078
+ upload_protocol?: string;
1079
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1080
+ uploadType?: string;
1081
+ /** Request body */
1082
+ resource: BackupPolicy;
1083
+ }): Request<Operation>;
1084
+ patch(
1085
+ request: {
1086
+ /** V1 error format. */
1087
+ '$.xgafv'?: string;
1088
+ /** OAuth access token. */
1089
+ access_token?: string;
1090
+ /** Data format for response. */
1091
+ alt?: string;
1092
+ /** JSONP */
1093
+ callback?: string;
1094
+ /** Selector specifying which fields to include in a partial response. */
1095
+ fields?: string;
1096
+ /** 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. */
1097
+ key?: string;
1098
+ /** Identifier. The resource name of the backup policy. Format: `projects/{project_id}/locations/{location}/backupPolicies/{backup_policy_id}`. */
1099
+ name: string;
1100
+ /** OAuth 2.0 token for the current user. */
1101
+ oauth_token?: string;
1102
+ /** Returns response with indentations and line breaks. */
1103
+ prettyPrint?: boolean;
1104
+ /** 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. */
1105
+ quotaUser?: string;
1106
+ /** Required. Field mask is used to specify the fields to be overwritten in the Backup Policy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. */
1107
+ updateMask?: string;
1108
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1109
+ upload_protocol?: string;
1110
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1111
+ uploadType?: string;
1112
+ },
1113
+ body: BackupPolicy
1114
+ ): Request<Operation>;
1115
+ }
1116
+ interface BackupsResource {
1117
+ /** Creates a backup from the volume specified in the request The backup can be created from the given snapshot if specified in the request. If no snapshot specified, there'll be a new snapshot taken to initiate the backup creation. */
1118
+ create(request: {
1119
+ /** V1 error format. */
1120
+ '$.xgafv'?: string;
1121
+ /** OAuth access token. */
1122
+ access_token?: string;
1123
+ /** Data format for response. */
1124
+ alt?: string;
1125
+ /** Required. The ID to use for the backup. The ID must be unique within the specified backupVault. Must contain only letters, numbers and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. */
1126
+ backupId?: string;
1127
+ /** JSONP */
1128
+ callback?: string;
1129
+ /** Selector specifying which fields to include in a partial response. */
1130
+ fields?: string;
1131
+ /** 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. */
1132
+ key?: string;
1133
+ /** OAuth 2.0 token for the current user. */
1134
+ oauth_token?: string;
1135
+ /** Required. The NetApp backupVault to create the backups of, in the format `projects/*‍/locations/*‍/backupVaults/{backup_vault_id}` */
1136
+ parent: string;
1137
+ /** Returns response with indentations and line breaks. */
1138
+ prettyPrint?: boolean;
1139
+ /** 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. */
1140
+ quotaUser?: string;
1141
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1142
+ upload_protocol?: string;
1143
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1144
+ uploadType?: string;
1145
+ /** Request body */
1146
+ resource: Backup;
1147
+ }): Request<Operation>;
1148
+ create(
1149
+ request: {
1150
+ /** V1 error format. */
1151
+ '$.xgafv'?: string;
1152
+ /** OAuth access token. */
1153
+ access_token?: string;
1154
+ /** Data format for response. */
1155
+ alt?: string;
1156
+ /** Required. The ID to use for the backup. The ID must be unique within the specified backupVault. Must contain only letters, numbers and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. */
1157
+ backupId?: string;
1158
+ /** JSONP */
1159
+ callback?: string;
1160
+ /** Selector specifying which fields to include in a partial response. */
1161
+ fields?: string;
1162
+ /** 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. */
1163
+ key?: string;
1164
+ /** OAuth 2.0 token for the current user. */
1165
+ oauth_token?: string;
1166
+ /** Required. The NetApp backupVault to create the backups of, in the format `projects/*‍/locations/*‍/backupVaults/{backup_vault_id}` */
1167
+ parent: string;
1168
+ /** Returns response with indentations and line breaks. */
1169
+ prettyPrint?: boolean;
1170
+ /** 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. */
1171
+ quotaUser?: string;
1172
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1173
+ upload_protocol?: string;
1174
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1175
+ uploadType?: string;
1176
+ },
1177
+ body: Backup
1178
+ ): Request<Operation>;
1179
+ /** Warning! This operation will permanently delete the backup. */
1180
+ delete(request?: {
1181
+ /** V1 error format. */
1182
+ '$.xgafv'?: string;
1183
+ /** OAuth access token. */
1184
+ access_token?: string;
1185
+ /** Data format for response. */
1186
+ alt?: string;
1187
+ /** JSONP */
1188
+ callback?: string;
1189
+ /** Selector specifying which fields to include in a partial response. */
1190
+ fields?: string;
1191
+ /** 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. */
1192
+ key?: string;
1193
+ /** Required. The backup resource name, in the format `projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}/backups/{backup_id}` */
1194
+ name: string;
1195
+ /** OAuth 2.0 token for the current user. */
1196
+ oauth_token?: string;
1197
+ /** Returns response with indentations and line breaks. */
1198
+ prettyPrint?: boolean;
1199
+ /** 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. */
1200
+ quotaUser?: string;
1201
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1202
+ upload_protocol?: string;
1203
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1204
+ uploadType?: string;
1205
+ }): Request<Operation>;
1206
+ /** Returns the description of the specified backup */
1207
+ get(request?: {
1208
+ /** V1 error format. */
1209
+ '$.xgafv'?: string;
1210
+ /** OAuth access token. */
1211
+ access_token?: string;
1212
+ /** Data format for response. */
1213
+ alt?: string;
1214
+ /** JSONP */
1215
+ callback?: string;
1216
+ /** Selector specifying which fields to include in a partial response. */
1217
+ fields?: string;
1218
+ /** 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. */
1219
+ key?: string;
1220
+ /** Required. The backup resource name, in the format `projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}/backups/{backup_id}` */
1221
+ name: string;
1222
+ /** OAuth 2.0 token for the current user. */
1223
+ oauth_token?: string;
1224
+ /** Returns response with indentations and line breaks. */
1225
+ prettyPrint?: boolean;
1226
+ /** 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. */
1227
+ quotaUser?: string;
1228
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1229
+ upload_protocol?: string;
1230
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1231
+ uploadType?: string;
1232
+ }): Request<Backup>;
1233
+ /** Returns descriptions of all backups for a backupVault. */
1234
+ list(request?: {
1235
+ /** V1 error format. */
1236
+ '$.xgafv'?: string;
1237
+ /** OAuth access token. */
1238
+ access_token?: string;
1239
+ /** Data format for response. */
1240
+ alt?: string;
1241
+ /** JSONP */
1242
+ callback?: string;
1243
+ /** Selector specifying which fields to include in a partial response. */
1244
+ fields?: string;
1245
+ /** The standard list filter. If specified, backups will be returned based on the attribute name that matches the filter expression. If empty, then no backups are filtered out. See https://google.aip.dev/160 */
1246
+ filter?: string;
1247
+ /** 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. */
1248
+ key?: string;
1249
+ /** OAuth 2.0 token for the current user. */
1250
+ oauth_token?: string;
1251
+ /** Sort results. Supported values are "name", "name desc" or "" (unsorted). */
1252
+ orderBy?: string;
1253
+ /** The maximum number of items to return. The service may return fewer than this value. The maximum value is 1000; values above 1000 will be coerced to 1000. */
1254
+ pageSize?: number;
1255
+ /** The next_page_token value to use if there are additional results to retrieve for this list request. */
1256
+ pageToken?: string;
1257
+ /** Required. The backupVault for which to retrieve backup information, in the format `projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}`. To retrieve backup information for all locations, use "-" for the `{location}` value. To retrieve backup information for all backupVaults, use "-" for the `{backup_vault_id}` value. To retrieve backup information for a volume, use "-" for the `{backup_vault_id}` value and specify volume full name with the filter. */
1258
+ parent: string;
1259
+ /** Returns response with indentations and line breaks. */
1260
+ prettyPrint?: boolean;
1261
+ /** 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. */
1262
+ quotaUser?: string;
1263
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1264
+ upload_protocol?: string;
1265
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1266
+ uploadType?: string;
1267
+ }): Request<ListBackupsResponse>;
1268
+ /** Update backup with full spec. */
1269
+ patch(request: {
1270
+ /** V1 error format. */
1271
+ '$.xgafv'?: string;
1272
+ /** OAuth access token. */
1273
+ access_token?: string;
1274
+ /** Data format for response. */
1275
+ alt?: string;
1276
+ /** JSONP */
1277
+ callback?: string;
1278
+ /** Selector specifying which fields to include in a partial response. */
1279
+ fields?: string;
1280
+ /** 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. */
1281
+ key?: string;
1282
+ /** Identifier. The resource name of the backup. Format: `projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}/backups/{backup_id}`. */
1283
+ name: string;
1284
+ /** OAuth 2.0 token for the current user. */
1285
+ oauth_token?: string;
1286
+ /** Returns response with indentations and line breaks. */
1287
+ prettyPrint?: boolean;
1288
+ /** 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. */
1289
+ quotaUser?: string;
1290
+ /** Required. Field mask is used to specify the fields to be overwritten in the Backup resource to be updated. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. */
1291
+ updateMask?: string;
1292
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1293
+ upload_protocol?: string;
1294
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1295
+ uploadType?: string;
1296
+ /** Request body */
1297
+ resource: Backup;
1298
+ }): Request<Operation>;
1299
+ patch(
1300
+ request: {
1301
+ /** V1 error format. */
1302
+ '$.xgafv'?: string;
1303
+ /** OAuth access token. */
1304
+ access_token?: string;
1305
+ /** Data format for response. */
1306
+ alt?: string;
1307
+ /** JSONP */
1308
+ callback?: string;
1309
+ /** Selector specifying which fields to include in a partial response. */
1310
+ fields?: string;
1311
+ /** 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. */
1312
+ key?: string;
1313
+ /** Identifier. The resource name of the backup. Format: `projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}/backups/{backup_id}`. */
1314
+ name: string;
1315
+ /** OAuth 2.0 token for the current user. */
1316
+ oauth_token?: string;
1317
+ /** Returns response with indentations and line breaks. */
1318
+ prettyPrint?: boolean;
1319
+ /** 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. */
1320
+ quotaUser?: string;
1321
+ /** Required. Field mask is used to specify the fields to be overwritten in the Backup resource to be updated. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. */
1322
+ updateMask?: string;
1323
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1324
+ upload_protocol?: string;
1325
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1326
+ uploadType?: string;
1327
+ },
1328
+ body: Backup
1329
+ ): Request<Operation>;
1330
+ }
1331
+ interface BackupVaultsResource {
1332
+ /** Creates new backup vault */
1333
+ create(request: {
1334
+ /** V1 error format. */
1335
+ '$.xgafv'?: string;
1336
+ /** OAuth access token. */
1337
+ access_token?: string;
1338
+ /** Data format for response. */
1339
+ alt?: string;
1340
+ /** Required. The ID to use for the backupVault. The ID must be unique within the specified location. Must contain only letters, numbers and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. */
1341
+ backupVaultId?: string;
1342
+ /** JSONP */
1343
+ callback?: string;
1344
+ /** Selector specifying which fields to include in a partial response. */
1345
+ fields?: string;
1346
+ /** 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. */
1347
+ key?: string;
1348
+ /** OAuth 2.0 token for the current user. */
1349
+ oauth_token?: string;
1350
+ /** Required. The location to create the backup vaults, in the format `projects/{project_id}/locations/{location}` */
1351
+ parent: string;
1352
+ /** Returns response with indentations and line breaks. */
1353
+ prettyPrint?: boolean;
1354
+ /** 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. */
1355
+ quotaUser?: string;
1356
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1357
+ upload_protocol?: string;
1358
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1359
+ uploadType?: string;
1360
+ /** Request body */
1361
+ resource: BackupVault;
1362
+ }): Request<Operation>;
1363
+ create(
1364
+ request: {
1365
+ /** V1 error format. */
1366
+ '$.xgafv'?: string;
1367
+ /** OAuth access token. */
1368
+ access_token?: string;
1369
+ /** Data format for response. */
1370
+ alt?: string;
1371
+ /** Required. The ID to use for the backupVault. The ID must be unique within the specified location. Must contain only letters, numbers and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. */
1372
+ backupVaultId?: string;
1373
+ /** JSONP */
1374
+ callback?: string;
1375
+ /** Selector specifying which fields to include in a partial response. */
1376
+ fields?: string;
1377
+ /** 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. */
1378
+ key?: string;
1379
+ /** OAuth 2.0 token for the current user. */
1380
+ oauth_token?: string;
1381
+ /** Required. The location to create the backup vaults, in the format `projects/{project_id}/locations/{location}` */
1382
+ parent: string;
1383
+ /** Returns response with indentations and line breaks. */
1384
+ prettyPrint?: boolean;
1385
+ /** 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. */
1386
+ quotaUser?: string;
1387
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1388
+ upload_protocol?: string;
1389
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1390
+ uploadType?: string;
1391
+ },
1392
+ body: BackupVault
1393
+ ): Request<Operation>;
1394
+ /** Warning! This operation will permanently delete the backup vault. */
1395
+ delete(request?: {
1396
+ /** V1 error format. */
1397
+ '$.xgafv'?: string;
1398
+ /** OAuth access token. */
1399
+ access_token?: string;
1400
+ /** Data format for response. */
1401
+ alt?: string;
1402
+ /** JSONP */
1403
+ callback?: string;
1404
+ /** Selector specifying which fields to include in a partial response. */
1405
+ fields?: string;
1406
+ /** 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. */
1407
+ key?: string;
1408
+ /** Required. The backupVault resource name, in the format `projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}` */
1409
+ name: string;
1410
+ /** OAuth 2.0 token for the current user. */
1411
+ oauth_token?: string;
1412
+ /** Returns response with indentations and line breaks. */
1413
+ prettyPrint?: boolean;
1414
+ /** 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. */
1415
+ quotaUser?: string;
1416
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1417
+ upload_protocol?: string;
1418
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1419
+ uploadType?: string;
1420
+ }): Request<Operation>;
1421
+ /** Returns the description of the specified backup vault */
1422
+ get(request?: {
1423
+ /** V1 error format. */
1424
+ '$.xgafv'?: string;
1425
+ /** OAuth access token. */
1426
+ access_token?: string;
1427
+ /** Data format for response. */
1428
+ alt?: string;
1429
+ /** JSONP */
1430
+ callback?: string;
1431
+ /** Selector specifying which fields to include in a partial response. */
1432
+ fields?: string;
1433
+ /** 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. */
1434
+ key?: string;
1435
+ /** Required. The backupVault resource name, in the format `projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}` */
1436
+ name: string;
1437
+ /** OAuth 2.0 token for the current user. */
1438
+ oauth_token?: string;
1439
+ /** Returns response with indentations and line breaks. */
1440
+ prettyPrint?: boolean;
1441
+ /** 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. */
1442
+ quotaUser?: string;
1443
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1444
+ upload_protocol?: string;
1445
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1446
+ uploadType?: string;
1447
+ }): Request<BackupVault>;
1448
+ /** Returns list of all available backup vaults. */
1449
+ list(request?: {
1450
+ /** V1 error format. */
1451
+ '$.xgafv'?: string;
1452
+ /** OAuth access token. */
1453
+ access_token?: string;
1454
+ /** Data format for response. */
1455
+ alt?: string;
1456
+ /** JSONP */
1457
+ callback?: string;
1458
+ /** Selector specifying which fields to include in a partial response. */
1459
+ fields?: string;
1460
+ /** List filter. */
1461
+ filter?: string;
1462
+ /** 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. */
1463
+ key?: string;
1464
+ /** OAuth 2.0 token for the current user. */
1465
+ oauth_token?: string;
1466
+ /** Sort results. Supported values are "name", "name desc" or "" (unsorted). */
1467
+ orderBy?: string;
1468
+ /** The maximum number of items to return. */
1469
+ pageSize?: number;
1470
+ /** The next_page_token value to use if there are additional results to retrieve for this list request. */
1471
+ pageToken?: string;
1472
+ /** Required. The location for which to retrieve backupVault information, in the format `projects/{project_id}/locations/{location}`. */
1473
+ parent: string;
1474
+ /** Returns response with indentations and line breaks. */
1475
+ prettyPrint?: boolean;
1476
+ /** 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. */
1477
+ quotaUser?: string;
1478
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1479
+ upload_protocol?: string;
1480
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1481
+ uploadType?: string;
1482
+ }): Request<ListBackupVaultsResponse>;
1483
+ /** Updates the settings of a specific backup vault. */
1484
+ patch(request: {
1485
+ /** V1 error format. */
1486
+ '$.xgafv'?: string;
1487
+ /** OAuth access token. */
1488
+ access_token?: string;
1489
+ /** Data format for response. */
1490
+ alt?: string;
1491
+ /** JSONP */
1492
+ callback?: string;
1493
+ /** Selector specifying which fields to include in a partial response. */
1494
+ fields?: string;
1495
+ /** 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. */
1496
+ key?: string;
1497
+ /** Identifier. The resource name of the backup vault. Format: `projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}`. */
1498
+ name: string;
1499
+ /** OAuth 2.0 token for the current user. */
1500
+ oauth_token?: string;
1501
+ /** Returns response with indentations and line breaks. */
1502
+ prettyPrint?: boolean;
1503
+ /** 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. */
1504
+ quotaUser?: string;
1505
+ /** Required. Field mask is used to specify the fields to be overwritten in the Backup resource to be updated. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. */
1506
+ updateMask?: string;
1507
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1508
+ upload_protocol?: string;
1509
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1510
+ uploadType?: string;
1511
+ /** Request body */
1512
+ resource: BackupVault;
1513
+ }): Request<Operation>;
1514
+ patch(
1515
+ request: {
1516
+ /** V1 error format. */
1517
+ '$.xgafv'?: string;
1518
+ /** OAuth access token. */
1519
+ access_token?: string;
1520
+ /** Data format for response. */
1521
+ alt?: string;
1522
+ /** JSONP */
1523
+ callback?: string;
1524
+ /** Selector specifying which fields to include in a partial response. */
1525
+ fields?: string;
1526
+ /** 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. */
1527
+ key?: string;
1528
+ /** Identifier. The resource name of the backup vault. Format: `projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}`. */
1529
+ name: string;
1530
+ /** OAuth 2.0 token for the current user. */
1531
+ oauth_token?: string;
1532
+ /** Returns response with indentations and line breaks. */
1533
+ prettyPrint?: boolean;
1534
+ /** 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. */
1535
+ quotaUser?: string;
1536
+ /** Required. Field mask is used to specify the fields to be overwritten in the Backup resource to be updated. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. */
1537
+ updateMask?: string;
1538
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1539
+ upload_protocol?: string;
1540
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1541
+ uploadType?: string;
1542
+ },
1543
+ body: BackupVault
1544
+ ): Request<Operation>;
1545
+ backups: BackupsResource;
1546
+ }
1547
+ interface KmsConfigsResource {
1548
+ /** Creates a new KMS config. */
1549
+ create(request: {
1550
+ /** V1 error format. */
1551
+ '$.xgafv'?: string;
1552
+ /** OAuth access token. */
1553
+ access_token?: string;
1554
+ /** Data format for response. */
1555
+ alt?: string;
1556
+ /** JSONP */
1557
+ callback?: string;
1558
+ /** Selector specifying which fields to include in a partial response. */
1559
+ fields?: string;
1560
+ /** 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. */
1561
+ key?: string;
1562
+ /** Required. Id of the requesting KmsConfig. Must be unique within the parent resource. Must contain only letters, numbers and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. */
1563
+ kmsConfigId?: string;
1564
+ /** OAuth 2.0 token for the current user. */
1565
+ oauth_token?: string;
1566
+ /** Required. Value for parent. */
1567
+ parent: string;
1568
+ /** Returns response with indentations and line breaks. */
1569
+ prettyPrint?: boolean;
1570
+ /** 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. */
1571
+ quotaUser?: string;
1572
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1573
+ upload_protocol?: string;
1574
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1575
+ uploadType?: string;
1576
+ /** Request body */
1577
+ resource: KmsConfig;
1578
+ }): Request<Operation>;
1579
+ create(
1580
+ request: {
1581
+ /** V1 error format. */
1582
+ '$.xgafv'?: string;
1583
+ /** OAuth access token. */
1584
+ access_token?: string;
1585
+ /** Data format for response. */
1586
+ alt?: string;
1587
+ /** JSONP */
1588
+ callback?: string;
1589
+ /** Selector specifying which fields to include in a partial response. */
1590
+ fields?: string;
1591
+ /** 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. */
1592
+ key?: string;
1593
+ /** Required. Id of the requesting KmsConfig. Must be unique within the parent resource. Must contain only letters, numbers and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. */
1594
+ kmsConfigId?: string;
1595
+ /** OAuth 2.0 token for the current user. */
1596
+ oauth_token?: string;
1597
+ /** Required. Value for parent. */
1598
+ parent: string;
1599
+ /** Returns response with indentations and line breaks. */
1600
+ prettyPrint?: boolean;
1601
+ /** 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. */
1602
+ quotaUser?: string;
1603
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1604
+ upload_protocol?: string;
1605
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1606
+ uploadType?: string;
1607
+ },
1608
+ body: KmsConfig
1609
+ ): Request<Operation>;
1610
+ /** Warning! This operation will permanently delete the Kms config. */
1611
+ delete(request?: {
1612
+ /** V1 error format. */
1613
+ '$.xgafv'?: string;
1614
+ /** OAuth access token. */
1615
+ access_token?: string;
1616
+ /** Data format for response. */
1617
+ alt?: string;
1618
+ /** JSONP */
1619
+ callback?: string;
1620
+ /** Selector specifying which fields to include in a partial response. */
1621
+ fields?: string;
1622
+ /** 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. */
1623
+ key?: string;
1624
+ /** Required. Name of the KmsConfig. */
1625
+ name: string;
1626
+ /** OAuth 2.0 token for the current user. */
1627
+ oauth_token?: string;
1628
+ /** Returns response with indentations and line breaks. */
1629
+ prettyPrint?: boolean;
1630
+ /** 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. */
1631
+ quotaUser?: string;
1632
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1633
+ upload_protocol?: string;
1634
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1635
+ uploadType?: string;
1636
+ }): Request<Operation>;
1637
+ /** Encrypt the existing volumes without CMEK encryption with the desired the KMS config for the whole region. */
1638
+ encrypt(request: {
1639
+ /** V1 error format. */
1640
+ '$.xgafv'?: string;
1641
+ /** OAuth access token. */
1642
+ access_token?: string;
1643
+ /** Data format for response. */
1644
+ alt?: string;
1645
+ /** JSONP */
1646
+ callback?: string;
1647
+ /** Selector specifying which fields to include in a partial response. */
1648
+ fields?: string;
1649
+ /** 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. */
1650
+ key?: string;
1651
+ /** Required. Name of the KmsConfig. */
1652
+ name: string;
1653
+ /** OAuth 2.0 token for the current user. */
1654
+ oauth_token?: string;
1655
+ /** Returns response with indentations and line breaks. */
1656
+ prettyPrint?: boolean;
1657
+ /** 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. */
1658
+ quotaUser?: string;
1659
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1660
+ upload_protocol?: string;
1661
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1662
+ uploadType?: string;
1663
+ /** Request body */
1664
+ resource: EncryptVolumesRequest;
1665
+ }): Request<Operation>;
1666
+ encrypt(
1667
+ request: {
1668
+ /** V1 error format. */
1669
+ '$.xgafv'?: string;
1670
+ /** OAuth access token. */
1671
+ access_token?: string;
1672
+ /** Data format for response. */
1673
+ alt?: string;
1674
+ /** JSONP */
1675
+ callback?: string;
1676
+ /** Selector specifying which fields to include in a partial response. */
1677
+ fields?: string;
1678
+ /** 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. */
1679
+ key?: string;
1680
+ /** Required. Name of the KmsConfig. */
1681
+ name: string;
1682
+ /** OAuth 2.0 token for the current user. */
1683
+ oauth_token?: string;
1684
+ /** Returns response with indentations and line breaks. */
1685
+ prettyPrint?: boolean;
1686
+ /** 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. */
1687
+ quotaUser?: string;
1688
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1689
+ upload_protocol?: string;
1690
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1691
+ uploadType?: string;
1692
+ },
1693
+ body: EncryptVolumesRequest
1694
+ ): Request<Operation>;
1695
+ /** Returns the description of the specified KMS config by kms_config_id. */
1696
+ get(request?: {
1697
+ /** V1 error format. */
1698
+ '$.xgafv'?: string;
1699
+ /** OAuth access token. */
1700
+ access_token?: string;
1701
+ /** Data format for response. */
1702
+ alt?: string;
1703
+ /** JSONP */
1704
+ callback?: string;
1705
+ /** Selector specifying which fields to include in a partial response. */
1706
+ fields?: string;
1707
+ /** 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. */
1708
+ key?: string;
1709
+ /** Required. Name of the KmsConfig */
1710
+ name: string;
1711
+ /** OAuth 2.0 token for the current user. */
1712
+ oauth_token?: string;
1713
+ /** Returns response with indentations and line breaks. */
1714
+ prettyPrint?: boolean;
1715
+ /** 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. */
1716
+ quotaUser?: string;
1717
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1718
+ upload_protocol?: string;
1719
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1720
+ uploadType?: string;
1721
+ }): Request<KmsConfig>;
1722
+ /** Returns descriptions of all KMS configs owned by the caller. */
1723
+ list(request?: {
1724
+ /** V1 error format. */
1725
+ '$.xgafv'?: string;
1726
+ /** OAuth access token. */
1727
+ access_token?: string;
1728
+ /** Data format for response. */
1729
+ alt?: string;
1730
+ /** JSONP */
1731
+ callback?: string;
1732
+ /** Selector specifying which fields to include in a partial response. */
1733
+ fields?: string;
1734
+ /** List filter. */
1735
+ filter?: string;
1736
+ /** 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. */
1737
+ key?: string;
1738
+ /** OAuth 2.0 token for the current user. */
1739
+ oauth_token?: string;
1740
+ /** Sort results. Supported values are "name", "name desc" or "" (unsorted). */
1741
+ orderBy?: string;
1742
+ /** The maximum number of items to return. */
1743
+ pageSize?: number;
1744
+ /** The next_page_token value to use if there are additional results to retrieve for this list request. */
1745
+ pageToken?: string;
1746
+ /** Required. Parent value */
1747
+ parent: string;
1748
+ /** Returns response with indentations and line breaks. */
1749
+ prettyPrint?: boolean;
1750
+ /** 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. */
1751
+ quotaUser?: string;
1752
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1753
+ upload_protocol?: string;
1754
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1755
+ uploadType?: string;
1756
+ }): Request<ListKmsConfigsResponse>;
1757
+ /** Updates the Kms config properties with the full spec */
1758
+ patch(request: {
1759
+ /** V1 error format. */
1760
+ '$.xgafv'?: string;
1761
+ /** OAuth access token. */
1762
+ access_token?: string;
1763
+ /** Data format for response. */
1764
+ alt?: string;
1765
+ /** JSONP */
1766
+ callback?: string;
1767
+ /** Selector specifying which fields to include in a partial response. */
1768
+ fields?: string;
1769
+ /** 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. */
1770
+ key?: string;
1771
+ /** Identifier. Name of the KmsConfig. */
1772
+ name: string;
1773
+ /** OAuth 2.0 token for the current user. */
1774
+ oauth_token?: string;
1775
+ /** Returns response with indentations and line breaks. */
1776
+ prettyPrint?: boolean;
1777
+ /** 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. */
1778
+ quotaUser?: string;
1779
+ /** Required. Field mask is used to specify the fields to be overwritten in the KmsConfig resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. */
1780
+ updateMask?: string;
1781
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1782
+ upload_protocol?: string;
1783
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1784
+ uploadType?: string;
1785
+ /** Request body */
1786
+ resource: KmsConfig;
1787
+ }): Request<Operation>;
1788
+ patch(
1789
+ request: {
1790
+ /** V1 error format. */
1791
+ '$.xgafv'?: string;
1792
+ /** OAuth access token. */
1793
+ access_token?: string;
1794
+ /** Data format for response. */
1795
+ alt?: string;
1796
+ /** JSONP */
1797
+ callback?: string;
1798
+ /** Selector specifying which fields to include in a partial response. */
1799
+ fields?: string;
1800
+ /** 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. */
1801
+ key?: string;
1802
+ /** Identifier. Name of the KmsConfig. */
1803
+ name: string;
1804
+ /** OAuth 2.0 token for the current user. */
1805
+ oauth_token?: string;
1806
+ /** Returns response with indentations and line breaks. */
1807
+ prettyPrint?: boolean;
1808
+ /** 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. */
1809
+ quotaUser?: string;
1810
+ /** Required. Field mask is used to specify the fields to be overwritten in the KmsConfig resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. */
1811
+ updateMask?: string;
1812
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1813
+ upload_protocol?: string;
1814
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1815
+ uploadType?: string;
1816
+ },
1817
+ body: KmsConfig
1818
+ ): Request<Operation>;
1819
+ /** Verifies KMS config reachability. */
1820
+ verify(request: {
1821
+ /** V1 error format. */
1822
+ '$.xgafv'?: string;
1823
+ /** OAuth access token. */
1824
+ access_token?: string;
1825
+ /** Data format for response. */
1826
+ alt?: string;
1827
+ /** JSONP */
1828
+ callback?: string;
1829
+ /** Selector specifying which fields to include in a partial response. */
1830
+ fields?: string;
1831
+ /** 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. */
1832
+ key?: string;
1833
+ /** Required. Name of the KMS Config to be verified. */
1834
+ name: string;
1835
+ /** OAuth 2.0 token for the current user. */
1836
+ oauth_token?: string;
1837
+ /** Returns response with indentations and line breaks. */
1838
+ prettyPrint?: boolean;
1839
+ /** 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. */
1840
+ quotaUser?: string;
1841
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1842
+ upload_protocol?: string;
1843
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1844
+ uploadType?: string;
1845
+ /** Request body */
1846
+ resource: VerifyKmsConfigRequest;
1847
+ }): Request<VerifyKmsConfigResponse>;
1848
+ verify(
1849
+ request: {
1850
+ /** V1 error format. */
1851
+ '$.xgafv'?: string;
1852
+ /** OAuth access token. */
1853
+ access_token?: string;
1854
+ /** Data format for response. */
1855
+ alt?: string;
1856
+ /** JSONP */
1857
+ callback?: string;
1858
+ /** Selector specifying which fields to include in a partial response. */
1859
+ fields?: string;
1860
+ /** 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. */
1861
+ key?: string;
1862
+ /** Required. Name of the KMS Config to be verified. */
1863
+ name: string;
1864
+ /** OAuth 2.0 token for the current user. */
1865
+ oauth_token?: string;
1866
+ /** Returns response with indentations and line breaks. */
1867
+ prettyPrint?: boolean;
1868
+ /** 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. */
1869
+ quotaUser?: string;
1870
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1871
+ upload_protocol?: string;
1872
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1873
+ uploadType?: string;
1874
+ },
1875
+ body: VerifyKmsConfigRequest
1876
+ ): Request<VerifyKmsConfigResponse>;
1877
+ }
1878
+ interface OperationsResource {
1879
+ /** Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`. */
1880
+ cancel(request: {
1881
+ /** V1 error format. */
1882
+ '$.xgafv'?: string;
1883
+ /** OAuth access token. */
1884
+ access_token?: string;
1885
+ /** Data format for response. */
1886
+ alt?: string;
1887
+ /** JSONP */
1888
+ callback?: string;
1889
+ /** Selector specifying which fields to include in a partial response. */
1890
+ fields?: string;
1891
+ /** 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. */
1892
+ key?: string;
1893
+ /** The name of the operation resource to be cancelled. */
1894
+ name: string;
1895
+ /** OAuth 2.0 token for the current user. */
1896
+ oauth_token?: string;
1897
+ /** Returns response with indentations and line breaks. */
1898
+ prettyPrint?: boolean;
1899
+ /** 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. */
1900
+ quotaUser?: string;
1901
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1902
+ upload_protocol?: string;
1903
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1904
+ uploadType?: string;
1905
+ /** Request body */
1906
+ resource: CancelOperationRequest;
1907
+ }): Request<{}>;
1908
+ cancel(
1909
+ request: {
1910
+ /** V1 error format. */
1911
+ '$.xgafv'?: string;
1912
+ /** OAuth access token. */
1913
+ access_token?: string;
1914
+ /** Data format for response. */
1915
+ alt?: string;
1916
+ /** JSONP */
1917
+ callback?: string;
1918
+ /** Selector specifying which fields to include in a partial response. */
1919
+ fields?: string;
1920
+ /** 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. */
1921
+ key?: string;
1922
+ /** The name of the operation resource to be cancelled. */
1923
+ name: string;
1924
+ /** OAuth 2.0 token for the current user. */
1925
+ oauth_token?: string;
1926
+ /** Returns response with indentations and line breaks. */
1927
+ prettyPrint?: boolean;
1928
+ /** 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. */
1929
+ quotaUser?: string;
1930
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1931
+ upload_protocol?: string;
1932
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1933
+ uploadType?: string;
1934
+ },
1935
+ body: CancelOperationRequest
1936
+ ): Request<{}>;
1937
+ /** Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. */
1938
+ delete(request?: {
1939
+ /** V1 error format. */
1940
+ '$.xgafv'?: string;
1941
+ /** OAuth access token. */
1942
+ access_token?: string;
1943
+ /** Data format for response. */
1944
+ alt?: string;
1945
+ /** JSONP */
1946
+ callback?: string;
1947
+ /** Selector specifying which fields to include in a partial response. */
1948
+ fields?: string;
1949
+ /** 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. */
1950
+ key?: string;
1951
+ /** The name of the operation resource to be deleted. */
1952
+ name: string;
1953
+ /** OAuth 2.0 token for the current user. */
1954
+ oauth_token?: string;
1955
+ /** Returns response with indentations and line breaks. */
1956
+ prettyPrint?: boolean;
1957
+ /** 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. */
1958
+ quotaUser?: string;
1959
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1960
+ upload_protocol?: string;
1961
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1962
+ uploadType?: string;
1963
+ }): Request<{}>;
1964
+ /** Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service. */
1965
+ get(request?: {
1966
+ /** V1 error format. */
1967
+ '$.xgafv'?: string;
1968
+ /** OAuth access token. */
1969
+ access_token?: string;
1970
+ /** Data format for response. */
1971
+ alt?: string;
1972
+ /** JSONP */
1973
+ callback?: string;
1974
+ /** Selector specifying which fields to include in a partial response. */
1975
+ fields?: string;
1976
+ /** 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. */
1977
+ key?: string;
1978
+ /** The name of the operation resource. */
1979
+ name: string;
1980
+ /** OAuth 2.0 token for the current user. */
1981
+ oauth_token?: string;
1982
+ /** Returns response with indentations and line breaks. */
1983
+ prettyPrint?: boolean;
1984
+ /** 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. */
1985
+ quotaUser?: string;
1986
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1987
+ upload_protocol?: string;
1988
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1989
+ uploadType?: string;
1990
+ }): Request<Operation>;
1991
+ /** Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. */
1992
+ list(request?: {
1993
+ /** V1 error format. */
1994
+ '$.xgafv'?: string;
1995
+ /** OAuth access token. */
1996
+ access_token?: string;
1997
+ /** Data format for response. */
1998
+ alt?: string;
1999
+ /** JSONP */
2000
+ callback?: string;
2001
+ /** Selector specifying which fields to include in a partial response. */
2002
+ fields?: string;
2003
+ /** The standard list filter. */
2004
+ filter?: string;
2005
+ /** 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. */
2006
+ key?: string;
2007
+ /** The name of the operation's parent resource. */
2008
+ name: string;
2009
+ /** OAuth 2.0 token for the current user. */
2010
+ oauth_token?: string;
2011
+ /** The standard list page size. */
2012
+ pageSize?: number;
2013
+ /** The standard list page token. */
2014
+ pageToken?: string;
2015
+ /** Returns response with indentations and line breaks. */
2016
+ prettyPrint?: boolean;
2017
+ /** 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. */
2018
+ quotaUser?: string;
2019
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2020
+ upload_protocol?: string;
2021
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2022
+ uploadType?: string;
2023
+ }): Request<ListOperationsResponse>;
2024
+ }
2025
+ interface StoragePoolsResource {
2026
+ /** Creates a new storage pool. */
2027
+ create(request: {
2028
+ /** V1 error format. */
2029
+ '$.xgafv'?: string;
2030
+ /** OAuth access token. */
2031
+ access_token?: string;
2032
+ /** Data format for response. */
2033
+ alt?: string;
2034
+ /** JSONP */
2035
+ callback?: string;
2036
+ /** Selector specifying which fields to include in a partial response. */
2037
+ fields?: string;
2038
+ /** 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. */
2039
+ key?: string;
2040
+ /** OAuth 2.0 token for the current user. */
2041
+ oauth_token?: string;
2042
+ /** Required. Value for parent. */
2043
+ parent: string;
2044
+ /** Returns response with indentations and line breaks. */
2045
+ prettyPrint?: boolean;
2046
+ /** 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. */
2047
+ quotaUser?: string;
2048
+ /** Required. Id of the requesting storage pool. Must be unique within the parent resource. Must contain only letters, numbers and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. */
2049
+ storagePoolId?: string;
2050
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2051
+ upload_protocol?: string;
2052
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2053
+ uploadType?: string;
2054
+ /** Request body */
2055
+ resource: StoragePool;
2056
+ }): Request<Operation>;
2057
+ create(
2058
+ request: {
2059
+ /** V1 error format. */
2060
+ '$.xgafv'?: string;
2061
+ /** OAuth access token. */
2062
+ access_token?: string;
2063
+ /** Data format for response. */
2064
+ alt?: string;
2065
+ /** JSONP */
2066
+ callback?: string;
2067
+ /** Selector specifying which fields to include in a partial response. */
2068
+ fields?: string;
2069
+ /** 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. */
2070
+ key?: string;
2071
+ /** OAuth 2.0 token for the current user. */
2072
+ oauth_token?: string;
2073
+ /** Required. Value for parent. */
2074
+ parent: string;
2075
+ /** Returns response with indentations and line breaks. */
2076
+ prettyPrint?: boolean;
2077
+ /** 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. */
2078
+ quotaUser?: string;
2079
+ /** Required. Id of the requesting storage pool. Must be unique within the parent resource. Must contain only letters, numbers and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. */
2080
+ storagePoolId?: string;
2081
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2082
+ upload_protocol?: string;
2083
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2084
+ uploadType?: string;
2085
+ },
2086
+ body: StoragePool
2087
+ ): Request<Operation>;
2088
+ /** Warning! This operation will permanently delete the storage pool. */
2089
+ delete(request?: {
2090
+ /** V1 error format. */
2091
+ '$.xgafv'?: string;
2092
+ /** OAuth access token. */
2093
+ access_token?: string;
2094
+ /** Data format for response. */
2095
+ alt?: string;
2096
+ /** JSONP */
2097
+ callback?: string;
2098
+ /** Selector specifying which fields to include in a partial response. */
2099
+ fields?: string;
2100
+ /** 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. */
2101
+ key?: string;
2102
+ /** Required. Name of the storage pool */
2103
+ name: string;
2104
+ /** OAuth 2.0 token for the current user. */
2105
+ oauth_token?: string;
2106
+ /** Returns response with indentations and line breaks. */
2107
+ prettyPrint?: boolean;
2108
+ /** 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. */
2109
+ quotaUser?: string;
2110
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2111
+ upload_protocol?: string;
2112
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2113
+ uploadType?: string;
2114
+ }): Request<Operation>;
2115
+ /** Returns the description of the specified storage pool by poolId. */
2116
+ get(request?: {
2117
+ /** V1 error format. */
2118
+ '$.xgafv'?: string;
2119
+ /** OAuth access token. */
2120
+ access_token?: string;
2121
+ /** Data format for response. */
2122
+ alt?: string;
2123
+ /** JSONP */
2124
+ callback?: string;
2125
+ /** Selector specifying which fields to include in a partial response. */
2126
+ fields?: string;
2127
+ /** 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. */
2128
+ key?: string;
2129
+ /** Required. Name of the storage pool */
2130
+ name: string;
2131
+ /** OAuth 2.0 token for the current user. */
2132
+ oauth_token?: string;
2133
+ /** Returns response with indentations and line breaks. */
2134
+ prettyPrint?: boolean;
2135
+ /** 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. */
2136
+ quotaUser?: string;
2137
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2138
+ upload_protocol?: string;
2139
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2140
+ uploadType?: string;
2141
+ }): Request<StoragePool>;
2142
+ /** Returns descriptions of all storage pools owned by the caller. */
2143
+ list(request?: {
2144
+ /** V1 error format. */
2145
+ '$.xgafv'?: string;
2146
+ /** OAuth access token. */
2147
+ access_token?: string;
2148
+ /** Data format for response. */
2149
+ alt?: string;
2150
+ /** JSONP */
2151
+ callback?: string;
2152
+ /** Selector specifying which fields to include in a partial response. */
2153
+ fields?: string;
2154
+ /** Optional. List filter. */
2155
+ filter?: string;
2156
+ /** 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. */
2157
+ key?: string;
2158
+ /** OAuth 2.0 token for the current user. */
2159
+ oauth_token?: string;
2160
+ /** Optional. Sort results. Supported values are "name", "name desc" or "" (unsorted). */
2161
+ orderBy?: string;
2162
+ /** Optional. The maximum number of items to return. */
2163
+ pageSize?: number;
2164
+ /** Optional. The next_page_token value to use if there are additional results to retrieve for this list request. */
2165
+ pageToken?: string;
2166
+ /** Required. Parent value */
2167
+ parent: string;
2168
+ /** Returns response with indentations and line breaks. */
2169
+ prettyPrint?: boolean;
2170
+ /** 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. */
2171
+ quotaUser?: string;
2172
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2173
+ upload_protocol?: string;
2174
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2175
+ uploadType?: string;
2176
+ }): Request<ListStoragePoolsResponse>;
2177
+ /** Updates the storage pool properties with the full spec */
2178
+ patch(request: {
2179
+ /** V1 error format. */
2180
+ '$.xgafv'?: string;
2181
+ /** OAuth access token. */
2182
+ access_token?: string;
2183
+ /** Data format for response. */
2184
+ alt?: string;
2185
+ /** JSONP */
2186
+ callback?: string;
2187
+ /** Selector specifying which fields to include in a partial response. */
2188
+ fields?: string;
2189
+ /** 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. */
2190
+ key?: string;
2191
+ /** Identifier. Name of the storage pool */
2192
+ name: string;
2193
+ /** OAuth 2.0 token for the current user. */
2194
+ oauth_token?: string;
2195
+ /** Returns response with indentations and line breaks. */
2196
+ prettyPrint?: boolean;
2197
+ /** 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. */
2198
+ quotaUser?: string;
2199
+ /** Required. Field mask is used to specify the fields to be overwritten in the StoragePool resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. */
2200
+ updateMask?: string;
2201
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2202
+ upload_protocol?: string;
2203
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2204
+ uploadType?: string;
2205
+ /** Request body */
2206
+ resource: StoragePool;
2207
+ }): Request<Operation>;
2208
+ patch(
2209
+ request: {
2210
+ /** V1 error format. */
2211
+ '$.xgafv'?: string;
2212
+ /** OAuth access token. */
2213
+ access_token?: string;
2214
+ /** Data format for response. */
2215
+ alt?: string;
2216
+ /** JSONP */
2217
+ callback?: string;
2218
+ /** Selector specifying which fields to include in a partial response. */
2219
+ fields?: string;
2220
+ /** 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. */
2221
+ key?: string;
2222
+ /** Identifier. Name of the storage pool */
2223
+ name: string;
2224
+ /** OAuth 2.0 token for the current user. */
2225
+ oauth_token?: string;
2226
+ /** Returns response with indentations and line breaks. */
2227
+ prettyPrint?: boolean;
2228
+ /** 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. */
2229
+ quotaUser?: string;
2230
+ /** Required. Field mask is used to specify the fields to be overwritten in the StoragePool resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. */
2231
+ updateMask?: string;
2232
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2233
+ upload_protocol?: string;
2234
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2235
+ uploadType?: string;
2236
+ },
2237
+ body: StoragePool
2238
+ ): Request<Operation>;
2239
+ /** This operation will switch the active/replica zone for a regional storagePool. */
2240
+ switch(request: {
2241
+ /** V1 error format. */
2242
+ '$.xgafv'?: string;
2243
+ /** OAuth access token. */
2244
+ access_token?: string;
2245
+ /** Data format for response. */
2246
+ alt?: string;
2247
+ /** JSONP */
2248
+ callback?: string;
2249
+ /** Selector specifying which fields to include in a partial response. */
2250
+ fields?: string;
2251
+ /** 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. */
2252
+ key?: string;
2253
+ /** Required. Name of the storage pool */
2254
+ name: string;
2255
+ /** OAuth 2.0 token for the current user. */
2256
+ oauth_token?: string;
2257
+ /** Returns response with indentations and line breaks. */
2258
+ prettyPrint?: boolean;
2259
+ /** 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. */
2260
+ quotaUser?: string;
2261
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2262
+ upload_protocol?: string;
2263
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2264
+ uploadType?: string;
2265
+ /** Request body */
2266
+ resource: SwitchActiveReplicaZoneRequest;
2267
+ }): Request<Operation>;
2268
+ switch(
2269
+ request: {
2270
+ /** V1 error format. */
2271
+ '$.xgafv'?: string;
2272
+ /** OAuth access token. */
2273
+ access_token?: string;
2274
+ /** Data format for response. */
2275
+ alt?: string;
2276
+ /** JSONP */
2277
+ callback?: string;
2278
+ /** Selector specifying which fields to include in a partial response. */
2279
+ fields?: string;
2280
+ /** 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. */
2281
+ key?: string;
2282
+ /** Required. Name of the storage pool */
2283
+ name: string;
2284
+ /** OAuth 2.0 token for the current user. */
2285
+ oauth_token?: string;
2286
+ /** Returns response with indentations and line breaks. */
2287
+ prettyPrint?: boolean;
2288
+ /** 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. */
2289
+ quotaUser?: string;
2290
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2291
+ upload_protocol?: string;
2292
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2293
+ uploadType?: string;
2294
+ },
2295
+ body: SwitchActiveReplicaZoneRequest
2296
+ ): Request<Operation>;
2297
+ }
2298
+ interface ReplicationsResource {
2299
+ /** Create a new replication for a volume. */
2300
+ create(request: {
2301
+ /** V1 error format. */
2302
+ '$.xgafv'?: string;
2303
+ /** OAuth access token. */
2304
+ access_token?: string;
2305
+ /** Data format for response. */
2306
+ alt?: string;
2307
+ /** JSONP */
2308
+ callback?: string;
2309
+ /** Selector specifying which fields to include in a partial response. */
2310
+ fields?: string;
2311
+ /** 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. */
2312
+ key?: string;
2313
+ /** OAuth 2.0 token for the current user. */
2314
+ oauth_token?: string;
2315
+ /** Required. The NetApp volume to create the replications of, in the format `projects/{project_id}/locations/{location}/volumes/{volume_id}` */
2316
+ parent: string;
2317
+ /** Returns response with indentations and line breaks. */
2318
+ prettyPrint?: boolean;
2319
+ /** 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. */
2320
+ quotaUser?: string;
2321
+ /** Required. ID of the replication to create. Must be unique within the parent resource. Must contain only letters, numbers and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. */
2322
+ replicationId?: string;
2323
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2324
+ upload_protocol?: string;
2325
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2326
+ uploadType?: string;
2327
+ /** Request body */
2328
+ resource: Replication;
2329
+ }): Request<Operation>;
2330
+ create(
2331
+ request: {
2332
+ /** V1 error format. */
2333
+ '$.xgafv'?: string;
2334
+ /** OAuth access token. */
2335
+ access_token?: string;
2336
+ /** Data format for response. */
2337
+ alt?: string;
2338
+ /** JSONP */
2339
+ callback?: string;
2340
+ /** Selector specifying which fields to include in a partial response. */
2341
+ fields?: string;
2342
+ /** 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. */
2343
+ key?: string;
2344
+ /** OAuth 2.0 token for the current user. */
2345
+ oauth_token?: string;
2346
+ /** Required. The NetApp volume to create the replications of, in the format `projects/{project_id}/locations/{location}/volumes/{volume_id}` */
2347
+ parent: string;
2348
+ /** Returns response with indentations and line breaks. */
2349
+ prettyPrint?: boolean;
2350
+ /** 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. */
2351
+ quotaUser?: string;
2352
+ /** Required. ID of the replication to create. Must be unique within the parent resource. Must contain only letters, numbers and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. */
2353
+ replicationId?: string;
2354
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2355
+ upload_protocol?: string;
2356
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2357
+ uploadType?: string;
2358
+ },
2359
+ body: Replication
2360
+ ): Request<Operation>;
2361
+ /** Deletes a replication. */
2362
+ delete(request?: {
2363
+ /** V1 error format. */
2364
+ '$.xgafv'?: string;
2365
+ /** OAuth access token. */
2366
+ access_token?: string;
2367
+ /** Data format for response. */
2368
+ alt?: string;
2369
+ /** JSONP */
2370
+ callback?: string;
2371
+ /** Selector specifying which fields to include in a partial response. */
2372
+ fields?: string;
2373
+ /** 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. */
2374
+ key?: string;
2375
+ /** Required. The replication resource name, in the format `projects/*‍/locations/*‍/volumes/*‍/replications/{replication_id}` */
2376
+ name: string;
2377
+ /** OAuth 2.0 token for the current user. */
2378
+ oauth_token?: string;
2379
+ /** Returns response with indentations and line breaks. */
2380
+ prettyPrint?: boolean;
2381
+ /** 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. */
2382
+ quotaUser?: string;
2383
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2384
+ upload_protocol?: string;
2385
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2386
+ uploadType?: string;
2387
+ }): Request<Operation>;
2388
+ /** Describe a replication for a volume. */
2389
+ get(request?: {
2390
+ /** V1 error format. */
2391
+ '$.xgafv'?: string;
2392
+ /** OAuth access token. */
2393
+ access_token?: string;
2394
+ /** Data format for response. */
2395
+ alt?: string;
2396
+ /** JSONP */
2397
+ callback?: string;
2398
+ /** Selector specifying which fields to include in a partial response. */
2399
+ fields?: string;
2400
+ /** 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. */
2401
+ key?: string;
2402
+ /** Required. The replication resource name, in the format `projects/{project_id}/locations/{location}/volumes/{volume_id}/replications/{replication_id}` */
2403
+ name: string;
2404
+ /** OAuth 2.0 token for the current user. */
2405
+ oauth_token?: string;
2406
+ /** Returns response with indentations and line breaks. */
2407
+ prettyPrint?: boolean;
2408
+ /** 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. */
2409
+ quotaUser?: string;
2410
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2411
+ upload_protocol?: string;
2412
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2413
+ uploadType?: string;
2414
+ }): Request<Replication>;
2415
+ /** Returns descriptions of all replications for a volume. */
2416
+ list(request?: {
2417
+ /** V1 error format. */
2418
+ '$.xgafv'?: string;
2419
+ /** OAuth access token. */
2420
+ access_token?: string;
2421
+ /** Data format for response. */
2422
+ alt?: string;
2423
+ /** JSONP */
2424
+ callback?: string;
2425
+ /** Selector specifying which fields to include in a partial response. */
2426
+ fields?: string;
2427
+ /** List filter. */
2428
+ filter?: string;
2429
+ /** 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. */
2430
+ key?: string;
2431
+ /** OAuth 2.0 token for the current user. */
2432
+ oauth_token?: string;
2433
+ /** Sort results. Supported values are "name", "name desc" or "" (unsorted). */
2434
+ orderBy?: string;
2435
+ /** The maximum number of items to return. */
2436
+ pageSize?: number;
2437
+ /** The next_page_token value to use if there are additional results to retrieve for this list request. */
2438
+ pageToken?: string;
2439
+ /** Required. The volume for which to retrieve replication information, in the format `projects/{project_id}/locations/{location}/volumes/{volume_id}`. */
2440
+ parent: string;
2441
+ /** Returns response with indentations and line breaks. */
2442
+ prettyPrint?: boolean;
2443
+ /** 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. */
2444
+ quotaUser?: string;
2445
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2446
+ upload_protocol?: string;
2447
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2448
+ uploadType?: string;
2449
+ }): Request<ListReplicationsResponse>;
2450
+ /** Updates the settings of a specific replication. */
2451
+ patch(request: {
2452
+ /** V1 error format. */
2453
+ '$.xgafv'?: string;
2454
+ /** OAuth access token. */
2455
+ access_token?: string;
2456
+ /** Data format for response. */
2457
+ alt?: string;
2458
+ /** JSONP */
2459
+ callback?: string;
2460
+ /** Selector specifying which fields to include in a partial response. */
2461
+ fields?: string;
2462
+ /** 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. */
2463
+ key?: string;
2464
+ /** Identifier. The resource name of the Replication. Format: `projects/{project_id}/locations/{location}/volumes/{volume_id}/replications/{replication_id}`. */
2465
+ name: string;
2466
+ /** OAuth 2.0 token for the current user. */
2467
+ oauth_token?: string;
2468
+ /** Returns response with indentations and line breaks. */
2469
+ prettyPrint?: boolean;
2470
+ /** 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. */
2471
+ quotaUser?: string;
2472
+ /** Required. Mask of fields to update. At least one path must be supplied in this field. */
2473
+ updateMask?: string;
2474
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2475
+ upload_protocol?: string;
2476
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2477
+ uploadType?: string;
2478
+ /** Request body */
2479
+ resource: Replication;
2480
+ }): Request<Operation>;
2481
+ patch(
2482
+ request: {
2483
+ /** V1 error format. */
2484
+ '$.xgafv'?: string;
2485
+ /** OAuth access token. */
2486
+ access_token?: string;
2487
+ /** Data format for response. */
2488
+ alt?: string;
2489
+ /** JSONP */
2490
+ callback?: string;
2491
+ /** Selector specifying which fields to include in a partial response. */
2492
+ fields?: string;
2493
+ /** 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. */
2494
+ key?: string;
2495
+ /** Identifier. The resource name of the Replication. Format: `projects/{project_id}/locations/{location}/volumes/{volume_id}/replications/{replication_id}`. */
2496
+ name: string;
2497
+ /** OAuth 2.0 token for the current user. */
2498
+ oauth_token?: string;
2499
+ /** Returns response with indentations and line breaks. */
2500
+ prettyPrint?: boolean;
2501
+ /** 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. */
2502
+ quotaUser?: string;
2503
+ /** Required. Mask of fields to update. At least one path must be supplied in this field. */
2504
+ updateMask?: string;
2505
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2506
+ upload_protocol?: string;
2507
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2508
+ uploadType?: string;
2509
+ },
2510
+ body: Replication
2511
+ ): Request<Operation>;
2512
+ /** Resume Cross Region Replication. */
2513
+ resume(request: {
2514
+ /** V1 error format. */
2515
+ '$.xgafv'?: string;
2516
+ /** OAuth access token. */
2517
+ access_token?: string;
2518
+ /** Data format for response. */
2519
+ alt?: string;
2520
+ /** JSONP */
2521
+ callback?: string;
2522
+ /** Selector specifying which fields to include in a partial response. */
2523
+ fields?: string;
2524
+ /** 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. */
2525
+ key?: string;
2526
+ /** Required. The resource name of the replication, in the format of projects/{project_id}/locations/{location}/volumes/{volume_id}/replications/{replication_id}. */
2527
+ name: string;
2528
+ /** OAuth 2.0 token for the current user. */
2529
+ oauth_token?: string;
2530
+ /** Returns response with indentations and line breaks. */
2531
+ prettyPrint?: boolean;
2532
+ /** 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. */
2533
+ quotaUser?: string;
2534
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2535
+ upload_protocol?: string;
2536
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2537
+ uploadType?: string;
2538
+ /** Request body */
2539
+ resource: ResumeReplicationRequest;
2540
+ }): Request<Operation>;
2541
+ resume(
2542
+ request: {
2543
+ /** V1 error format. */
2544
+ '$.xgafv'?: string;
2545
+ /** OAuth access token. */
2546
+ access_token?: string;
2547
+ /** Data format for response. */
2548
+ alt?: string;
2549
+ /** JSONP */
2550
+ callback?: string;
2551
+ /** Selector specifying which fields to include in a partial response. */
2552
+ fields?: string;
2553
+ /** 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. */
2554
+ key?: string;
2555
+ /** Required. The resource name of the replication, in the format of projects/{project_id}/locations/{location}/volumes/{volume_id}/replications/{replication_id}. */
2556
+ name: string;
2557
+ /** OAuth 2.0 token for the current user. */
2558
+ oauth_token?: string;
2559
+ /** Returns response with indentations and line breaks. */
2560
+ prettyPrint?: boolean;
2561
+ /** 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. */
2562
+ quotaUser?: string;
2563
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2564
+ upload_protocol?: string;
2565
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2566
+ uploadType?: string;
2567
+ },
2568
+ body: ResumeReplicationRequest
2569
+ ): Request<Operation>;
2570
+ /** Reverses direction of replication. Source becomes destination and destination becomes source. */
2571
+ reverseDirection(request: {
2572
+ /** V1 error format. */
2573
+ '$.xgafv'?: string;
2574
+ /** OAuth access token. */
2575
+ access_token?: string;
2576
+ /** Data format for response. */
2577
+ alt?: string;
2578
+ /** JSONP */
2579
+ callback?: string;
2580
+ /** Selector specifying which fields to include in a partial response. */
2581
+ fields?: string;
2582
+ /** 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. */
2583
+ key?: string;
2584
+ /** Required. The resource name of the replication, in the format of projects/{project_id}/locations/{location}/volumes/{volume_id}/replications/{replication_id}. */
2585
+ name: string;
2586
+ /** OAuth 2.0 token for the current user. */
2587
+ oauth_token?: string;
2588
+ /** Returns response with indentations and line breaks. */
2589
+ prettyPrint?: boolean;
2590
+ /** 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. */
2591
+ quotaUser?: string;
2592
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2593
+ upload_protocol?: string;
2594
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2595
+ uploadType?: string;
2596
+ /** Request body */
2597
+ resource: ReverseReplicationDirectionRequest;
2598
+ }): Request<Operation>;
2599
+ reverseDirection(
2600
+ request: {
2601
+ /** V1 error format. */
2602
+ '$.xgafv'?: string;
2603
+ /** OAuth access token. */
2604
+ access_token?: string;
2605
+ /** Data format for response. */
2606
+ alt?: string;
2607
+ /** JSONP */
2608
+ callback?: string;
2609
+ /** Selector specifying which fields to include in a partial response. */
2610
+ fields?: string;
2611
+ /** 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. */
2612
+ key?: string;
2613
+ /** Required. The resource name of the replication, in the format of projects/{project_id}/locations/{location}/volumes/{volume_id}/replications/{replication_id}. */
2614
+ name: string;
2615
+ /** OAuth 2.0 token for the current user. */
2616
+ oauth_token?: string;
2617
+ /** Returns response with indentations and line breaks. */
2618
+ prettyPrint?: boolean;
2619
+ /** 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. */
2620
+ quotaUser?: string;
2621
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2622
+ upload_protocol?: string;
2623
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2624
+ uploadType?: string;
2625
+ },
2626
+ body: ReverseReplicationDirectionRequest
2627
+ ): Request<Operation>;
2628
+ /** Stop Cross Region Replication. */
2629
+ stop(request: {
2630
+ /** V1 error format. */
2631
+ '$.xgafv'?: string;
2632
+ /** OAuth access token. */
2633
+ access_token?: string;
2634
+ /** Data format for response. */
2635
+ alt?: string;
2636
+ /** JSONP */
2637
+ callback?: string;
2638
+ /** Selector specifying which fields to include in a partial response. */
2639
+ fields?: string;
2640
+ /** 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. */
2641
+ key?: string;
2642
+ /** Required. The resource name of the replication, in the format of projects/{project_id}/locations/{location}/volumes/{volume_id}/replications/{replication_id}. */
2643
+ name: string;
2644
+ /** OAuth 2.0 token for the current user. */
2645
+ oauth_token?: string;
2646
+ /** Returns response with indentations and line breaks. */
2647
+ prettyPrint?: boolean;
2648
+ /** 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. */
2649
+ quotaUser?: string;
2650
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2651
+ upload_protocol?: string;
2652
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2653
+ uploadType?: string;
2654
+ /** Request body */
2655
+ resource: StopReplicationRequest;
2656
+ }): Request<Operation>;
2657
+ stop(
2658
+ request: {
2659
+ /** V1 error format. */
2660
+ '$.xgafv'?: string;
2661
+ /** OAuth access token. */
2662
+ access_token?: string;
2663
+ /** Data format for response. */
2664
+ alt?: string;
2665
+ /** JSONP */
2666
+ callback?: string;
2667
+ /** Selector specifying which fields to include in a partial response. */
2668
+ fields?: string;
2669
+ /** 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. */
2670
+ key?: string;
2671
+ /** Required. The resource name of the replication, in the format of projects/{project_id}/locations/{location}/volumes/{volume_id}/replications/{replication_id}. */
2672
+ name: string;
2673
+ /** OAuth 2.0 token for the current user. */
2674
+ oauth_token?: string;
2675
+ /** Returns response with indentations and line breaks. */
2676
+ prettyPrint?: boolean;
2677
+ /** 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. */
2678
+ quotaUser?: string;
2679
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2680
+ upload_protocol?: string;
2681
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2682
+ uploadType?: string;
2683
+ },
2684
+ body: StopReplicationRequest
2685
+ ): Request<Operation>;
2686
+ }
2687
+ interface SnapshotsResource {
2688
+ /** Create a new snapshot for a volume. */
2689
+ create(request: {
2690
+ /** V1 error format. */
2691
+ '$.xgafv'?: string;
2692
+ /** OAuth access token. */
2693
+ access_token?: string;
2694
+ /** Data format for response. */
2695
+ alt?: string;
2696
+ /** JSONP */
2697
+ callback?: string;
2698
+ /** Selector specifying which fields to include in a partial response. */
2699
+ fields?: string;
2700
+ /** 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. */
2701
+ key?: string;
2702
+ /** OAuth 2.0 token for the current user. */
2703
+ oauth_token?: string;
2704
+ /** Required. The NetApp volume to create the snapshots of, in the format `projects/{project_id}/locations/{location}/volumes/{volume_id}` */
2705
+ parent: string;
2706
+ /** Returns response with indentations and line breaks. */
2707
+ prettyPrint?: boolean;
2708
+ /** 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. */
2709
+ quotaUser?: string;
2710
+ /** Required. ID of the snapshot to create. Must be unique within the parent resource. Must contain only letters, numbers and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. */
2711
+ snapshotId?: string;
2712
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2713
+ upload_protocol?: string;
2714
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2715
+ uploadType?: string;
2716
+ /** Request body */
2717
+ resource: Snapshot;
2718
+ }): Request<Operation>;
2719
+ create(
2720
+ request: {
2721
+ /** V1 error format. */
2722
+ '$.xgafv'?: string;
2723
+ /** OAuth access token. */
2724
+ access_token?: string;
2725
+ /** Data format for response. */
2726
+ alt?: string;
2727
+ /** JSONP */
2728
+ callback?: string;
2729
+ /** Selector specifying which fields to include in a partial response. */
2730
+ fields?: string;
2731
+ /** 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. */
2732
+ key?: string;
2733
+ /** OAuth 2.0 token for the current user. */
2734
+ oauth_token?: string;
2735
+ /** Required. The NetApp volume to create the snapshots of, in the format `projects/{project_id}/locations/{location}/volumes/{volume_id}` */
2736
+ parent: string;
2737
+ /** Returns response with indentations and line breaks. */
2738
+ prettyPrint?: boolean;
2739
+ /** 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. */
2740
+ quotaUser?: string;
2741
+ /** Required. ID of the snapshot to create. Must be unique within the parent resource. Must contain only letters, numbers and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. */
2742
+ snapshotId?: string;
2743
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2744
+ upload_protocol?: string;
2745
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2746
+ uploadType?: string;
2747
+ },
2748
+ body: Snapshot
2749
+ ): Request<Operation>;
2750
+ /** Deletes a snapshot. */
2751
+ delete(request?: {
2752
+ /** V1 error format. */
2753
+ '$.xgafv'?: string;
2754
+ /** OAuth access token. */
2755
+ access_token?: string;
2756
+ /** Data format for response. */
2757
+ alt?: string;
2758
+ /** JSONP */
2759
+ callback?: string;
2760
+ /** Selector specifying which fields to include in a partial response. */
2761
+ fields?: string;
2762
+ /** 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. */
2763
+ key?: string;
2764
+ /** Required. The snapshot resource name, in the format `projects/*‍/locations/*‍/volumes/*‍/snapshots/{snapshot_id}` */
2765
+ name: string;
2766
+ /** OAuth 2.0 token for the current user. */
2767
+ oauth_token?: string;
2768
+ /** Returns response with indentations and line breaks. */
2769
+ prettyPrint?: boolean;
2770
+ /** 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. */
2771
+ quotaUser?: string;
2772
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2773
+ upload_protocol?: string;
2774
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2775
+ uploadType?: string;
2776
+ }): Request<Operation>;
2777
+ /** Describe a snapshot for a volume. */
2778
+ get(request?: {
2779
+ /** V1 error format. */
2780
+ '$.xgafv'?: string;
2781
+ /** OAuth access token. */
2782
+ access_token?: string;
2783
+ /** Data format for response. */
2784
+ alt?: string;
2785
+ /** JSONP */
2786
+ callback?: string;
2787
+ /** Selector specifying which fields to include in a partial response. */
2788
+ fields?: string;
2789
+ /** 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. */
2790
+ key?: string;
2791
+ /** Required. The snapshot resource name, in the format `projects/{project_id}/locations/{location}/volumes/{volume_id}/snapshots/{snapshot_id}` */
2792
+ name: string;
2793
+ /** OAuth 2.0 token for the current user. */
2794
+ oauth_token?: string;
2795
+ /** Returns response with indentations and line breaks. */
2796
+ prettyPrint?: boolean;
2797
+ /** 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. */
2798
+ quotaUser?: string;
2799
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2800
+ upload_protocol?: string;
2801
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2802
+ uploadType?: string;
2803
+ }): Request<Snapshot>;
2804
+ /** Returns descriptions of all snapshots for a volume. */
2805
+ list(request?: {
2806
+ /** V1 error format. */
2807
+ '$.xgafv'?: string;
2808
+ /** OAuth access token. */
2809
+ access_token?: string;
2810
+ /** Data format for response. */
2811
+ alt?: string;
2812
+ /** JSONP */
2813
+ callback?: string;
2814
+ /** Selector specifying which fields to include in a partial response. */
2815
+ fields?: string;
2816
+ /** List filter. */
2817
+ filter?: string;
2818
+ /** 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. */
2819
+ key?: string;
2820
+ /** OAuth 2.0 token for the current user. */
2821
+ oauth_token?: string;
2822
+ /** Sort results. Supported values are "name", "name desc" or "" (unsorted). */
2823
+ orderBy?: string;
2824
+ /** The maximum number of items to return. */
2825
+ pageSize?: number;
2826
+ /** The next_page_token value to use if there are additional results to retrieve for this list request. */
2827
+ pageToken?: string;
2828
+ /** Required. The volume for which to retrieve snapshot information, in the format `projects/{project_id}/locations/{location}/volumes/{volume_id}`. */
2829
+ parent: string;
2830
+ /** Returns response with indentations and line breaks. */
2831
+ prettyPrint?: boolean;
2832
+ /** 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. */
2833
+ quotaUser?: string;
2834
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2835
+ upload_protocol?: string;
2836
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2837
+ uploadType?: string;
2838
+ }): Request<ListSnapshotsResponse>;
2839
+ /** Updates the settings of a specific snapshot. */
2840
+ patch(request: {
2841
+ /** V1 error format. */
2842
+ '$.xgafv'?: string;
2843
+ /** OAuth access token. */
2844
+ access_token?: string;
2845
+ /** Data format for response. */
2846
+ alt?: string;
2847
+ /** JSONP */
2848
+ callback?: string;
2849
+ /** Selector specifying which fields to include in a partial response. */
2850
+ fields?: string;
2851
+ /** 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. */
2852
+ key?: string;
2853
+ /** Identifier. The resource name of the snapshot. Format: `projects/{project_id}/locations/{location}/volumes/{volume_id}/snapshots/{snapshot_id}`. */
2854
+ name: string;
2855
+ /** OAuth 2.0 token for the current user. */
2856
+ oauth_token?: string;
2857
+ /** Returns response with indentations and line breaks. */
2858
+ prettyPrint?: boolean;
2859
+ /** 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. */
2860
+ quotaUser?: string;
2861
+ /** Required. Mask of fields to update. At least one path must be supplied in this field. */
2862
+ updateMask?: string;
2863
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2864
+ upload_protocol?: string;
2865
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2866
+ uploadType?: string;
2867
+ /** Request body */
2868
+ resource: Snapshot;
2869
+ }): Request<Operation>;
2870
+ patch(
2871
+ request: {
2872
+ /** V1 error format. */
2873
+ '$.xgafv'?: string;
2874
+ /** OAuth access token. */
2875
+ access_token?: string;
2876
+ /** Data format for response. */
2877
+ alt?: string;
2878
+ /** JSONP */
2879
+ callback?: string;
2880
+ /** Selector specifying which fields to include in a partial response. */
2881
+ fields?: string;
2882
+ /** 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. */
2883
+ key?: string;
2884
+ /** Identifier. The resource name of the snapshot. Format: `projects/{project_id}/locations/{location}/volumes/{volume_id}/snapshots/{snapshot_id}`. */
2885
+ name: string;
2886
+ /** OAuth 2.0 token for the current user. */
2887
+ oauth_token?: string;
2888
+ /** Returns response with indentations and line breaks. */
2889
+ prettyPrint?: boolean;
2890
+ /** 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. */
2891
+ quotaUser?: string;
2892
+ /** Required. Mask of fields to update. At least one path must be supplied in this field. */
2893
+ updateMask?: string;
2894
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2895
+ upload_protocol?: string;
2896
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2897
+ uploadType?: string;
2898
+ },
2899
+ body: Snapshot
2900
+ ): Request<Operation>;
2901
+ }
2902
+ interface VolumesResource {
2903
+ /** Creates a new Volume in a given project and location. */
2904
+ create(request: {
2905
+ /** V1 error format. */
2906
+ '$.xgafv'?: string;
2907
+ /** OAuth access token. */
2908
+ access_token?: string;
2909
+ /** Data format for response. */
2910
+ alt?: string;
2911
+ /** JSONP */
2912
+ callback?: string;
2913
+ /** Selector specifying which fields to include in a partial response. */
2914
+ fields?: string;
2915
+ /** 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. */
2916
+ key?: string;
2917
+ /** OAuth 2.0 token for the current user. */
2918
+ oauth_token?: string;
2919
+ /** Required. Value for parent. */
2920
+ parent: string;
2921
+ /** Returns response with indentations and line breaks. */
2922
+ prettyPrint?: boolean;
2923
+ /** 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. */
2924
+ quotaUser?: string;
2925
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2926
+ upload_protocol?: string;
2927
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2928
+ uploadType?: string;
2929
+ /** Required. Id of the requesting volume. Must be unique within the parent resource. Must contain only letters, numbers and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. */
2930
+ volumeId?: string;
2931
+ /** Request body */
2932
+ resource: Volume;
2933
+ }): Request<Operation>;
2934
+ create(
2935
+ request: {
2936
+ /** V1 error format. */
2937
+ '$.xgafv'?: string;
2938
+ /** OAuth access token. */
2939
+ access_token?: string;
2940
+ /** Data format for response. */
2941
+ alt?: string;
2942
+ /** JSONP */
2943
+ callback?: string;
2944
+ /** Selector specifying which fields to include in a partial response. */
2945
+ fields?: string;
2946
+ /** 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. */
2947
+ key?: string;
2948
+ /** OAuth 2.0 token for the current user. */
2949
+ oauth_token?: string;
2950
+ /** Required. Value for parent. */
2951
+ parent: string;
2952
+ /** Returns response with indentations and line breaks. */
2953
+ prettyPrint?: boolean;
2954
+ /** 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. */
2955
+ quotaUser?: string;
2956
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2957
+ upload_protocol?: string;
2958
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2959
+ uploadType?: string;
2960
+ /** Required. Id of the requesting volume. Must be unique within the parent resource. Must contain only letters, numbers and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. */
2961
+ volumeId?: string;
2962
+ },
2963
+ body: Volume
2964
+ ): Request<Operation>;
2965
+ /** Deletes a single Volume. */
2966
+ delete(request?: {
2967
+ /** V1 error format. */
2968
+ '$.xgafv'?: string;
2969
+ /** OAuth access token. */
2970
+ access_token?: string;
2971
+ /** Data format for response. */
2972
+ alt?: string;
2973
+ /** JSONP */
2974
+ callback?: string;
2975
+ /** Selector specifying which fields to include in a partial response. */
2976
+ fields?: string;
2977
+ /** If this field is set as true, CCFE will not block the volume resource deletion even if it has any snapshots resource. (Otherwise, the request will only work if the volume has no snapshots.) */
2978
+ force?: boolean;
2979
+ /** 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. */
2980
+ key?: string;
2981
+ /** Required. Name of the volume */
2982
+ name: string;
2983
+ /** OAuth 2.0 token for the current user. */
2984
+ oauth_token?: string;
2985
+ /** Returns response with indentations and line breaks. */
2986
+ prettyPrint?: boolean;
2987
+ /** 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. */
2988
+ quotaUser?: string;
2989
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2990
+ upload_protocol?: string;
2991
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2992
+ uploadType?: string;
2993
+ }): Request<Operation>;
2994
+ /** Gets details of a single Volume. */
2995
+ get(request?: {
2996
+ /** V1 error format. */
2997
+ '$.xgafv'?: string;
2998
+ /** OAuth access token. */
2999
+ access_token?: string;
3000
+ /** Data format for response. */
3001
+ alt?: string;
3002
+ /** JSONP */
3003
+ callback?: string;
3004
+ /** Selector specifying which fields to include in a partial response. */
3005
+ fields?: string;
3006
+ /** 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. */
3007
+ key?: string;
3008
+ /** Required. Name of the volume */
3009
+ name: string;
3010
+ /** OAuth 2.0 token for the current user. */
3011
+ oauth_token?: string;
3012
+ /** Returns response with indentations and line breaks. */
3013
+ prettyPrint?: boolean;
3014
+ /** 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. */
3015
+ quotaUser?: string;
3016
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
3017
+ upload_protocol?: string;
3018
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
3019
+ uploadType?: string;
3020
+ }): Request<Volume>;
3021
+ /** Lists Volumes in a given project. */
3022
+ list(request?: {
3023
+ /** V1 error format. */
3024
+ '$.xgafv'?: string;
3025
+ /** OAuth access token. */
3026
+ access_token?: string;
3027
+ /** Data format for response. */
3028
+ alt?: string;
3029
+ /** JSONP */
3030
+ callback?: string;
3031
+ /** Selector specifying which fields to include in a partial response. */
3032
+ fields?: string;
3033
+ /** Filtering results */
3034
+ filter?: string;
3035
+ /** 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. */
3036
+ key?: string;
3037
+ /** OAuth 2.0 token for the current user. */
3038
+ oauth_token?: string;
3039
+ /** Hint for how to order the results */
3040
+ orderBy?: string;
3041
+ /** Requested page size. Server may return fewer items than requested. If unspecified, the server will pick an appropriate default. */
3042
+ pageSize?: number;
3043
+ /** A token identifying a page of results the server should return. */
3044
+ pageToken?: string;
3045
+ /** Required. Parent value for ListVolumesRequest */
3046
+ parent: string;
3047
+ /** Returns response with indentations and line breaks. */
3048
+ prettyPrint?: boolean;
3049
+ /** 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. */
3050
+ quotaUser?: string;
3051
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
3052
+ upload_protocol?: string;
3053
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
3054
+ uploadType?: string;
3055
+ }): Request<ListVolumesResponse>;
3056
+ /** Updates the parameters of a single Volume. */
3057
+ patch(request: {
3058
+ /** V1 error format. */
3059
+ '$.xgafv'?: string;
3060
+ /** OAuth access token. */
3061
+ access_token?: string;
3062
+ /** Data format for response. */
3063
+ alt?: string;
3064
+ /** JSONP */
3065
+ callback?: string;
3066
+ /** Selector specifying which fields to include in a partial response. */
3067
+ fields?: string;
3068
+ /** 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. */
3069
+ key?: string;
3070
+ /** Identifier. Name of the volume */
3071
+ name: string;
3072
+ /** OAuth 2.0 token for the current user. */
3073
+ oauth_token?: string;
3074
+ /** Returns response with indentations and line breaks. */
3075
+ prettyPrint?: boolean;
3076
+ /** 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. */
3077
+ quotaUser?: string;
3078
+ /** Required. Field mask is used to specify the fields to be overwritten in the Volume resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. */
3079
+ updateMask?: string;
3080
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
3081
+ upload_protocol?: string;
3082
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
3083
+ uploadType?: string;
3084
+ /** Request body */
3085
+ resource: Volume;
3086
+ }): Request<Operation>;
3087
+ patch(
3088
+ request: {
3089
+ /** V1 error format. */
3090
+ '$.xgafv'?: string;
3091
+ /** OAuth access token. */
3092
+ access_token?: string;
3093
+ /** Data format for response. */
3094
+ alt?: string;
3095
+ /** JSONP */
3096
+ callback?: string;
3097
+ /** Selector specifying which fields to include in a partial response. */
3098
+ fields?: string;
3099
+ /** 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. */
3100
+ key?: string;
3101
+ /** Identifier. Name of the volume */
3102
+ name: string;
3103
+ /** OAuth 2.0 token for the current user. */
3104
+ oauth_token?: string;
3105
+ /** Returns response with indentations and line breaks. */
3106
+ prettyPrint?: boolean;
3107
+ /** 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. */
3108
+ quotaUser?: string;
3109
+ /** Required. Field mask is used to specify the fields to be overwritten in the Volume resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. */
3110
+ updateMask?: string;
3111
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
3112
+ upload_protocol?: string;
3113
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
3114
+ uploadType?: string;
3115
+ },
3116
+ body: Volume
3117
+ ): Request<Operation>;
3118
+ /** Revert an existing volume to a specified snapshot. Warning! This operation will permanently revert all changes made after the snapshot was created. */
3119
+ revert(request: {
3120
+ /** V1 error format. */
3121
+ '$.xgafv'?: string;
3122
+ /** OAuth access token. */
3123
+ access_token?: string;
3124
+ /** Data format for response. */
3125
+ alt?: string;
3126
+ /** JSONP */
3127
+ callback?: string;
3128
+ /** Selector specifying which fields to include in a partial response. */
3129
+ fields?: string;
3130
+ /** 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. */
3131
+ key?: string;
3132
+ /** Required. The resource name of the volume, in the format of projects/{project_id}/locations/{location}/volumes/{volume_id}. */
3133
+ name: string;
3134
+ /** OAuth 2.0 token for the current user. */
3135
+ oauth_token?: string;
3136
+ /** Returns response with indentations and line breaks. */
3137
+ prettyPrint?: boolean;
3138
+ /** 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. */
3139
+ quotaUser?: string;
3140
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
3141
+ upload_protocol?: string;
3142
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
3143
+ uploadType?: string;
3144
+ /** Request body */
3145
+ resource: RevertVolumeRequest;
3146
+ }): Request<Operation>;
3147
+ revert(
3148
+ request: {
3149
+ /** V1 error format. */
3150
+ '$.xgafv'?: string;
3151
+ /** OAuth access token. */
3152
+ access_token?: string;
3153
+ /** Data format for response. */
3154
+ alt?: string;
3155
+ /** JSONP */
3156
+ callback?: string;
3157
+ /** Selector specifying which fields to include in a partial response. */
3158
+ fields?: string;
3159
+ /** 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. */
3160
+ key?: string;
3161
+ /** Required. The resource name of the volume, in the format of projects/{project_id}/locations/{location}/volumes/{volume_id}. */
3162
+ name: string;
3163
+ /** OAuth 2.0 token for the current user. */
3164
+ oauth_token?: string;
3165
+ /** Returns response with indentations and line breaks. */
3166
+ prettyPrint?: boolean;
3167
+ /** 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. */
3168
+ quotaUser?: string;
3169
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
3170
+ upload_protocol?: string;
3171
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
3172
+ uploadType?: string;
3173
+ },
3174
+ body: RevertVolumeRequest
3175
+ ): Request<Operation>;
3176
+ replications: ReplicationsResource;
3177
+ snapshots: SnapshotsResource;
3178
+ }
3179
+ interface LocationsResource {
3180
+ /** Gets information about a location. */
3181
+ get(request?: {
3182
+ /** V1 error format. */
3183
+ '$.xgafv'?: string;
3184
+ /** OAuth access token. */
3185
+ access_token?: string;
3186
+ /** Data format for response. */
3187
+ alt?: string;
3188
+ /** JSONP */
3189
+ callback?: string;
3190
+ /** Selector specifying which fields to include in a partial response. */
3191
+ fields?: string;
3192
+ /** 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. */
3193
+ key?: string;
3194
+ /** Resource name for the location. */
3195
+ name: string;
3196
+ /** OAuth 2.0 token for the current user. */
3197
+ oauth_token?: string;
3198
+ /** Returns response with indentations and line breaks. */
3199
+ prettyPrint?: boolean;
3200
+ /** 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. */
3201
+ quotaUser?: string;
3202
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
3203
+ upload_protocol?: string;
3204
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
3205
+ uploadType?: string;
3206
+ }): Request<Location>;
3207
+ /** Lists information about the supported locations for this service. */
3208
+ list(request?: {
3209
+ /** V1 error format. */
3210
+ '$.xgafv'?: string;
3211
+ /** OAuth access token. */
3212
+ access_token?: string;
3213
+ /** Data format for response. */
3214
+ alt?: string;
3215
+ /** JSONP */
3216
+ callback?: string;
3217
+ /** Selector specifying which fields to include in a partial response. */
3218
+ fields?: string;
3219
+ /** A filter to narrow down results to a preferred subset. The filtering language accepts strings like `"displayName=tokyo"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160). */
3220
+ filter?: string;
3221
+ /** 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. */
3222
+ key?: string;
3223
+ /** The resource that owns the locations collection, if applicable. */
3224
+ name: string;
3225
+ /** OAuth 2.0 token for the current user. */
3226
+ oauth_token?: string;
3227
+ /** The maximum number of results to return. If not set, the service selects a default. */
3228
+ pageSize?: number;
3229
+ /** A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page. */
3230
+ pageToken?: string;
3231
+ /** Returns response with indentations and line breaks. */
3232
+ prettyPrint?: boolean;
3233
+ /** 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. */
3234
+ quotaUser?: string;
3235
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
3236
+ upload_protocol?: string;
3237
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
3238
+ uploadType?: string;
3239
+ }): Request<ListLocationsResponse>;
3240
+ activeDirectories: ActiveDirectoriesResource;
3241
+ backupPolicies: BackupPoliciesResource;
3242
+ backupVaults: BackupVaultsResource;
3243
+ kmsConfigs: KmsConfigsResource;
3244
+ operations: OperationsResource;
3245
+ storagePools: StoragePoolsResource;
3246
+ volumes: VolumesResource;
3247
+ }
3248
+ interface ProjectsResource {
3249
+ locations: LocationsResource;
3250
+ }
3251
+
3252
+ const projects: ProjectsResource;
3253
+ }
3254
+ }