NetApp API . projects . locations . volumes

Instance Methods

quotaRules()

Returns the quotaRules Resource.

replications()

Returns the replications Resource.

snapshots()

Returns the snapshots Resource.

close()

Close httplib2 connections.

create(parent, body=None, volumeId=None, x__xgafv=None)

Creates a new Volume in a given project and location.

delete(name, force=None, x__xgafv=None)

Deletes a single Volume.

get(name, x__xgafv=None)

Gets details of a single Volume.

list(parent, filter=None, orderBy=None, pageSize=None, pageToken=None, x__xgafv=None)

Lists Volumes in a given project.

list_next()

Retrieves the next page of results.

patch(name, body=None, updateMask=None, x__xgafv=None)

Updates the parameters of a single Volume.

revert(name, body=None, x__xgafv=None)

Revert an existing volume to a specified snapshot. Warning! This operation will permanently revert all changes made after the snapshot was created.

Method Details

close()
Close httplib2 connections.
create(parent, body=None, volumeId=None, x__xgafv=None)
Creates a new Volume in a given project and location.

Args:
  parent: string, Required. Value for parent. (required)
  body: object, The request body.
    The object takes the form of:

{ # Volume provides a filesystem that you can mount.
  "activeDirectory": "A String", # Output only. Specifies the ActiveDirectory name of a SMB volume.
  "backupConfig": { # BackupConfig contains backup related config on a volume. # BackupConfig of the volume.
    "backupChainBytes": "A String", # Output only. Total size of all backups in a chain in bytes = baseline backup size + sum(incremental backup size).
    "backupPolicies": [ # Optional. When specified, schedule backups will be created based on the policy configuration.
      "A String",
    ],
    "backupVault": "A String", # Optional. Name of backup vault. Format: projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}
    "scheduledBackupEnabled": True or False, # Optional. When set to true, scheduled backup is enabled on the volume. This field should be nil when there's no backup policy attached.
  },
  "capacityGib": "A String", # Required. Capacity in GIB of the volume
  "coldTierSizeGib": "A String", # Output only. Size of the volume cold tier data in GiB.
  "createTime": "A String", # Output only. Create time of the volume
  "description": "A String", # Optional. Description of the volume
  "encryptionType": "A String", # Output only. Specified the current volume encryption key source.
  "exportPolicy": { # Defines the export policy for the volume. # Optional. Export policy of the volume
    "rules": [ # Required. List of export policy rules
      { # An export policy rule describing various export options.
        "accessType": "A String", # Access type (ReadWrite, ReadOnly, None)
        "allowedClients": "A String", # Comma separated list of allowed clients IP addresses
        "hasRootAccess": "A String", # Whether Unix root access will be granted.
        "kerberos5ReadOnly": True or False, # 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.
        "kerberos5ReadWrite": True or False, # 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.
        "kerberos5iReadOnly": True or False, # 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.
        "kerberos5iReadWrite": True or False, # 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.
        "kerberos5pReadOnly": True or False, # 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.
        "kerberos5pReadWrite": True or False, # 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.
        "nfsv3": True or False, # NFS V3 protocol.
        "nfsv4": True or False, # NFS V4 protocol.
      },
    ],
  },
  "hasReplication": True or False, # Output only. Indicates whether the volume is part of a replication relationship.
  "hybridReplicationParameters": { # The Hybrid Replication parameters for the volume. # Optional. The Hybrid Replication parameters for the volume.
    "clusterLocation": "A String", # Optional. Name of source cluster location associated with the Hybrid replication. This is a free-form field for the display purpose only.
    "description": "A String", # Optional. Description of the replication.
    "labels": { # Optional. Labels to be added to the replication as the key value pairs.
      "a_key": "A String",
    },
    "peerClusterName": "A String", # Required. Name of the user's local source cluster to be peered with the destination cluster.
    "peerIpAddresses": [ # Required. List of node ip addresses to be peered with.
      "A String",
    ],
    "peerSvmName": "A String", # Required. Name of the user's local source vserver svm to be peered with the destination vserver svm.
    "peerVolumeName": "A String", # Required. Name of the user's local source volume to be peered with the destination volume.
    "replication": "A String", # Required. Desired name for the replication of this volume.
  },
  "kerberosEnabled": True or False, # Optional. Flag indicating if the volume is a kerberos volume or not, export policy rules control kerberos security modes (krb5, krb5i, krb5p).
  "kmsConfig": "A String", # Output only. Specifies the KMS config to be used for volume encryption.
  "labels": { # Optional. Labels as key value pairs
    "a_key": "A String",
  },
  "largeCapacity": True or False, # Optional. Flag indicating if the volume will be a large capacity volume or a regular volume.
  "ldapEnabled": True or False, # Output only. Flag indicating if the volume is NFS LDAP enabled or not.
  "mountOptions": [ # Output only. Mount options of this volume
    { # View only mount options for a volume.
      "export": "A String", # Export string
      "exportFull": "A String", # Full export string
      "instructions": "A String", # Instructions for mounting
      "protocol": "A String", # Protocol to mount with.
    },
  ],
  "multipleEndpoints": True or False, # 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.
  "name": "A String", # Identifier. Name of the volume
  "network": "A String", # Output only. VPC Network name. Format: projects/{project}/global/networks/{network}
  "protocols": [ # Required. Protocols required for the volume
    "A String",
  ],
  "psaRange": "A String", # Output only. This field is not implemented. The values provided in this field are ignored.
  "replicaZone": "A String", # Output only. Specifies the replica zone for regional volume.
  "restoreParameters": { # The RestoreParameters if volume is created from a snapshot or backup. # Optional. Specifies the source of the volume to be created from.
    "sourceBackup": "A String", # Full name of the backup resource. Format: projects/{project}/locations/{location}/backupVaults/{backup_vault_id}/backups/{backup_id}
    "sourceSnapshot": "A String", # Full name of the snapshot resource. Format: projects/{project}/locations/{location}/volumes/{volume}/snapshots/{snapshot}
  },
  "restrictedActions": [ # Optional. List of actions that are restricted on this volume.
    "A String",
  ],
  "securityStyle": "A String", # Optional. Security Style of the Volume
  "serviceLevel": "A String", # Output only. Service level of the volume
  "shareName": "A String", # Required. Share name of the volume
  "smbSettings": [ # Optional. SMB share settings for the volume.
    "A String",
  ],
  "snapReserve": 3.14, # Optional. Snap_reserve specifies percentage of volume storage reserved for snapshot storage. Default is 0 percent.
  "snapshotDirectory": True or False, # 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.
  "snapshotPolicy": { # Snapshot Policy for a volume. # Optional. SnapshotPolicy for a volume.
    "dailySchedule": { # Make a snapshot every day e.g. at 04:00, 05:20, 23:50 # Daily schedule policy.
      "hour": 3.14, # Set the hour to start the snapshot (0-23), defaults to midnight (0).
      "minute": 3.14, # Set the minute of the hour to start the snapshot (0-59), defaults to the top of the hour (0).
      "snapshotsToKeep": 3.14, # The maximum number of Snapshots to keep for the hourly schedule
    },
    "enabled": True or False, # If enabled, make snapshots automatically according to the schedules. Default is false.
    "hourlySchedule": { # Make a snapshot every hour e.g. at 04:00, 05:00, 06:00. # Hourly schedule policy.
      "minute": 3.14, # Set the minute of the hour to start the snapshot (0-59), defaults to the top of the hour (0).
      "snapshotsToKeep": 3.14, # The maximum number of Snapshots to keep for the hourly schedule
    },
    "monthlySchedule": { # Make a snapshot once a month e.g. at 2nd 04:00, 7th 05:20, 24th 23:50 # Monthly schedule policy.
      "daysOfMonth": "A String", # Set the day or days of the month to make a snapshot (1-31). Accepts a comma separated number of days. Defaults to '1'.
      "hour": 3.14, # Set the hour to start the snapshot (0-23), defaults to midnight (0).
      "minute": 3.14, # Set the minute of the hour to start the snapshot (0-59), defaults to the top of the hour (0).
      "snapshotsToKeep": 3.14, # The maximum number of Snapshots to keep for the hourly schedule
    },
    "weeklySchedule": { # Make a snapshot every week e.g. at Monday 04:00, Wednesday 05:20, Sunday 23:50 # Weekly schedule policy.
      "day": "A String", # Set the day or days of the week to make a snapshot. Accepts a comma separated days of the week. Defaults to 'Sunday'.
      "hour": 3.14, # Set the hour to start the snapshot (0-23), defaults to midnight (0).
      "minute": 3.14, # Set the minute of the hour to start the snapshot (0-59), defaults to the top of the hour (0).
      "snapshotsToKeep": 3.14, # The maximum number of Snapshots to keep for the hourly schedule
    },
  },
  "state": "A String", # Output only. State of the volume
  "stateDetails": "A String", # Output only. State details of the volume
  "storagePool": "A String", # Required. StoragePool name of the volume
  "tieringPolicy": { # Defines tiering policy for the volume. # Tiering policy for the volume.
    "coolingThresholdDays": 42, # 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.
    "tierAction": "A String", # Optional. Flag indicating if the volume has tiering policy enable/pause. Default is PAUSED.
  },
  "unixPermissions": "A String", # Optional. Default unix style permission (e.g. 777) the mount point will be created with. Applicable for NFS protocol types only.
  "usedGib": "A String", # Output only. Used capacity in GIB of the volume. This is computed periodically and it does not represent the realtime usage.
  "zone": "A String", # Output only. Specifies the active zone for regional volume.
}

  volumeId: string, 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.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  "done": True or False, # 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.
  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    ],
    "message": "A String", # 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.
  },
  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
  "name": "A String", # 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}`.
  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
}
delete(name, force=None, x__xgafv=None)
Deletes a single Volume.

