All Downloads are FREE. Search and download functionalities are using the official Maven repository.
Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
google.cloud.netapp.v1.cloud_netapp_service.proto Maven / Gradle / Ivy
// Copyright 2024 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
syntax = "proto3";
package google.cloud.netapp.v1;
import "google/api/annotations.proto";
import "google/api/client.proto";
import "google/api/field_behavior.proto";
import "google/api/resource.proto";
import "google/cloud/netapp/v1/active_directory.proto";
import "google/cloud/netapp/v1/backup.proto";
import "google/cloud/netapp/v1/backup_policy.proto";
import "google/cloud/netapp/v1/backup_vault.proto";
import "google/cloud/netapp/v1/kms.proto";
import "google/cloud/netapp/v1/replication.proto";
import "google/cloud/netapp/v1/snapshot.proto";
import "google/cloud/netapp/v1/storage_pool.proto";
import "google/cloud/netapp/v1/volume.proto";
import "google/longrunning/operations.proto";
import "google/protobuf/empty.proto";
import "google/protobuf/timestamp.proto";
option csharp_namespace = "Google.Cloud.NetApp.V1";
option go_package = "cloud.google.com/go/netapp/apiv1/netapppb;netapppb";
option java_multiple_files = true;
option java_outer_classname = "CloudNetappServiceProto";
option java_package = "com.google.cloud.netapp.v1";
option php_namespace = "Google\\Cloud\\NetApp\\V1";
option ruby_package = "Google::Cloud::NetApp::V1";
option (google.api.resource_definition) = {
type: "compute.googleapis.com/Network"
pattern: "projects/{project}/global/networks/{network}"
};
// NetApp Files Google Cloud Service
service NetApp {
option (google.api.default_host) = "netapp.googleapis.com";
option (google.api.oauth_scopes) =
"https://www.googleapis.com/auth/cloud-platform";
// Returns descriptions of all storage pools owned by the caller.
rpc ListStoragePools(ListStoragePoolsRequest)
returns (ListStoragePoolsResponse) {
option (google.api.http) = {
get: "/v1/{parent=projects/*/locations/*}/storagePools"
};
option (google.api.method_signature) = "parent";
}
// Creates a new storage pool.
rpc CreateStoragePool(CreateStoragePoolRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1/{parent=projects/*/locations/*}/storagePools"
body: "storage_pool"
};
option (google.api.method_signature) =
"parent,storage_pool,storage_pool_id";
option (google.longrunning.operation_info) = {
response_type: "StoragePool"
metadata_type: "OperationMetadata"
};
}
// Returns the description of the specified storage pool by poolId.
rpc GetStoragePool(GetStoragePoolRequest) returns (StoragePool) {
option (google.api.http) = {
get: "/v1/{name=projects/*/locations/*/storagePools/*}"
};
option (google.api.method_signature) = "name";
}
// Updates the storage pool properties with the full spec
rpc UpdateStoragePool(UpdateStoragePoolRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
patch: "/v1/{storage_pool.name=projects/*/locations/*/storagePools/*}"
body: "storage_pool"
};
option (google.api.method_signature) = "storage_pool,update_mask";
option (google.longrunning.operation_info) = {
response_type: "StoragePool"
metadata_type: "OperationMetadata"
};
}
// Warning! This operation will permanently delete the storage pool.
rpc DeleteStoragePool(DeleteStoragePoolRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
delete: "/v1/{name=projects/*/locations/*/storagePools/*}"
};
option (google.api.method_signature) = "name";
option (google.longrunning.operation_info) = {
response_type: "google.protobuf.Empty"
metadata_type: "OperationMetadata"
};
}
// This operation will switch the active/replica zone for a regional
// storagePool.
rpc SwitchActiveReplicaZone(SwitchActiveReplicaZoneRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1/{name=projects/*/locations/*/storagePools/*}:switch"
body: "*"
};
option (google.longrunning.operation_info) = {
response_type: "StoragePool"
metadata_type: "OperationMetadata"
};
}
// Lists Volumes in a given project.
rpc ListVolumes(ListVolumesRequest) returns (ListVolumesResponse) {
option (google.api.http) = {
get: "/v1/{parent=projects/*/locations/*}/volumes"
};
option (google.api.method_signature) = "parent";
}
// Gets details of a single Volume.
rpc GetVolume(GetVolumeRequest) returns (Volume) {
option (google.api.http) = {
get: "/v1/{name=projects/*/locations/*/volumes/*}"
};
option (google.api.method_signature) = "name";
}
// Creates a new Volume in a given project and location.
rpc CreateVolume(CreateVolumeRequest) returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1/{parent=projects/*/locations/*}/volumes"
body: "volume"
};
option (google.api.method_signature) = "parent,volume,volume_id";
option (google.longrunning.operation_info) = {
response_type: "Volume"
metadata_type: "OperationMetadata"
};
}
// Updates the parameters of a single Volume.
rpc UpdateVolume(UpdateVolumeRequest) returns (google.longrunning.Operation) {
option (google.api.http) = {
patch: "/v1/{volume.name=projects/*/locations/*/volumes/*}"
body: "volume"
};
option (google.api.method_signature) = "volume,update_mask";
option (google.longrunning.operation_info) = {
response_type: "Volume"
metadata_type: "OperationMetadata"
};
}
// Deletes a single Volume.
rpc DeleteVolume(DeleteVolumeRequest) returns (google.longrunning.Operation) {
option (google.api.http) = {
delete: "/v1/{name=projects/*/locations/*/volumes/*}"
};
option (google.api.method_signature) = "name";
option (google.longrunning.operation_info) = {
response_type: "google.protobuf.Empty"
metadata_type: "OperationMetadata"
};
}
// Revert an existing volume to a specified snapshot.
// Warning! This operation will permanently revert all changes made after the
// snapshot was created.
rpc RevertVolume(RevertVolumeRequest) returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1/{name=projects/*/locations/*/volumes/*}:revert"
body: "*"
};
option (google.longrunning.operation_info) = {
response_type: "Volume"
metadata_type: "OperationMetadata"
};
}
// Returns descriptions of all snapshots for a volume.
rpc ListSnapshots(ListSnapshotsRequest) returns (ListSnapshotsResponse) {
option (google.api.http) = {
get: "/v1/{parent=projects/*/locations/*/volumes/*}/snapshots"
};
option (google.api.method_signature) = "parent";
}
// Describe a snapshot for a volume.
rpc GetSnapshot(GetSnapshotRequest) returns (Snapshot) {
option (google.api.http) = {
get: "/v1/{name=projects/*/locations/*/volumes/*/snapshots/*}"
};
option (google.api.method_signature) = "name";
}
// Create a new snapshot for a volume.
rpc CreateSnapshot(CreateSnapshotRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1/{parent=projects/*/locations/*/volumes/*}/snapshots"
body: "snapshot"
};
option (google.api.method_signature) = "parent,snapshot,snapshot_id";
option (google.longrunning.operation_info) = {
response_type: "Snapshot"
metadata_type: "OperationMetadata"
};
}
// Deletes a snapshot.
rpc DeleteSnapshot(DeleteSnapshotRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
delete: "/v1/{name=projects/*/locations/*/volumes/*/snapshots/*}"
};
option (google.api.method_signature) = "name";
option (google.longrunning.operation_info) = {
response_type: "google.protobuf.Empty"
metadata_type: "OperationMetadata"
};
}
// Updates the settings of a specific snapshot.
rpc UpdateSnapshot(UpdateSnapshotRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
patch: "/v1/{snapshot.name=projects/*/locations/*/volumes/*/snapshots/*}"
body: "snapshot"
};
option (google.api.method_signature) = "snapshot,update_mask";
option (google.longrunning.operation_info) = {
response_type: "Snapshot"
metadata_type: "OperationMetadata"
};
}
// Lists active directories.
rpc ListActiveDirectories(ListActiveDirectoriesRequest)
returns (ListActiveDirectoriesResponse) {
option (google.api.http) = {
get: "/v1/{parent=projects/*/locations/*}/activeDirectories"
};
option (google.api.method_signature) = "parent";
}
// Describes a specified active directory.
rpc GetActiveDirectory(GetActiveDirectoryRequest) returns (ActiveDirectory) {
option (google.api.http) = {
get: "/v1/{name=projects/*/locations/*/activeDirectories/*}"
};
option (google.api.method_signature) = "name";
}
// CreateActiveDirectory
// Creates the active directory specified in the request.
rpc CreateActiveDirectory(CreateActiveDirectoryRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1/{parent=projects/*/locations/*}/activeDirectories"
body: "active_directory"
};
option (google.api.method_signature) =
"parent,active_directory,active_directory_id";
option (google.longrunning.operation_info) = {
response_type: "ActiveDirectory"
metadata_type: "OperationMetadata"
};
}
// Update the parameters of an active directories.
rpc UpdateActiveDirectory(UpdateActiveDirectoryRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
patch: "/v1/{active_directory.name=projects/*/locations/*/activeDirectories/*}"
body: "active_directory"
};
option (google.api.method_signature) = "active_directory,update_mask";
option (google.longrunning.operation_info) = {
response_type: "ActiveDirectory"
metadata_type: "OperationMetadata"
};
}
// Delete the active directory specified in the request.
rpc DeleteActiveDirectory(DeleteActiveDirectoryRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
delete: "/v1/{name=projects/*/locations/*/activeDirectories/*}"
};
option (google.api.method_signature) = "name";
option (google.longrunning.operation_info) = {
response_type: "google.protobuf.Empty"
metadata_type: "OperationMetadata"
};
}
// Returns descriptions of all KMS configs owned by the caller.
rpc ListKmsConfigs(ListKmsConfigsRequest) returns (ListKmsConfigsResponse) {
option (google.api.http) = {
get: "/v1/{parent=projects/*/locations/*}/kmsConfigs"
};
option (google.api.method_signature) = "parent";
}
// Creates a new KMS config.
rpc CreateKmsConfig(CreateKmsConfigRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1/{parent=projects/*/locations/*}/kmsConfigs"
body: "kms_config"
};
option (google.api.method_signature) = "parent,kms_config,kms_config_id";
option (google.longrunning.operation_info) = {
response_type: "KmsConfig"
metadata_type: "OperationMetadata"
};
}
// Returns the description of the specified KMS config by kms_config_id.
rpc GetKmsConfig(GetKmsConfigRequest) returns (KmsConfig) {
option (google.api.http) = {
get: "/v1/{name=projects/*/locations/*/kmsConfigs/*}"
};
option (google.api.method_signature) = "name";
}
// Updates the Kms config properties with the full spec
rpc UpdateKmsConfig(UpdateKmsConfigRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
patch: "/v1/{kms_config.name=projects/*/locations/*/kmsConfigs/*}"
body: "kms_config"
};
option (google.api.method_signature) = "kms_config,update_mask";
option (google.longrunning.operation_info) = {
response_type: "KmsConfig"
metadata_type: "OperationMetadata"
};
}
// Encrypt the existing volumes without CMEK encryption with the desired the
// KMS config for the whole region.
rpc EncryptVolumes(EncryptVolumesRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1/{name=projects/*/locations/*/kmsConfigs/*}:encrypt"
body: "*"
};
option (google.longrunning.operation_info) = {
response_type: "KmsConfig"
metadata_type: "OperationMetadata"
};
}
// Verifies KMS config reachability.
rpc VerifyKmsConfig(VerifyKmsConfigRequest)
returns (VerifyKmsConfigResponse) {
option (google.api.http) = {
post: "/v1/{name=projects/*/locations/*/kmsConfigs/*}:verify"
body: "*"
};
}
// Warning! This operation will permanently delete the Kms config.
rpc DeleteKmsConfig(DeleteKmsConfigRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
delete: "/v1/{name=projects/*/locations/*/kmsConfigs/*}"
};
option (google.api.method_signature) = "name";
option (google.longrunning.operation_info) = {
response_type: "google.protobuf.Empty"
metadata_type: "OperationMetadata"
};
}
// Returns descriptions of all replications for a volume.
rpc ListReplications(ListReplicationsRequest)
returns (ListReplicationsResponse) {
option (google.api.http) = {
get: "/v1/{parent=projects/*/locations/*/volumes/*}/replications"
};
option (google.api.method_signature) = "parent";
}
// Describe a replication for a volume.
rpc GetReplication(GetReplicationRequest) returns (Replication) {
option (google.api.http) = {
get: "/v1/{name=projects/*/locations/*/volumes/*/replications/*}"
};
option (google.api.method_signature) = "name";
}
// Create a new replication for a volume.
rpc CreateReplication(CreateReplicationRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1/{parent=projects/*/locations/*/volumes/*}/replications"
body: "replication"
};
option (google.api.method_signature) = "parent,replication,replication_id";
option (google.longrunning.operation_info) = {
response_type: "Replication"
metadata_type: "OperationMetadata"
};
}
// Deletes a replication.
rpc DeleteReplication(DeleteReplicationRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
delete: "/v1/{name=projects/*/locations/*/volumes/*/replications/*}"
};
option (google.api.method_signature) = "name";
option (google.longrunning.operation_info) = {
response_type: "google.protobuf.Empty"
metadata_type: "OperationMetadata"
};
}
// Updates the settings of a specific replication.
rpc UpdateReplication(UpdateReplicationRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
patch: "/v1/{replication.name=projects/*/locations/*/volumes/*/replications/*}"
body: "replication"
};
option (google.api.method_signature) = "replication,update_mask";
option (google.longrunning.operation_info) = {
response_type: "Replication"
metadata_type: "OperationMetadata"
};
}
// Stop Cross Region Replication.
rpc StopReplication(StopReplicationRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1/{name=projects/*/locations/*/volumes/*/replications/*}:stop"
body: "*"
};
option (google.longrunning.operation_info) = {
response_type: "Replication"
metadata_type: "OperationMetadata"
};
}
// Resume Cross Region Replication.
rpc ResumeReplication(ResumeReplicationRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1/{name=projects/*/locations/*/volumes/*/replications/*}:resume"
body: "*"
};
option (google.longrunning.operation_info) = {
response_type: "Replication"
metadata_type: "OperationMetadata"
};
}
// Reverses direction of replication. Source becomes destination and
// destination becomes source.
rpc ReverseReplicationDirection(ReverseReplicationDirectionRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1/{name=projects/*/locations/*/volumes/*/replications/*}:reverseDirection"
body: "*"
};
option (google.longrunning.operation_info) = {
response_type: "Replication"
metadata_type: "OperationMetadata"
};
}
// Creates new backup vault
rpc CreateBackupVault(CreateBackupVaultRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1/{parent=projects/*/locations/*}/backupVaults"
body: "backup_vault"
};
option (google.api.method_signature) =
"parent,backup_vault,backup_vault_id";
option (google.longrunning.operation_info) = {
response_type: "BackupVault"
metadata_type: "OperationMetadata"
};
}
// Returns the description of the specified backup vault
rpc GetBackupVault(GetBackupVaultRequest) returns (BackupVault) {
option (google.api.http) = {
get: "/v1/{name=projects/*/locations/*/backupVaults/*}"
};
option (google.api.method_signature) = "name";
}
// Returns list of all available backup vaults.
rpc ListBackupVaults(ListBackupVaultsRequest)
returns (ListBackupVaultsResponse) {
option (google.api.http) = {
get: "/v1/{parent=projects/*/locations/*}/backupVaults"
};
option (google.api.method_signature) = "parent";
}
// Updates the settings of a specific backup vault.
rpc UpdateBackupVault(UpdateBackupVaultRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
patch: "/v1/{backup_vault.name=projects/*/locations/*/backupVaults/*}"
body: "backup_vault"
};
option (google.api.method_signature) = "backup_vault,update_mask";
option (google.longrunning.operation_info) = {
response_type: "BackupVault"
metadata_type: "OperationMetadata"
};
}
// Warning! This operation will permanently delete the backup vault.
rpc DeleteBackupVault(DeleteBackupVaultRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
delete: "/v1/{name=projects/*/locations/*/backupVaults/*}"
};
option (google.api.method_signature) = "name";
option (google.longrunning.operation_info) = {
response_type: "google.protobuf.Empty"
metadata_type: "OperationMetadata"
};
}
// 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.
rpc CreateBackup(CreateBackupRequest) returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1/{parent=projects/*/locations/*/backupVaults/*}/backups"
body: "backup"
};
option (google.api.method_signature) = "parent,backup,backup_id";
option (google.longrunning.operation_info) = {
response_type: "Backup"
metadata_type: "OperationMetadata"
};
}
// Returns the description of the specified backup
rpc GetBackup(GetBackupRequest) returns (Backup) {
option (google.api.http) = {
get: "/v1/{name=projects/*/locations/*/backupVaults/*/backups/*}"
};
option (google.api.method_signature) = "name";
}
// Returns descriptions of all backups for a backupVault.
rpc ListBackups(ListBackupsRequest) returns (ListBackupsResponse) {
option (google.api.http) = {
get: "/v1/{parent=projects/*/locations/*/backupVaults/*}/backups"
};
option (google.api.method_signature) = "parent";
}
// Warning! This operation will permanently delete the backup.
rpc DeleteBackup(DeleteBackupRequest) returns (google.longrunning.Operation) {
option (google.api.http) = {
delete: "/v1/{name=projects/*/locations/*/backupVaults/*/backups/*}"
};
option (google.api.method_signature) = "name";
option (google.longrunning.operation_info) = {
response_type: "google.protobuf.Empty"
metadata_type: "OperationMetadata"
};
}
// Update backup with full spec.
rpc UpdateBackup(UpdateBackupRequest) returns (google.longrunning.Operation) {
option (google.api.http) = {
patch: "/v1/{backup.name=projects/*/locations/*/backupVaults/*/backups/*}"
body: "backup"
};
option (google.api.method_signature) = "backup,update_mask";
option (google.longrunning.operation_info) = {
response_type: "Backup"
metadata_type: "OperationMetadata"
};
}
// Creates new backup policy
rpc CreateBackupPolicy(CreateBackupPolicyRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1/{parent=projects/*/locations/*}/backupPolicies"
body: "backup_policy"
};
option (google.api.method_signature) =
"parent,backup_policy,backup_policy_id";
option (google.longrunning.operation_info) = {
response_type: "BackupPolicy"
metadata_type: "OperationMetadata"
};
}
// Returns the description of the specified backup policy by backup_policy_id.
rpc GetBackupPolicy(GetBackupPolicyRequest) returns (BackupPolicy) {
option (google.api.http) = {
get: "/v1/{name=projects/*/locations/*/backupPolicies/*}"
};
option (google.api.method_signature) = "name";
}
// Returns list of all available backup policies.
rpc ListBackupPolicies(ListBackupPoliciesRequest)
returns (ListBackupPoliciesResponse) {
option (google.api.http) = {
get: "/v1/{parent=projects/*/locations/*}/backupPolicies"
};
option (google.api.method_signature) = "parent";
}
// Updates settings of a specific backup policy.
rpc UpdateBackupPolicy(UpdateBackupPolicyRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
patch: "/v1/{backup_policy.name=projects/*/locations/*/backupPolicies/*}"
body: "backup_policy"
};
option (google.api.method_signature) = "backup_policy,update_mask";
option (google.longrunning.operation_info) = {
response_type: "BackupPolicy"
metadata_type: "OperationMetadata"
};
}
// Warning! This operation will permanently delete the backup policy.
rpc DeleteBackupPolicy(DeleteBackupPolicyRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
delete: "/v1/{name=projects/*/locations/*/backupPolicies/*}"
};
option (google.api.method_signature) = "name";
option (google.longrunning.operation_info) = {
response_type: "google.protobuf.Empty"
metadata_type: "OperationMetadata"
};
}
}
// Represents the metadata of the long-running operation.
message OperationMetadata {
// Output only. The time the operation was created.
google.protobuf.Timestamp create_time = 1
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The time the operation finished running.
google.protobuf.Timestamp end_time = 2
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. Server-defined resource path for the target of the operation.
string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. Name of the verb executed by the operation.
string verb = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. Human-readable status of the operation, if any.
string status_message = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
// 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][google.rpc.Status.code] of 1, corresponding to
// `Code.CANCELLED`.
bool requested_cancellation = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. API version used to start the operation.
string api_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
}