

# UpdateVolume


Updates the configuration of an Amazon FSx for NetApp ONTAP or Amazon FSx for OpenZFS volume.

## Request Syntax


```
{
   "ClientRequestToken": "string",
   "Name": "string",
   "OntapConfiguration": { 
      "CopyTagsToBackups": boolean,
      "JunctionPath": "string",
      "SecurityStyle": "string",
      "SizeInBytes": number,
      "SizeInMegabytes": number,
      "SnaplockConfiguration": { 
         "AuditLogVolume": boolean,
         "AutocommitPeriod": { 
            "Type": "string",
            "Value": number
         },
         "PrivilegedDelete": "string",
         "RetentionPeriod": { 
            "DefaultRetention": { 
               "Type": "string",
               "Value": number
            },
            "MaximumRetention": { 
               "Type": "string",
               "Value": number
            },
            "MinimumRetention": { 
               "Type": "string",
               "Value": number
            }
         },
         "VolumeAppendModeEnabled": boolean
      },
      "SnapshotPolicy": "string",
      "StorageEfficiencyEnabled": boolean,
      "TieringPolicy": { 
         "CoolingPeriod": number,
         "Name": "string"
      }
   },
   "OpenZFSConfiguration": { 
      "DataCompressionType": "string",
      "NfsExports": [ 
         { 
            "ClientConfigurations": [ 
               { 
                  "Clients": "string",
                  "Options": [ "string" ]
               }
            ]
         }
      ],
      "ReadOnly": boolean,
      "RecordSizeKiB": number,
      "StorageCapacityQuotaGiB": number,
      "StorageCapacityReservationGiB": number,
      "UserAndGroupQuotas": [ 
         { 
            "Id": number,
            "StorageCapacityQuotaGiB": number,
            "Type": "string"
         }
      ]
   },
   "VolumeId": "string"
}
```

## Request Parameters


For information about the parameters that are common to all actions, see [Common Parameters](CommonParameters.md).