Args:
  name: string, Required. Name of the volume (required)
  force: boolean, 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.)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  "done": True or False, # 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.
  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    ],
    "message": "A String", # 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.
  },
  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
  "name": "A String", # 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}`.
  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
}
get(name, x__xgafv=None)
Gets details of a single Volume.

Args:
  name: string, Required. Name of the volume (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Volume provides a filesystem that you can mount.
  "activeDirectory": "A String", # Output only. Specifies the ActiveDirectory name of a SMB volume.
  "backupConfig": { # BackupConfig contains backup related config on a volume. # BackupConfig of the volume.
    "backupChainBytes": "A String", # Output only. Total size of all backups in a chain in bytes = baseline backup size + sum(incremental backup size).
    "backupPolicies": [ # Optional. When specified, schedule backups will be created based on the policy configuration.
      "A String",
    ],
    "backupVault": "A String", # Optional. Name of backup vault. Format: projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}
    "scheduledBackupEnabled": True or False, # Optional. When set to true, scheduled backup is enabled on the volume. This field should be nil when there's no backup policy attached.
  },
  "capacityGib": "A String", # Required. Capacity in GIB of the volume
  "coldTierSizeGib": "A String", # Output only. Size of the volume cold tier data in GiB.
  "createTime": "A String", # Output only. Create time of the volume
  "description": "A String", # Optional. Description of the volume
  "encryptionType": "A String", # Output only. Specified the current volume encryption key source.
  "exportPolicy": { # Defines the export policy for the volume. # Optional. Export policy of the volume
    "rules": [ # Required. List of export policy rules
      { # An export policy rule describing various export options.
        "accessType": "A String", # Access type (ReadWrite, ReadOnly, None)
        "allowedClients": "A String", # Comma separated list of allowed clients IP addresses
        "hasRootAccess": "A String", # Whether Unix root access will be granted.
        "kerberos5ReadOnly": True or False, # 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.
        "kerberos5ReadWrite": True or False, # 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.
        "kerberos5iReadOnly": True or False, # 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.
        "kerberos5iReadWrite": True or False, # 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.
        "kerberos5pReadOnly": True or False, # 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.
        "kerberos5pReadWrite": True or False, # 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.
        "nfsv3": True or False, # NFS V3 protocol.
        "nfsv4": True or False, # NFS V4 protocol.
      },
    ],
  },
  "hasReplication": True or False, # Output only. Indicates whether the volume is part of a replication relationship.
  "hybridReplicationParameters": { # The Hybrid Replication parameters for the volume. # Optional. The Hybrid Replication parameters for the volume.
    "clusterLocation": "A String", # Optional. Name of source cluster location associated with the Hybrid replication. This is a free-form field for the display purpose only.
    "description": "A String", # Optional. Description of the replication.
    "labels": { # Optional. Labels to be added to the replication as the key value pairs.
      "a_key": "A String",
    },
    "peerClusterName": "A String", # Required. Name of the user's local source cluster to be peered with the destination cluster.
    "peerIpAddresses": [ # Required. List of node ip addresses to be peered with.
      "A String",
    ],
    "peerSvmName": "A String", # Required. Name of the user's local source vserver svm to be peered with the destination vserver svm.
    "peerVolumeName": "A String", # Required. Name of the user's local source volume to be peered with the destination volume.
    "replication": "A String", # Required. Desired name for the replication of this volume.
  },
  "kerberosEnabled": True or False, # Optional. Flag indicating if the volume is a kerberos volume or not, export policy rules control kerberos security modes (krb5, krb5i, krb5p).
  "kmsConfig": "A String", # Output only. Specifies the KMS config to be used for volume encryption.
  "labels": { # Optional. Labels as key value pairs
    "a_key": "A String",
  },
  "largeCapacity": True or False, # Optional. Flag indicating if the volume will be a large capacity volume or a regular volume.
  "ldapEnabled": True or False, # Output only. Flag indicating if the volume is NFS LDAP enabled or not.
  "mountOptions": [ # Output only. Mount options of this volume
    { # View only mount options for a volume.
      "export": "A String", # Export string
      "exportFull": "A String", # Full export string
      "instructions": "A String", # Instructions for mounting
      "protocol": "A String", # Protocol to mount with.
    },
  ],
  "multipleEndpoints": True or False, # 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.
  "name": "A String", # Identifier. Name of the volume
  "network": "A String", # Output only. VPC Network name. Format: projects/{project}/global/networks/{network}
  "protocols": [ # Required. Protocols required for the volume
    "A String",
  ],
  "psaRange": "A String", # Output only. This field is not implemented. The values provided in this field are ignored.
  "replicaZone": "A String", # Output only. Specifies the replica zone for regional volume.
  "restoreParameters": { # The RestoreParameters if volume is created from a snapshot or backup. # Optional. Specifies the source of the volume to be created from.
    "sourceBackup": "A String", # Full name of the backup resource. Format: projects/{project}/locations/{location}/backupVaults/{backup_vault_id}/backups/{backup_id}
    "sourceSnapshot": "A String", # Full name of the snapshot resource. Format: projects/{project}/locations/{location}/volumes/{volume}/snapshots/{snapshot}
  },
  "restrictedActions": [ # Optional. List of actions that are restricted on this volume.
    "A String",
  ],
  "securityStyle": "A String", # Optional. Security Style of the Volume
  "serviceLevel": "A String", # Output only. Service level of the volume
  "shareName": "A String", # Required. Share name of the volume
  "smbSettings": [ # Optional. SMB share settings for the volume.
    "A String",
  ],
  "snapReserve": 3.14, # Optional. Snap_reserve specifies percentage of volume storage reserved for snapshot storage. Default is 0 percent.
  "snapshotDirectory": True or False, # 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.
  "snapshotPolicy": { # Snapshot Policy for a volume. # Optional. SnapshotPolicy for a volume.
    "dailySchedule": { # Make a snapshot every day e.g. at 04:00, 05:20, 23:50 # Daily schedule policy.
      "hour": 3.14, # Set the hour to start the snapshot (0-23), defaults to midnight (0).
      "minute": 3.14, # Set the minute of the hour to start the snapshot (0-59), defaults to the top of the hour (0).
      "snapshotsToKeep": 3.14, # The maximum number of Snapshots to keep for the hourly schedule
    },
    "enabled": True or False, # If enabled, make snapshots automatically according to the schedules. Default is false.
    "hourlySchedule": { # Make a snapshot every hour e.g. at 04:00, 05:00, 06:00. # Hourly schedule policy.
      "minute": 3.14, # Set the minute of the hour to start the snapshot (0-59), defaults to the top of the hour (0).
      "snapshotsToKeep": 3.14, # The maximum number of Snapshots to keep for the hourly schedule
    },
    "monthlySchedule": { # Make a snapshot once a month e.g. at 2nd 04:00, 7th 05:20, 24th 23:50 # Monthly schedule policy.
      "daysOfMonth": "A String", # Set the day or days of the month to make a snapshot (1-31). Accepts a comma separated number of days. Defaults to '1'.
      "hour": 3.14, # Set the hour to start the snapshot (0-23), defaults to midnight (0).
      "minute": 3.14, # Set the minute of the hour to start the snapshot (0-59), defaults to the top of the hour (0).
      "snapshotsToKeep": 3.14, # The maximum number of Snapshots to keep for the hourly schedule
    },
    "weeklySchedule": { # Make a snapshot every week e.g. at Monday 04:00, Wednesday 05:20, Sunday 23:50 # Weekly schedule policy.
      "day": "A String", # Set the day or days of the week to make a snapshot. Accepts a comma separated days of the week. Defaults to 'Sunday'.
      "hour": 3.14, # Set the hour to start the snapshot (0-23), defaults to midnight (0).
      "minute": 3.14, # Set the minute of the hour to start the snapshot (0-59), defaults to the top of the hour (0).
      "snapshotsToKeep": 3.14, # The maximum number of Snapshots to keep for the hourly schedule
    },
  },
  "state": "A String", # Output only. State of the volume
  "stateDetails": "A String", # Output only. State details of the volume
  "storagePool": "A String", # Required. StoragePool name of the volume
  "tieringPolicy": { # Defines tiering policy for the volume. # Tiering policy for the volume.
    "coolingThresholdDays": 42, # 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.
    "tierAction": "A String", # Optional. Flag indicating if the volume has tiering policy enable/pause. Default is PAUSED.
  },
  "unixPermissions": "A String", # Optional. Default unix style permission (e.g. 777) the mount point will be created with. Applicable for NFS protocol types only.
  "usedGib": "A String", # Output only. Used capacity in GIB of the volume. This is computed periodically and it does not represent the realtime usage.
  "zone": "A String", # Output only. Specifies the active zone for regional volume.
}
list(parent, filter=None, orderBy=None, pageSize=None, pageToken=None, x__xgafv=None)
Lists Volumes in a given project.

Args:
  parent: string, Required. Parent value for ListVolumesRequest (required)
  filter: string, Filtering results
  orderBy: string, Hint for how to order the results
  pageSize: integer, Requested page size. Server may return fewer items than requested. If unspecified, the server will pick an appropriate default.
  pageToken: string, A token identifying a page of results the server should return.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Message for response to listing Volumes
  "nextPageToken": "A String", # A token identifying a page of results the server should return.
  "unreachable": [ # Locations that could not be reached.
    "A String",
  ],
  "volumes": [ # The list of Volume
    { # Volume provides a filesystem that you can mount.
      "activeDirectory": "A String", # Output only. Specifies the ActiveDirectory name of a SMB volume.
      "backupConfig": { # BackupConfig contains backup related config on a volume. # BackupConfig of the volume.
        "backupChainBytes": "A String", # Output only. Total size of all backups in a chain in bytes = baseline backup size + sum(incremental backup size).
        "backupPolicies": [ # Optional. When specified, schedule backups will be created based on the policy configuration.
          "A String",
        ],
        "backupVault": "A String", # Optional. Name of backup vault. Format: projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}
        "scheduledBackupEnabled": True or False, # Optional. When set to true, scheduled backup is enabled on the volume. This field should be nil when there's no backup policy attached.
      },
      "capacityGib": "A String", # Required. Capacity in GIB of the volume
      "coldTierSizeGib": "A String", # Output only. Size of the volume cold tier data in GiB.
      "createTime": "A String", # Output only. Create time of the volume
      "description": "A String", # Optional. Description of the volume
      "encryptionType": "A String", # Output only. Specified the current volume encryption key source.
      "exportPolicy": { # Defines the export policy for the volume. # Optional. Export policy of the volume
        "rules": [ # Required. List of export policy rules
          { # An export policy rule describing various export options.
            "accessType": "A String", # Access type (ReadWrite, ReadOnly, None)
            "allowedClients": "A String", # Comma separated list of allowed clients IP addresses
            "hasRootAccess": "A String", # Whether Unix root access will be granted.
            "kerberos5ReadOnly": True or False, # 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.
            "kerberos5ReadWrite": True or False, # 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.
            "kerberos5iReadOnly": True or False, # 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.
            "kerberos5iReadWrite": True or False, # 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.
            "kerberos5pReadOnly": True or False, # 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.
            "kerberos5pReadWrite": True or False, # 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.
            "nfsv3": True or False, # NFS V3 protocol.
            "nfsv4": True or False, # NFS V4 protocol.
          },
        ],
      },
      "hasReplication": True or False, # Output only. Indicates whether the volume is part of a replication relationship.
      "hybridReplicationParameters": { # The Hybrid Replication parameters for the volume. # Optional. The Hybrid Replication parameters for the volume.
        "clusterLocation": "A String", # Optional. Name of source cluster location associated with the Hybrid replication. This is a free-form field for the display purpose only.
        "description": "A String", # Optional. Description of the replication.
        "labels": { # Optional. Labels to be added to the replication as the key value pairs.
          "a_key": "A String",
        },
        "peerClusterName": "A String", # Required. Name of the user's local source cluster to be peered with the destination cluster.
        "peerIpAddresses": [ # Required. List of node ip addresses to be peered with.
          "A String",
        ],
        "peerSvmName": "A String", # Required. Name of the user's local source vserver svm to be peered with the destination vserver svm.
        "peerVolumeName": "A String", # Required. Name of the user's local source volume to be peered with the destination volume.
        "replication": "A String", # Required. Desired name for the replication of this volume.
      },
      "kerberosEnabled": True or False, # Optional. Flag indicating if the volume is a kerberos volume or not, export policy rules control kerberos security modes (krb5, krb5i, krb5p).
      "kmsConfig": "A String", # Output only. Specifies the KMS config to be used for volume encryption.
      "labels": { # Optional. Labels as key value pairs
        "a_key": "A String",
      },
      "largeCapacity": True or False, # Optional. Flag indicating if the volume will be a large capacity volume or a regular volume.
      "ldapEnabled": True or False, # Output only. Flag indicating if the volume is NFS LDAP enabled or not.
      "mountOptions": [ # Output only. Mount options of this volume
        { # View only mount options for a volume.
          "export": "A String", # Export string
          "exportFull": "A String", # Full export string
          "instructions": "A String", # Instructions for mounting
          "protocol": "A String", # Protocol to mount with.
        },
      ],
      "multipleEndpoints": True or False, # 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.
      "name": "A String", # Identifier. Name of the volume
      "network": "A String", # Output only. VPC Network name. Format: projects/{project}/global/networks/{network}
      "protocols": [ # Required. Protocols required for the volume
        "A String",
      ],
      "psaRange": "A String", # Output only. This field is not implemented. The values provided in this field are ignored.
      "replicaZone": "A String", # Output only. Specifies the replica zone for regional volume.
      "restoreParameters": { # The RestoreParameters if volume is created from a snapshot or backup. # Optional. Specifies the source of the volume to be created from.
        "sourceBackup": "A String", # Full name of the backup resource. Format: projects/{project}/locations/{location}/backupVaults/{backup_vault_id}/backups/{backup_id}
        "sourceSnapshot": "A String", # Full name of the snapshot resource. Format: projects/{project}/locations/{location}/volumes/{volume}/snapshots/{snapshot}
      },
      "restrictedActions": [ # Optional. List of actions that are restricted on this volume.
        "A String",
      ],
      "securityStyle": "A String", # Optional. Security Style of the Volume
      "serviceLevel": "A String", # Output only. Service level of the volume
      "shareName": "A String", # Required. Share name of the volume
      "smbSettings": [ # Optional. SMB share settings for the volume.
        "A String",
      ],
      "snapReserve": 3.14, # Optional. Snap_reserve specifies percentage of volume storage reserved for snapshot storage. Default is 0 percent.
      "snapshotDirectory": True or False, # 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.
      "snapshotPolicy": { # Snapshot Policy for a volume. # Optional. SnapshotPolicy for a volume.
        "dailySchedule": { # Make a snapshot every day e.g. at 04:00, 05:20, 23:50 # Daily schedule policy.
          "hour": 3.14, # Set the hour to start the snapshot (0-23), defaults to midnight (0).
          "minute": 3.14, # Set the minute of the hour to start the snapshot (0-59), defaults to the top of the hour (0).
          "snapshotsToKeep": 3.14, # The maximum number of Snapshots to keep for the hourly schedule
        },
        "enabled": True or False, # If enabled, make snapshots automatically according to the schedules. Default is false.
        "hourlySchedule": { # Make a snapshot every hour e.g. at 04:00, 05:00, 06:00. # Hourly schedule policy.
          "minute": 3.14, # Set the minute of the hour to start the snapshot (0-59), defaults to the top of the hour (0).
          "snapshotsToKeep": 3.14, # The maximum number of Snapshots to keep for the hourly schedule
        },
        "monthlySchedule": { # Make a snapshot once a month e.g. at 2nd 04:00, 7th 05:20, 24th 23:50 # Monthly schedule policy.
          "daysOfMonth": "A String", # Set the day or days of the month to make a snapshot (1-31). Accepts a comma separated number of days. Defaults to '1'.
          "hour": 3.14, # Set the hour to start the snapshot (0-23), defaults to midnight (0).
          "minute": 3.14, # Set the minute of the hour to start the snapshot (0-59), defaults to the top of the hour (0).
          "snapshotsToKeep": 3.14, # The maximum number of Snapshots to keep for the hourly schedule
        },
        "weeklySchedule": { # Make a snapshot every week e.g. at Monday 04:00, Wednesday 05:20, Sunday 23:50 # Weekly schedule policy.
          "day": "A String", # Set the day or days of the week to make a snapshot. Accepts a comma separated days of the week. Defaults to 'Sunday'.
          "hour": 3.14, # Set the hour to start the snapshot (0-23), defaults to midnight (0).
          "minute": 3.14, # Set the minute of the hour to start the snapshot (0-59), defaults to the top of the hour (0).
          "snapshotsToKeep": 3.14, # The maximum number of Snapshots to keep for the hourly schedule
        },
      },
      "state": "A String", # Output only. State of the volume
      "stateDetails": "A String", # Output only. State details of the volume
      "storagePool": "A String", # Required. StoragePool name of the volume
      "tieringPolicy": { # Defines tiering policy for the volume. # Tiering policy for the volume.
        "coolingThresholdDays": 42, # 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.
        "tierAction": "A String", # Optional. Flag indicating if the volume has tiering policy enable/pause. Default is PAUSED.
      },
      "unixPermissions": "A String", # Optional. Default unix style permission (e.g. 777) the mount point will be created with. Applicable for NFS protocol types only.
      "usedGib": "A String", # Output only. Used capacity in GIB of the volume. This is computed periodically and it does not represent the realtime usage.
      "zone": "A String", # Output only. Specifies the active zone for regional volume.
    },
  ],
}
list_next()
Retrieves the next page of results.

        Args:
          previous_request: The request for the previous page. (required)
          previous_response: The response from the request for the previous page. (required)

        Returns:
          A request object that you can call 'execute()' on to request the next
          page. Returns None if there are no more items in the collection.
        