The request accepts the following data in JSON format.

 ** [ClientRequestToken](#API_UpdateVolume_RequestSyntax) **   <a name="FSx-UpdateVolume-request-ClientRequestToken"></a>
(Optional) An idempotency token for resource creation, in a string of up to 63 ASCII characters. This token is automatically filled on your behalf when you use the AWS Command Line Interface (AWS CLI) or an AWS SDK.  
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 63.  
Pattern: `[A-za-z0-9_.-]{0,63}$`   
Required: No

 ** [Name](#API_UpdateVolume_RequestSyntax) **   <a name="FSx-UpdateVolume-request-Name"></a>
The name of the OpenZFS volume. OpenZFS root volumes are automatically named `FSX`. Child volume names must be unique among their parent volume's children. The name of the volume is part of the mount string for the OpenZFS volume.   
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 203.  
Pattern: `^[^\u0000\u0085\u2028\u2029\r\n]{1,203}$`   
Required: No

 ** [OntapConfiguration](#API_UpdateVolume_RequestSyntax) **   <a name="FSx-UpdateVolume-request-OntapConfiguration"></a>
The configuration of the ONTAP volume that you are updating.  
Type: [UpdateOntapVolumeConfiguration](API_UpdateOntapVolumeConfiguration.md) object  
Required: No

 ** [OpenZFSConfiguration](#API_UpdateVolume_RequestSyntax) **   <a name="FSx-UpdateVolume-request-OpenZFSConfiguration"></a>
The configuration of the OpenZFS volume that you are updating.  
Type: [UpdateOpenZFSVolumeConfiguration](API_UpdateOpenZFSVolumeConfiguration.md) object  
Required: No

 ** [VolumeId](#API_UpdateVolume_RequestSyntax) **   <a name="FSx-UpdateVolume-request-VolumeId"></a>
The ID of the volume that you want to update, in the format `fsvol-0123456789abcdef0`.  
Type: String  
Length Constraints: Fixed length of 23.  
Pattern: `^(fsvol-[0-9a-f]{17,})$`   
Required: Yes

## Response Syntax


```
{
   "Volume": { 
      "AdministrativeActions": [ 
         { 
            "AdministrativeActionType": "string",
            "FailureDetails": { 
               "Message": "string"
            },
            "Message": "string",
            "ProgressPercent": number,
            "RemainingTransferBytes": number,
            "RequestTime": number,
            "Status": "string",
            "TargetFileSystemValues": { 
               "AdministrativeActions": [ 
                  "AdministrativeAction"
               ],
               "CreationTime": number,
               "DNSName": "string",
               "FailureDetails": { 
                  "Message": "string"
               },
               "FileSystemId": "string",
               "FileSystemType": "string",
               "FileSystemTypeVersion": "string",
               "KmsKeyId": "string",
               "Lifecycle": "string",
               "LustreConfiguration": { 
                  "AutomaticBackupRetentionDays": number,
                  "CopyTagsToBackups": boolean,
                  "DailyAutomaticBackupStartTime": "string",
                  "DataCompressionType": "string",
                  "DataReadCacheConfiguration": { 
                     "SizeGiB": number,
                     "SizingMode": "string"
                  },
                  "DataRepositoryConfiguration": { 
                     "AutoImportPolicy": "string",
                     "ExportPath": "string",
                     "FailureDetails": { 
                        "Message": "string"
                     },
                     "ImportedFileChunkSize": number,
                     "ImportPath": "string",
                     "Lifecycle": "string"
                  },
                  "DeploymentType": "string",
                  "DriveCacheType": "string",
                  "EfaEnabled": boolean,
                  "LogConfiguration": { 
                     "Destination": "string",
                     "Level": "string"
                  },
                  "MetadataConfiguration": { 
                     "Iops": number,
                     "Mode": "string"
                  },
                  "MountName": "string",
                  "PerUnitStorageThroughput": number,
                  "RootSquashConfiguration": { 
                     "NoSquashNids": [ "string" ],
                     "RootSquash": "string"
                  },
                  "ThroughputCapacity": number,
                  "WeeklyMaintenanceStartTime": "string"
               },
               "NetworkInterfaceIds": [ "string" ],
               "NetworkType": "string",
               "OntapConfiguration": { 
                  "AutomaticBackupRetentionDays": number,
                  "DailyAutomaticBackupStartTime": "string",
                  "DeploymentType": "string",
                  "DiskIopsConfiguration": { 
                     "Iops": number,
                     "Mode": "string"
                  },
                  "EndpointIpAddressRange": "string",
                  "EndpointIpv6AddressRange": "string",
                  "Endpoints": { 
                     "Intercluster": { 
                        "DNSName": "string",
                        "IpAddresses": [ "string" ],
                        "Ipv6Addresses": [ "string" ]
                     },
                     "Management": { 
                        "DNSName": "string",
                        "IpAddresses": [ "string" ],
                        "Ipv6Addresses": [ "string" ]
                     }
                  },
                  "FsxAdminPassword": "string",
                  "HAPairs": number,
                  "PreferredSubnetId": "string",
                  "RouteTableIds": [ "string" ],
                  "ThroughputCapacity": number,
                  "ThroughputCapacityPerHAPair": number,
                  "WeeklyMaintenanceStartTime": "string"
               },
               "OpenZFSConfiguration": { 
                  "AutomaticBackupRetentionDays": number,
                  "CopyTagsToBackups": boolean,
                  "CopyTagsToVolumes": boolean,
                  "DailyAutomaticBackupStartTime": "string",
                  "DeploymentType": "string",
                  "DiskIopsConfiguration": { 
                     "Iops": number,
                     "Mode": "string"
                  },
                  "EndpointIpAddress": "string",
                  "EndpointIpAddressRange": "string",
                  "EndpointIpv6Address": "string",
                  "EndpointIpv6AddressRange": "string",
                  "PreferredSubnetId": "string",
                  "ReadCacheConfiguration": { 
                     "SizeGiB": number,
                     "SizingMode": "string"
                  },
                  "RootVolumeId": "string",
                  "RouteTableIds": [ "string" ],
                  "ThroughputCapacity": number,
                  "WeeklyMaintenanceStartTime": "string"
               },
               "OwnerId": "string",
               "ResourceARN": "string",
               "StorageCapacity": number,
               "StorageType": "string",
               "SubnetIds": [ "string" ],
               "Tags": [ 
                  { 
                     "Key": "string",
                     "Value": "string"
                  }
               ],
               "VpcId": "string",
               "WindowsConfiguration": { 
                  "ActiveDirectoryId": "string",
                  "Aliases": [ 
                     { 
                        "Lifecycle": "string",
                        "Name": "string"
                     }
                  ],
                  "AuditLogConfiguration": { 
                     "AuditLogDestination": "string",
                     "FileAccessAuditLogLevel": "string",
                     "FileShareAccessAuditLogLevel": "string"
                  },
                  "AutomaticBackupRetentionDays": number,
                  "CopyTagsToBackups": boolean,
                  "DailyAutomaticBackupStartTime": "string",
                  "DeploymentType": "string",
                  "DiskIopsConfiguration": { 
                     "Iops": number,
                     "Mode": "string"
                  },
                  "FsrmConfiguration": { 
                     "EventLogDestination": "string",
                     "FsrmServiceEnabled": boolean
                  },
                  "MaintenanceOperationsInProgress": [ "string" ],
                  "PreferredFileServerIp": "string",
                  "PreferredFileServerIpv6": "string",
                  "PreferredSubnetId": "string",
                  "RemoteAdministrationEndpoint": "string",
                  "SelfManagedActiveDirectoryConfiguration": { 
                     "DnsIps": [ "string" ],
                     "DomainJoinServiceAccountSecret": "string",
                     "DomainName": "string",
                     "FileSystemAdministratorsGroup": "string",
                     "OrganizationalUnitDistinguishedName": "string",
                     "UserName": "string"
                  },
                  "ThroughputCapacity": number,
                  "WeeklyMaintenanceStartTime": "string"
               }
            },
            "TargetSnapshotValues": { 
               "AdministrativeActions": [ 
                  "AdministrativeAction"
               ],
               "CreationTime": number,
               "Lifecycle": "string",
               "LifecycleTransitionReason": { 
                  "Message": "string"
               },
               "Name": "string",
               "ResourceARN": "string",
               "SnapshotId": "string",
               "Tags": [ 
                  { 
                     "Key": "string",
                     "Value": "string"
                  }
               ],
               "VolumeId": "string"
            },
            "TargetVolumeValues": "Volume",
            "TotalTransferBytes": number
         }
      ],
      "CreationTime": number,
      "FileSystemId": "string",
      "Lifecycle": "string",
      "LifecycleTransitionReason": { 
         "Message": "string"
      },
      "Name": "string",
      "OntapConfiguration": { 
         "AggregateConfiguration": { 
            "Aggregates": [ "string" ],
            "TotalConstituents": number
         },
         "CopyTagsToBackups": boolean,
         "FlexCacheEndpointType": "string",
         "JunctionPath": "string",
         "OntapVolumeType": "string",
         "SecurityStyle": "string",
         "SizeInBytes": number,
         "SizeInMegabytes": number,
         "SnaplockConfiguration": { 
            "AuditLogVolume": boolean,
            "AutocommitPeriod": { 
               "Type": "string",
               "Value": number
            },
            "PrivilegedDelete": "string",
            "RetentionPeriod": { 
               "DefaultRetention": { 
                  "Type": "string",
                  "Value": number
               },
               "MaximumRetention": { 
                  "Type": "string",
                  "Value": number
               },
               "MinimumRetention": { 
                  "Type": "string",
                  "Value": number
               }
            },
            "SnaplockType": "string",
            "VolumeAppendModeEnabled": boolean
         },
         "SnapshotPolicy": "string",
         "StorageEfficiencyEnabled": boolean,
         "StorageVirtualMachineId": "string",
         "StorageVirtualMachineRoot": boolean,
         "TieringPolicy": { 
            "CoolingPeriod": number,
            "Name": "string"
         },
         "UUID": "string",
         "VolumeStyle": "string"
      },
      "OpenZFSConfiguration": { 
         "CopyStrategy": "string",
         "CopyTagsToSnapshots": boolean,
         "DataCompressionType": "string",
         "DeleteClonedVolumes": boolean,
         "DeleteIntermediateData": boolean,
         "DeleteIntermediateSnaphots": boolean,
         "DestinationSnapshot": "string",
         "NfsExports": [ 
            { 
               "ClientConfigurations": [ 
                  { 
                     "Clients": "string",
                     "Options": [ "string" ]
                  }
               ]
            }
         ],
         "OriginSnapshot": { 
            "CopyStrategy": "string",
            "SnapshotARN": "string"
         },
         "ParentVolumeId": "string",
         "ReadOnly": boolean,
         "RecordSizeKiB": number,
         "RestoreToSnapshot": "string",
         "SourceSnapshotARN": "string",
         "StorageCapacityQuotaGiB": number,
         "StorageCapacityReservationGiB": number,
         "UserAndGroupQuotas": [ 
            { 
               "Id": number,
               "StorageCapacityQuotaGiB": number,
               "Type": "string"
            }
         ],
         "VolumePath": "string"
      },
      "ResourceARN": "string",
      "Tags": [ 
         { 
            "Key": "string",
            "Value": "string"
         }
      ],
      "VolumeId": "string",
      "VolumeType": "string"
   }
}
```

## Response Elements


If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

 ** [Volume](#API_UpdateVolume_ResponseSyntax) **   <a name="FSx-UpdateVolume-response-Volume"></a>
A description of the volume just updated. Returned after a successful `UpdateVolume` API operation.  
Type: [Volume](API_Volume.md) object

## Errors


For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** BadRequest **   
A generic error indicating a failure with a client request.    
 ** Message **   
A detailed error message.
HTTP Status Code: 400

 ** IncompatibleParameterError **   
The error returned when a second request is received with the same client request token but different parameters settings. A client request token should always uniquely identify a single request.    
 ** Message **   
A detailed error message.  
 ** Parameter **   
A parameter that is incompatible with the earlier request.
HTTP Status Code: 400

 ** InternalServerError **   
A generic error indicating a server-side failure.    
 ** Message **   
A detailed error message.
HTTP Status Code: 500

 ** MissingVolumeConfiguration **   
A volume configuration is required for this operation.    
 ** Message **   
A detailed error message.
HTTP Status Code: 400

 ** VolumeNotFound **   
No Amazon FSx volumes were found based upon the supplied parameters.    
 ** Message **   
A detailed error message.
HTTP Status Code: 400

## Examples


### Update an existing ONTAP volume


The following example updates the specified volume's `JunctionPath`, `SizeInMegabytes`, and `CoolingPeriod` properties.

```
{
   "OntapConfiguration": { 
      "JunctionPath": "/new_junction_path/dir2",
      "SizeInMegabytes": 204800,
      "TieringPolicy": { 
         "CoolingPeriod": 120
      }
   },
   "VolumeId": "fsvol-0123456789abcef2"
}
```

## See Also


For more information about using this API in one of the language-specific AWS SDKs, see the following:
+  [AWS Command Line Interface V2](https://docs.aws.amazon.com/goto/cli2/fsx-2018-03-01/UpdateVolume) 
+  [AWS SDK for .NET V4](https://docs.aws.amazon.com/goto/DotNetSDKV4/fsx-2018-03-01/UpdateVolume) 
+  [AWS SDK for C\$1\$1](https://docs.aws.amazon.com/goto/SdkForCpp/fsx-2018-03-01/UpdateVolume) 
+  [AWS SDK for Go v2](https://docs.aws.amazon.com/goto/SdkForGoV2/fsx-2018-03-01/UpdateVolume) 
+  [AWS SDK for Java V2](https://docs.aws.amazon.com/goto/SdkForJavaV2/fsx-2018-03-01/UpdateVolume) 
+  [AWS SDK for JavaScript V3](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/fsx-2018-03-01/UpdateVolume) 
+  [AWS SDK for Kotlin](https://docs.aws.amazon.com/goto/SdkForKotlin/fsx-2018-03-01/UpdateVolume) 
+  [AWS SDK for PHP V3](https://docs.aws.amazon.com/goto/SdkForPHPV3/fsx-2018-03-01/UpdateVolume) 
+  [AWS SDK for Python](https://docs.aws.amazon.com/goto/boto3/fsx-2018-03-01/UpdateVolume) 
+  [AWS SDK for Ruby V3](https://docs.aws.amazon.com/goto/SdkForRubyV3/fsx-2018-03-01/UpdateVolume) 