patch(name, body=None, updateMask=None, x__xgafv=None)
Updates the parameters of a single Volume.

Args:
  name: string, Identifier. Name of the volume (required)
  body: object, The request body.
    The object takes the form of:

{ # Volume provides a filesystem that you can mount.
  "activeDirectory": "A String", # Output only. Specifies the ActiveDirectory name of a SMB volume.
  "backupConfig": { # BackupConfig contains backup related config on a volume. # BackupConfig of the volume.
    "backupChainBytes": "A String", # Output only. Total size of all backups in a chain in bytes = baseline backup size + sum(incremental backup size).
    "backupPolicies": [ # Optional. When specified, schedule backups will be created based on the policy configuration.
      "A String",
    ],
    "backupVault": "A String", # Optional. Name of backup vault. Format: projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}
    "scheduledBackupEnabled": True or False, # Optional. When set to true, scheduled backup is enabled on the volume. This field should be nil when there's no backup policy attached.
  },
  "capacityGib": "A String", # Required. Capacity in GIB of the volume
  "coldTierSizeGib": "A String", # Output only. Size of the volume cold tier data in GiB.
  "createTime": "A String", # Output only. Create time of the volume
  "description": "A String", # Optional. Description of the volume
  "encryptionType": "A String", # Output only. Specified the current volume encryption key source.
  "exportPolicy": { # Defines the export policy for the volume. # Optional. Export policy of the volume
    "rules": [ # Required. List of export policy rules
      { # An export policy rule describing various export options.
        "accessType": "A String", # Access type (ReadWrite, ReadOnly, None)
        "allowedClients": "A String", # Comma separated list of allowed clients IP addresses
        "hasRootAccess": "A String", # Whether Unix root access will be granted.
        "kerberos5ReadOnly": True or False, # 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.
        "kerberos5ReadWrite": True or False, # 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.
        "kerberos5iReadOnly": True or False, # 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.
        "kerberos5iReadWrite": True or False, # 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.
        "kerberos5pReadOnly": True or False, # 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.
        "kerberos5pReadWrite": True or False, # 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.
        "nfsv3": True or False, # NFS V3 protocol.
        "nfsv4": True or False, # NFS V4 protocol.
      },
    ],
  },
  "hasReplication": True or False, # Output only. Indicates whether the volume is part of a replication relationship.
  "hybridReplicationParameters": { # The Hybrid Replication parameters for the volume. # Optional. The Hybrid Replication parameters for the volume.
    "clusterLocation": "A String", # Optional. Name of source cluster location associated with the Hybrid replication. This is a free-form field for the display purpose only.
    "description": "A String", # Optional. Description of the replication.
    "labels": { # Optional. Labels to be added to the replication as the key value pairs.
      "a_key": "A String",
    },
    "peerClusterName": "A String", # Required. Name of the user's local source cluster to be peered with the destination cluster.
    "peerIpAddresses": [ # Required. List of node ip addresses to be peered with.
      "A String",
    ],
    "peerSvmName": "A String", # Required. Name of the user's local source vserver svm to be peered with the destination vserver svm.
    "peerVolumeName": "A String", # Required. Name of the user's local source volume to be peered with the destination volume.
    "replication": "A String", # Required. Desired name for the replication of this volume.
  },
  "kerberosEnabled": True or False, # Optional. Flag indicating if the volume is a kerberos volume or not, export policy rules control kerberos security modes (krb5, krb5i, krb5p).
  "kmsConfig": "A String", # Output only. Specifies the KMS config to be used for volume encryption.
  "labels": { # Optional. Labels as key value pairs
    "a_key": "A String",
  },
  "largeCapacity": True or False, # Optional. Flag indicating if the volume will be a large capacity volume or a regular volume.
  "ldapEnabled": True or False, # Output only. Flag indicating if the volume is NFS LDAP enabled or not.
  "mountOptions": [ # Output only. Mount options of this volume
    { # View only mount options for a volume.
      "export": "A String", # Export string
      "exportFull": "A String", # Full export string
      "instructions": "A String", # Instructions for mounting
      "protocol": "A String", # Protocol to mount with.
    },
  ],
  "multipleEndpoints": True or False, # 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.
  "name": "A String", # Identifier. Name of the volume
  "network": "A String", # Output only. VPC Network name. Format: projects/{project}/global/networks/{network}
  "protocols": [ # Required. Protocols required for the volume
    "A String",
  ],
  "psaRange": "A String", # Output only. This field is not implemented. The values provided in this field are ignored.
  "replicaZone": "A String", # Output only. Specifies the replica zone for regional volume.
  "restoreParameters": { # The RestoreParameters if volume is created from a snapshot or backup. # Optional. Specifies the source of the volume to be created from.
    "sourceBackup": "A String", # Full name of the backup resource. Format: projects/{project}/locations/{location}/backupVaults/{backup_vault_id}/backups/{backup_id}
    "sourceSnapshot": "A String", # Full name of the snapshot resource. Format: projects/{project}/locations/{location}/volumes/{volume}/snapshots/{snapshot}
  },
  "restrictedActions": [ # Optional. List of actions that are restricted on this volume.
    "A String",
  ],
  "securityStyle": "A String", # Optional. Security Style of the Volume
  "serviceLevel": "A String", # Output only. Service level of the volume
  "shareName": "A String", # Required. Share name of the volume
  "smbSettings": [ # Optional. SMB share settings for the volume.
    "A String",
  ],
  "snapReserve": 3.14, # Optional. Snap_reserve specifies percentage of volume storage reserved for snapshot storage. Default is 0 percent.
  "snapshotDirectory": True or False, # 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.
  "snapshotPolicy": { # Snapshot Policy for a volume. # Optional. SnapshotPolicy for a volume.
    "dailySchedule": { # Make a snapshot every day e.g. at 04:00, 05:20, 23:50 # Daily schedule policy.
      "hour": 3.14, # Set the hour to start the snapshot (0-23), defaults to midnight (0).
      "minute": 3.14, # Set the minute of the hour to start the snapshot (0-59), defaults to the top of the hour (0).
      "snapshotsToKeep": 3.14, # The maximum number of Snapshots to keep for the hourly schedule
    },
    "enabled": True or False, # If enabled, make snapshots automatically according to the schedules. Default is false.
    "hourlySchedule": { # Make a snapshot every hour e.g. at 04:00, 05:00, 06:00. # Hourly schedule policy.
      "minute": 3.14, # Set the minute of the hour to start the snapshot (0-59), defaults to the top of the hour (0).
      "snapshotsToKeep": 3.14, # The maximum number of Snapshots to keep for the hourly schedule
    },
    "monthlySchedule": { # Make a snapshot once a month e.g. at 2nd 04:00, 7th 05:20, 24th 23:50 # Monthly schedule policy.
      "daysOfMonth": "A String", # Set the day or days of the month to make a snapshot (1-31). Accepts a comma separated number of days. Defaults to '1'.
      "hour": 3.14, # Set the hour to start the snapshot (0-23), defaults to midnight (0).
      "minute": 3.14, # Set the minute of the hour to start the snapshot (0-59), defaults to the top of the hour (0).
      "snapshotsToKeep": 3.14, # The maximum number of Snapshots to keep for the hourly schedule
    },
    "weeklySchedule": { # Make a snapshot every week e.g. at Monday 04:00, Wednesday 05:20, Sunday 23:50 # Weekly schedule policy.
      "day": "A String", # Set the day or days of the week to make a snapshot. Accepts a comma separated days of the week. Defaults to 'Sunday'.
      "hour": 3.14, # Set the hour to start the snapshot (0-23), defaults to midnight (0).
      "minute": 3.14, # Set the minute of the hour to start the snapshot (0-59), defaults to the top of the hour (0).
      "snapshotsToKeep": 3.14, # The maximum number of Snapshots to keep for the hourly schedule
    },
  },
  "state": "A String", # Output only. State of the volume
  "stateDetails": "A String", # Output only. State details of the volume
  "storagePool": "A String", # Required. StoragePool name of the volume
  "tieringPolicy": { # Defines tiering policy for the volume. # Tiering policy for the volume.
    "coolingThresholdDays": 42, # 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.
    "tierAction": "A String", # Optional. Flag indicating if the volume has tiering policy enable/pause. Default is PAUSED.
  },
  "unixPermissions": "A String", # Optional. Default unix style permission (e.g. 777) the mount point will be created with. Applicable for NFS protocol types only.
  "usedGib": "A String", # Output only. Used capacity in GIB of the volume. This is computed periodically and it does not represent the realtime usage.
  "zone": "A String", # Output only. Specifies the active zone for regional volume.
}

  updateMask: string, 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.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  "done": True or False, # 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.
  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    ],
    "message": "A String", # 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.
  },
  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
  "name": "A String", # 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}`.
  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
}
revert(name, body=None, x__xgafv=None)
Revert an existing volume to a specified snapshot. Warning! This operation will permanently revert all changes made after the snapshot was created.

Args:
  name: string, Required. The resource name of the volume, in the format of projects/{project_id}/locations/{location}/volumes/{volume_id}. (required)
  body: object, The request body.
    The object takes the form of:

{ # RevertVolumeRequest reverts the given volume to the specified snapshot.
  "snapshotId": "A String", # 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}
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  "done": True or False, # 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.
  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    ],
    "message": "A String", # 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.
  },
  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
  "name": "A String", # 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}`.
  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
}