SDK for PHP 3.x

Client: Aws\StorageGateway\StorageGatewayClient
Service ID: storagegateway
Version: 2013-06-30

This page describes the parameters and results for the operations of the AWS Storage Gateway (2013-06-30), and shows how to use the Aws\StorageGateway\StorageGatewayClient object to call the described operations. This documentation is specific to the 2013-06-30 API version of the service.

Operation Summary

Each of the following operations can be created from a client using $client->getCommand('CommandName'), where "CommandName" is the name of one of the following operations. Note: a command is a value that encapsulates an operation and the parameters used to create an HTTP request.

You can also create and send a command immediately using the magic methods available on a client object: $client->commandName(/* parameters */). You can send the command asynchronously (returning a promise) by appending the word "Async" to the operation name: $client->commandNameAsync(/* parameters */).

ActivateGateway ( array $params = [] )
Activates the gateway you previously deployed on your host.
AddCache ( array $params = [] )
Configures one or more gateway local disks as cache for a gateway.
AddTagsToResource ( array $params = [] )
Adds one or more tags to the specified resource.
AddUploadBuffer ( array $params = [] )
Configures one or more gateway local disks as upload buffer for a specified gateway.
AddWorkingStorage ( array $params = [] )
Configures one or more gateway local disks as working storage for a gateway.
AssignTapePool ( array $params = [] )
Assigns a tape to a tape pool for archiving.
AssociateFileSystem ( array $params = [] )
Associate an Amazon FSx file system with the FSx File Gateway.
AttachVolume ( array $params = [] )
Connects a volume to an iSCSI connection and then attaches the volume to the specified gateway.
CancelArchival ( array $params = [] )
Cancels archiving of a virtual tape to the virtual tape shelf (VTS) after the archiving process is initiated.
CancelRetrieval ( array $params = [] )
Cancels retrieval of a virtual tape from the virtual tape shelf (VTS) to a gateway after the retrieval process is initiated.
CreateCachediSCSIVolume ( array $params = [] )
Creates a cached volume on a specified cached volume gateway.
CreateNFSFileShare ( array $params = [] )
Creates a Network File System (NFS) file share on an existing S3 File Gateway.
CreateSMBFileShare ( array $params = [] )
Creates a Server Message Block (SMB) file share on an existing S3 File Gateway.
CreateSnapshot ( array $params = [] )
Initiates a snapshot of a volume.
CreateSnapshotFromVolumeRecoveryPoint ( array $params = [] )
Initiates a snapshot of a gateway from a volume recovery point.
CreateStorediSCSIVolume ( array $params = [] )
Creates a volume on a specified gateway.
CreateTapePool ( array $params = [] )
Creates a new custom tape pool.
CreateTapeWithBarcode ( array $params = [] )
Creates a virtual tape by using your own barcode.
CreateTapes ( array $params = [] )
Creates one or more virtual tapes.
DeleteAutomaticTapeCreationPolicy ( array $params = [] )
Deletes the automatic tape creation policy of a gateway.
DeleteBandwidthRateLimit ( array $params = [] )
Deletes the bandwidth rate limits of a gateway.
DeleteChapCredentials ( array $params = [] )
Deletes Challenge-Handshake Authentication Protocol (CHAP) credentials for a specified iSCSI target and initiator pair.
DeleteFileShare ( array $params = [] )
Deletes a file share from an S3 File Gateway.
DeleteGateway ( array $params = [] )
Deletes a gateway.
DeleteSnapshotSchedule ( array $params = [] )
Deletes a snapshot of a volume.
DeleteTape ( array $params = [] )
Deletes the specified virtual tape.
DeleteTapeArchive ( array $params = [] )
Deletes the specified virtual tape from the virtual tape shelf (VTS).
DeleteTapePool ( array $params = [] )
Delete a custom tape pool.
DeleteVolume ( array $params = [] )
Deletes the specified storage volume that you previously created using the CreateCachediSCSIVolume or CreateStorediSCSIVolume API.
DescribeAvailabilityMonitorTest ( array $params = [] )
Returns information about the most recent high availability monitoring test that was performed on the host in a cluster.
DescribeBandwidthRateLimit ( array $params = [] )
Returns the bandwidth rate limits of a gateway.
DescribeBandwidthRateLimitSchedule ( array $params = [] )
Returns information about the bandwidth rate limit schedule of a gateway.
DescribeCache ( array $params = [] )
Returns information about the cache of a gateway.
DescribeCachediSCSIVolumes ( array $params = [] )
Returns a description of the gateway volumes specified in the request.
DescribeChapCredentials ( array $params = [] )
Returns an array of Challenge-Handshake Authentication Protocol (CHAP) credentials information for a specified iSCSI target, one for each target-initiator pair.
DescribeFileSystemAssociations ( array $params = [] )
Gets the file system association information.
DescribeGatewayInformation ( array $params = [] )
Returns metadata about a gateway such as its name, network interfaces, time zone, status, and software version.
DescribeMaintenanceStartTime ( array $params = [] )
Returns your gateway's weekly maintenance start time including the day and time of the week.
DescribeNFSFileShares ( array $params = [] )
Gets a description for one or more Network File System (NFS) file shares from an S3 File Gateway.
DescribeSMBFileShares ( array $params = [] )
Gets a description for one or more Server Message Block (SMB) file shares from a S3 File Gateway.
DescribeSMBSettings ( array $params = [] )
Gets a description of a Server Message Block (SMB) file share settings from a file gateway.
DescribeSnapshotSchedule ( array $params = [] )
Describes the snapshot schedule for the specified gateway volume.
DescribeStorediSCSIVolumes ( array $params = [] )
Returns the description of the gateway volumes specified in the request.
DescribeTapeArchives ( array $params = [] )
Returns a description of specified virtual tapes in the virtual tape shelf (VTS).
DescribeTapeRecoveryPoints ( array $params = [] )
Returns a list of virtual tape recovery points that are available for the specified tape gateway.
DescribeTapes ( array $params = [] )
Returns a description of virtual tapes that correspond to the specified Amazon Resource Names (ARNs).
DescribeUploadBuffer ( array $params = [] )
Returns information about the upload buffer of a gateway.
DescribeVTLDevices ( array $params = [] )
Returns a description of virtual tape library (VTL) devices for the specified tape gateway.
DescribeWorkingStorage ( array $params = [] )
Returns information about the working storage of a gateway.
DetachVolume ( array $params = [] )
Disconnects a volume from an iSCSI connection and then detaches the volume from the specified gateway.
DisableGateway ( array $params = [] )
Disables a tape gateway when the gateway is no longer functioning.
DisassociateFileSystem ( array $params = [] )
Disassociates an Amazon FSx file system from the specified gateway.
JoinDomain ( array $params = [] )
Adds a file gateway to an Active Directory domain.
ListAutomaticTapeCreationPolicies ( array $params = [] )
Lists the automatic tape creation policies for a gateway.
ListFileShares ( array $params = [] )
Gets a list of the file shares for a specific S3 File Gateway, or the list of file shares that belong to the calling Amazon Web Services account.
ListFileSystemAssociations ( array $params = [] )
Gets a list of FileSystemAssociationSummary objects.
ListGateways ( array $params = [] )
Lists gateways owned by an Amazon Web Services account in an Amazon Web Services Region specified in the request.
ListLocalDisks ( array $params = [] )
Returns a list of the gateway's local disks.
ListTagsForResource ( array $params = [] )
Lists the tags that have been added to the specified resource.
ListTapePools ( array $params = [] )
Lists custom tape pools.
ListTapes ( array $params = [] )
Lists virtual tapes in your virtual tape library (VTL) and your virtual tape shelf (VTS).
ListVolumeInitiators ( array $params = [] )
Lists iSCSI initiators that are connected to a volume.
ListVolumeRecoveryPoints ( array $params = [] )
Lists the recovery points for a specified gateway.
ListVolumes ( array $params = [] )
Lists the iSCSI stored volumes of a gateway.
NotifyWhenUploaded ( array $params = [] )
Sends you notification through CloudWatch Events when all files written to your file share have been uploaded to Amazon S3.
RefreshCache ( array $params = [] )
Refreshes the cached inventory of objects for the specified file share.
RemoveTagsFromResource ( array $params = [] )
Removes one or more tags from the specified resource.
ResetCache ( array $params = [] )
Resets all cache disks that have encountered an error and makes the disks available for reconfiguration as cache storage.
RetrieveTapeArchive ( array $params = [] )
Retrieves an archived virtual tape from the virtual tape shelf (VTS) to a tape gateway.
RetrieveTapeRecoveryPoint ( array $params = [] )
Retrieves the recovery point for the specified virtual tape.
SetLocalConsolePassword ( array $params = [] )
Sets the password for your VM local console.
SetSMBGuestPassword ( array $params = [] )
Sets the password for the guest user smbguest.
ShutdownGateway ( array $params = [] )
Shuts down a Tape Gateway or Volume Gateway.
StartAvailabilityMonitorTest ( array $params = [] )
Start a test that verifies that the specified gateway is configured for High Availability monitoring in your host environment.
StartGateway ( array $params = [] )
Starts a gateway that you previously shut down (see ShutdownGateway).
UpdateAutomaticTapeCreationPolicy ( array $params = [] )
Updates the automatic tape creation policy of a gateway.
UpdateBandwidthRateLimit ( array $params = [] )
Updates the bandwidth rate limits of a gateway.
UpdateBandwidthRateLimitSchedule ( array $params = [] )
Updates the bandwidth rate limit schedule for a specified gateway.
UpdateChapCredentials ( array $params = [] )
Updates the Challenge-Handshake Authentication Protocol (CHAP) credentials for a specified iSCSI target.
UpdateFileSystemAssociation ( array $params = [] )
Updates a file system association.
UpdateGatewayInformation ( array $params = [] )
Updates a gateway's metadata, which includes the gateway's name and time zone.
UpdateGatewaySoftwareNow ( array $params = [] )
Updates the gateway virtual machine (VM) software.
UpdateMaintenanceStartTime ( array $params = [] )
Updates a gateway's weekly maintenance start time information, including day and time of the week.
UpdateNFSFileShare ( array $params = [] )
Updates a Network File System (NFS) file share.
UpdateSMBFileShare ( array $params = [] )
Updates a Server Message Block (SMB) file share.
UpdateSMBFileShareVisibility ( array $params = [] )
Controls whether the shares on an S3 File Gateway are visible in a net view or browse list.
UpdateSMBLocalGroups ( array $params = [] )
Updates the list of Active Directory users and groups that have special permissions for SMB file shares on the gateway.
UpdateSMBSecurityStrategy ( array $params = [] )
Updates the SMB security strategy on a file gateway.
UpdateSnapshotSchedule ( array $params = [] )
Updates a snapshot schedule configured for a gateway volume.
UpdateVTLDeviceType ( array $params = [] )
Updates the type of medium changer in a tape gateway.

Paginators

Paginators handle automatically iterating over paginated API results. Paginators are associated with specific API operations, and they accept the parameters that the corresponding API operation accepts. You can get a paginator from a client class using getPaginator($paginatorName, $operationParameters). This client supports the following paginators:

DescribeCachediSCSIVolumes
DescribeStorediSCSIVolumes
DescribeTapeArchives
DescribeTapeRecoveryPoints
DescribeTapes
DescribeVTLDevices
ListFileShares
ListFileSystemAssociations
ListGateways
ListLocalDisks
ListTagsForResource
ListTapePools
ListTapes
ListVolumeRecoveryPoints
ListVolumes

Operations

ActivateGateway

$result = $client->activateGateway([/* ... */]);
$promise = $client->activateGatewayAsync([/* ... */]);

Activates the gateway you previously deployed on your host. In the activation process, you specify information such as the Amazon Web Services Region that you want to use for storing snapshots or tapes, the time zone for scheduled snapshots the gateway snapshot schedule window, an activation key, and a name for your gateway. The activation process also associates your gateway with your account. For more information, see UpdateGatewayInformation.

You must turn on the gateway VM before you can activate your gateway.

Parameter Syntax

$result = $client->activateGateway([
    'ActivationKey' => '<string>', // REQUIRED
    'GatewayName' => '<string>', // REQUIRED
    'GatewayRegion' => '<string>', // REQUIRED
    'GatewayTimezone' => '<string>', // REQUIRED
    'GatewayType' => '<string>',
    'MediumChangerType' => '<string>',
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
    'TapeDriveType' => '<string>',
]);

Parameter Details

Members
ActivationKey
Required: Yes
Type: string

Your gateway activation key. You can obtain the activation key by sending an HTTP GET request with redirects enabled to the gateway IP address (port 80). The redirect URL returned in the response provides you the activation key for your gateway in the query string parameter activationKey. It may also include other activation-related parameters, however, these are merely defaults -- the arguments you pass to the ActivateGateway API call determine the actual configuration of your gateway.

For more information, see Getting activation key in the Storage Gateway User Guide.

GatewayName
Required: Yes
Type: string

The name you configured for your gateway.

GatewayRegion
Required: Yes
Type: string

A value that indicates the Amazon Web Services Region where you want to store your data. The gateway Amazon Web Services Region specified must be the same Amazon Web Services Region as the Amazon Web Services Region in your Host header in the request. For more information about available Amazon Web Services Regions and endpoints for Storage Gateway, see Storage Gateway endpoints and quotas in the Amazon Web Services General Reference.

Valid Values: See Storage Gateway endpoints and quotas in the Amazon Web Services General Reference.

GatewayTimezone
Required: Yes
Type: string

A value that indicates the time zone you want to set for the gateway. The time zone is of the format "GMT", "GMT-hr:mm", or "GMT+hr:mm". For example, GMT indicates Greenwich Mean Time without any offset. GMT-4:00 indicates the time is 4 hours behind GMT. GMT+2:00 indicates the time is 2 hours ahead of GMT. The time zone is used, for example, for scheduling snapshots and your gateway's maintenance schedule.

GatewayType
Type: string

A value that defines the type of gateway to activate. The type specified is critical to all later functions of the gateway and cannot be changed after activation. The default value is CACHED.

Valid Values: STORED | CACHED | VTL | FILE_S3 | FILE_FSX_SMB

MediumChangerType
Type: string

The value that indicates the type of medium changer to use for tape gateway. This field is optional.

Valid Values: STK-L700 | AWS-Gateway-VTL | IBM-03584L32-0402

Tags
Type: Array of Tag structures

A list of up to 50 tags that you can assign to the gateway. Each tag is a key-value pair.

Valid characters for key and value are letters, spaces, and numbers that can be represented in UTF-8 format, and the following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and the maximum length for a tag's value is 256 characters.

TapeDriveType
Type: string

The value that indicates the type of tape drive to use for tape gateway. This field is optional.

Valid Values: IBM-ULT3580-TD5

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To activate the gateway

Activates the gateway you previously deployed on your host.

$result = $client->activateGateway([
    'ActivationKey' => '29AV1-3OFV9-VVIUB-NKT0I-LRO6V',
    'GatewayName' => 'My_Gateway',
    'GatewayRegion' => 'us-east-1',
    'GatewayTimezone' => 'GMT-12:00',
    'GatewayType' => 'STORED',
    'MediumChangerType' => 'AWS-Gateway-VTL',
    'TapeDriveType' => 'IBM-ULT3580-TD5',
]);

Result syntax:

[
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-11A2222B',
]

AddCache

$result = $client->addCache([/* ... */]);
$promise = $client->addCacheAsync([/* ... */]);

Configures one or more gateway local disks as cache for a gateway. This operation is only supported in the cached volume, tape, and file gateway type (see How Storage Gateway works (architecture).

In the request, you specify the gateway Amazon Resource Name (ARN) to which you want to add cache, and one or more disk IDs that you want to configure as cache.

Parameter Syntax

$result = $client->addCache([
    'DiskIds' => ['<string>', ...], // REQUIRED
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
DiskIds
Required: Yes
Type: Array of strings

An array of strings that identify disks that are to be configured as working storage. Each string has a minimum length of 1 and maximum length of 300. You can get the disk IDs from the ListLocalDisks API.

GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To add a cache

The following example shows a request that activates a gateway-stored volume.

$result = $client->addCache([
    'DiskIds' => [
        'pci-0000:03:00.0-scsi-0:0:0:0',
        'pci-0000:03:00.0-scsi-0:0:1:0',
    ],
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]);

Result syntax:

[
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]

AddTagsToResource

$result = $client->addTagsToResource([/* ... */]);
$promise = $client->addTagsToResourceAsync([/* ... */]);

Adds one or more tags to the specified resource. You use tags to add metadata to resources, which you can use to categorize these resources. For example, you can categorize resources by purpose, owner, environment, or team. Each tag consists of a key and a value, which you define. You can add tags to the following Storage Gateway resources:

  • Storage gateways of all types

  • Storage volumes

  • Virtual tapes

  • NFS and SMB file shares

  • File System associations

You can create a maximum of 50 tags for each resource. Virtual tapes and storage volumes that are recovered to a new gateway maintain their tags.

Parameter Syntax

$result = $client->addTagsToResource([
    'ResourceARN' => '<string>', // REQUIRED
    'Tags' => [ // REQUIRED
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
ResourceARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the resource you want to add tags to.

Tags
Required: Yes
Type: Array of Tag structures

The key-value pair that represents the tag you want to add to the resource. The value can be an empty string.

Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and the maximum length for a tag's value is 256.

Result Syntax

[
    'ResourceARN' => '<string>',
]

Result Details

Members
ResourceARN
Type: string

The Amazon Resource Name (ARN) of the resource you want to add tags to.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To add tags to resource

Adds one or more tags to the specified resource.

$result = $client->addTagsToResource([
    'ResourceARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-11A2222B',
    'Tags' => [
        [
            'Key' => 'Dev Gatgeway Region',
            'Value' => 'East Coast',
        ],
    ],
]);

Result syntax:

[
    'ResourceARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-11A2222B',
]

AddUploadBuffer

$result = $client->addUploadBuffer([/* ... */]);
$promise = $client->addUploadBufferAsync([/* ... */]);

Configures one or more gateway local disks as upload buffer for a specified gateway. This operation is supported for the stored volume, cached volume, and tape gateway types.

In the request, you specify the gateway Amazon Resource Name (ARN) to which you want to add upload buffer, and one or more disk IDs that you want to configure as upload buffer.

Parameter Syntax

$result = $client->addUploadBuffer([
    'DiskIds' => ['<string>', ...], // REQUIRED
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
DiskIds
Required: Yes
Type: Array of strings

An array of strings that identify disks that are to be configured as working storage. Each string has a minimum length of 1 and maximum length of 300. You can get the disk IDs from the ListLocalDisks API.

GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To add upload buffer on local disk

Configures one or more gateway local disks as upload buffer for a specified gateway.

$result = $client->addUploadBuffer([
    'DiskIds' => [
        'pci-0000:03:00.0-scsi-0:0:0:0',
        'pci-0000:03:00.0-scsi-0:0:1:0',
    ],
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]);

Result syntax:

[
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]

AddWorkingStorage

$result = $client->addWorkingStorage([/* ... */]);
$promise = $client->addWorkingStorageAsync([/* ... */]);

Configures one or more gateway local disks as working storage for a gateway. This operation is only supported in the stored volume gateway type. This operation is deprecated in cached volume API version 20120630. Use AddUploadBuffer instead.

Working storage is also referred to as upload buffer. You can also use the AddUploadBuffer operation to add upload buffer to a stored volume gateway.

In the request, you specify the gateway Amazon Resource Name (ARN) to which you want to add working storage, and one or more disk IDs that you want to configure as working storage.

Parameter Syntax

$result = $client->addWorkingStorage([
    'DiskIds' => ['<string>', ...], // REQUIRED
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
DiskIds
Required: Yes
Type: Array of strings

An array of strings that identify disks that are to be configured as working storage. Each string has a minimum length of 1 and maximum length of 300. You can get the disk IDs from the ListLocalDisks API.

GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To add storage on local disk

Configures one or more gateway local disks as working storage for a gateway. (Working storage is also referred to as upload buffer.)

$result = $client->addWorkingStorage([
    'DiskIds' => [
        'pci-0000:03:00.0-scsi-0:0:0:0',
        'pci-0000:03:00.0-scsi-0:0:1:0',
    ],
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]);

Result syntax:

[
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]

AssignTapePool

$result = $client->assignTapePool([/* ... */]);
$promise = $client->assignTapePoolAsync([/* ... */]);

Assigns a tape to a tape pool for archiving. The tape assigned to a pool is archived in the S3 storage class that is associated with the pool. When you use your backup application to eject the tape, the tape is archived directly into the S3 storage class (S3 Glacier or S3 Glacier Deep Archive) that corresponds to the pool.

Parameter Syntax

$result = $client->assignTapePool([
    'BypassGovernanceRetention' => true || false,
    'PoolId' => '<string>', // REQUIRED
    'TapeARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
BypassGovernanceRetention
Type: boolean

Set permissions to bypass governance retention. If the lock type of the archived tape is Governance, the tape's archived age is not older than RetentionLockInDays, and the user does not already have BypassGovernanceRetention, setting this to TRUE enables the user to bypass the retention lock. This parameter is set to true by default for calls from the console.

Valid values: TRUE | FALSE

PoolId
Required: Yes
Type: string

The ID of the pool that you want to add your tape to for archiving. The tape in this pool is archived in the S3 storage class that is associated with the pool. When you use your backup application to eject the tape, the tape is archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive) that corresponds to the pool.

TapeARN
Required: Yes
Type: string

The unique Amazon Resource Name (ARN) of the virtual tape that you want to add to the tape pool.

Result Syntax

[
    'TapeARN' => '<string>',
]

Result Details

Members
TapeARN
Type: string

The unique Amazon Resource Names (ARN) of the virtual tape that was added to the tape pool.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

AssociateFileSystem

$result = $client->associateFileSystem([/* ... */]);
$promise = $client->associateFileSystemAsync([/* ... */]);

Associate an Amazon FSx file system with the FSx File Gateway. After the association process is complete, the file shares on the Amazon FSx file system are available for access through the gateway. This operation only supports the FSx File Gateway type.

Parameter Syntax

$result = $client->associateFileSystem([
    'AuditDestinationARN' => '<string>',
    'CacheAttributes' => [
        'CacheStaleTimeoutInSeconds' => <integer>,
    ],
    'ClientToken' => '<string>', // REQUIRED
    'EndpointNetworkConfiguration' => [
        'IpAddresses' => ['<string>', ...],
    ],
    'GatewayARN' => '<string>', // REQUIRED
    'LocationARN' => '<string>', // REQUIRED
    'Password' => '<string>', // REQUIRED
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
    'UserName' => '<string>', // REQUIRED
]);

Parameter Details

Members
AuditDestinationARN
Type: string

The Amazon Resource Name (ARN) of the storage used for the audit logs.

CacheAttributes
Type: CacheAttributes structure

The refresh cache information for the file share or FSx file systems.

ClientToken
Required: Yes
Type: string

A unique string value that you supply that is used by the FSx File Gateway to ensure idempotent file system association creation.

EndpointNetworkConfiguration

Specifies the network configuration information for the gateway associated with the Amazon FSx file system.

If multiple file systems are associated with this gateway, this parameter's IpAddresses field is required.

GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

LocationARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the Amazon FSx file system to associate with the FSx File Gateway.

Password
Required: Yes
Type: string

The password of the user credential.

Tags
Type: Array of Tag structures

A list of up to 50 tags that can be assigned to the file system association. Each tag is a key-value pair.

UserName
Required: Yes
Type: string

The user name of the user credential that has permission to access the root share D$ of the Amazon FSx file system. The user account must belong to the Amazon FSx delegated admin user group.

Result Syntax

[
    'FileSystemAssociationARN' => '<string>',
]

Result Details

Members
FileSystemAssociationARN
Type: string

The ARN of the newly created file system association.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

AttachVolume

$result = $client->attachVolume([/* ... */]);
$promise = $client->attachVolumeAsync([/* ... */]);

Connects a volume to an iSCSI connection and then attaches the volume to the specified gateway. Detaching and attaching a volume enables you to recover your data from one gateway to a different gateway without creating a snapshot. It also makes it easier to move your volumes from an on-premises gateway to a gateway hosted on an Amazon EC2 instance.

Parameter Syntax

$result = $client->attachVolume([
    'DiskId' => '<string>',
    'GatewayARN' => '<string>', // REQUIRED
    'NetworkInterfaceId' => '<string>', // REQUIRED
    'TargetName' => '<string>',
    'VolumeARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
DiskId
Type: string

The unique device ID or other distinguishing data that identifies the local disk used to create the volume. This value is only required when you are attaching a stored volume.

GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway that you want to attach the volume to.

NetworkInterfaceId
Required: Yes
Type: string

The network interface of the gateway on which to expose the iSCSI target. Only IPv4 addresses are accepted. Use DescribeGatewayInformation to get a list of the network interfaces available on a gateway.

Valid Values: A valid IP address.

TargetName
Type: string

The name of the iSCSI target used by an initiator to connect to a volume and used as a suffix for the target ARN. For example, specifying TargetName as myvolume results in the target ARN of arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume. The target name must be unique across all volumes on a gateway.

If you don't specify a value, Storage Gateway uses the value that was previously used for this volume as the new target name.

VolumeARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the volume to attach to the specified gateway.

Result Syntax

[
    'TargetARN' => '<string>',
    'VolumeARN' => '<string>',
]

Result Details

Members
TargetARN
Type: string

The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI name for the initiator that was used to connect to the target.

VolumeARN
Type: string

The Amazon Resource Name (ARN) of the volume that was attached to the gateway.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

CancelArchival

$result = $client->cancelArchival([/* ... */]);
$promise = $client->cancelArchivalAsync([/* ... */]);

Cancels archiving of a virtual tape to the virtual tape shelf (VTS) after the archiving process is initiated. This operation is only supported in the tape gateway type.

Parameter Syntax

$result = $client->cancelArchival([
    'GatewayARN' => '<string>', // REQUIRED
    'TapeARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

TapeARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the virtual tape you want to cancel archiving for.

Result Syntax

[
    'TapeARN' => '<string>',
]

Result Details

Members
TapeARN
Type: string

The Amazon Resource Name (ARN) of the virtual tape for which archiving was canceled.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To cancel virtual tape archiving

Cancels archiving of a virtual tape to the virtual tape shelf (VTS) after the archiving process is initiated.

$result = $client->cancelArchival([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
    'TapeARN' => 'arn:aws:storagegateway:us-east-1:999999999999:tape/AMZN01A2A4',
]);

Result syntax:

[
    'TapeARN' => 'arn:aws:storagegateway:us-east-1:999999999999:tape/AMZN01A2A4',
]

CancelRetrieval

$result = $client->cancelRetrieval([/* ... */]);
$promise = $client->cancelRetrievalAsync([/* ... */]);

Cancels retrieval of a virtual tape from the virtual tape shelf (VTS) to a gateway after the retrieval process is initiated. The virtual tape is returned to the VTS. This operation is only supported in the tape gateway type.

Parameter Syntax

$result = $client->cancelRetrieval([
    'GatewayARN' => '<string>', // REQUIRED
    'TapeARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

TapeARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the virtual tape you want to cancel retrieval for.

Result Syntax

[
    'TapeARN' => '<string>',
]

Result Details

Members
TapeARN
Type: string

The Amazon Resource Name (ARN) of the virtual tape for which retrieval was canceled.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To cancel virtual tape retrieval

Cancels retrieval of a virtual tape from the virtual tape shelf (VTS) to a gateway after the retrieval process is initiated.

$result = $client->cancelRetrieval([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
    'TapeARN' => 'arn:aws:storagegateway:us-east-1:999999999999:tape/AMZN01A2A4',
]);

Result syntax:

[
    'TapeARN' => 'arn:aws:storagegateway:us-east-1:999999999999:tape/AMZN01A2A4',
]

CreateCachediSCSIVolume

$result = $client->createCachediSCSIVolume([/* ... */]);
$promise = $client->createCachediSCSIVolumeAsync([/* ... */]);

Creates a cached volume on a specified cached volume gateway. This operation is only supported in the cached volume gateway type.

Cache storage must be allocated to the gateway before you can create a cached volume. Use the AddCache operation to add cache storage to a gateway.

In the request, you must specify the gateway, size of the volume in bytes, the iSCSI target name, an IP address on which to expose the target, and a unique client token. In response, the gateway creates the volume and returns information about it. This information includes the volume Amazon Resource Name (ARN), its size, and the iSCSI target ARN that initiators can use to connect to the volume target.

Optionally, you can provide the ARN for an existing volume as the SourceVolumeARN for this cached volume, which creates an exact copy of the existing volume’s latest recovery point. The VolumeSizeInBytes value must be equal to or larger than the size of the copied volume, in bytes.

Parameter Syntax

$result = $client->createCachediSCSIVolume([
    'ClientToken' => '<string>', // REQUIRED
    'GatewayARN' => '<string>', // REQUIRED
    'KMSEncrypted' => true || false,
    'KMSKey' => '<string>',
    'NetworkInterfaceId' => '<string>', // REQUIRED
    'SnapshotId' => '<string>',
    'SourceVolumeARN' => '<string>',
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
    'TargetName' => '<string>', // REQUIRED
    'VolumeSizeInBytes' => <integer>, // REQUIRED
]);

Parameter Details

Members
ClientToken
Required: Yes
Type: string

A unique identifier that you use to retry a request. If you retry a request, use the same ClientToken you specified in the initial request.

GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

KMSEncrypted
Type: boolean

Set to true to use Amazon S3 server-side encryption with your own KMS key, or false to use a key managed by Amazon S3. Optional.

Valid Values: true | false

KMSKey
Type: string

The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when KMSEncrypted is true. Optional.

NetworkInterfaceId
Required: Yes
Type: string

The network interface of the gateway on which to expose the iSCSI target. Only IPv4 addresses are accepted. Use DescribeGatewayInformation to get a list of the network interfaces available on a gateway.

Valid Values: A valid IP address.

SnapshotId
Type: string

The snapshot ID (e.g. "snap-1122aabb") of the snapshot to restore as the new cached volume. Specify this field if you want to create the iSCSI storage volume from a snapshot; otherwise, do not include this field. To list snapshots for your account use DescribeSnapshots in the Amazon Elastic Compute Cloud API Reference.

SourceVolumeARN
Type: string

The ARN for an existing volume. Specifying this ARN makes the new volume into an exact copy of the specified existing volume's latest recovery point. The VolumeSizeInBytes value for this new volume must be equal to or larger than the size of the existing volume, in bytes.

Tags
Type: Array of Tag structures

A list of up to 50 tags that you can assign to a cached volume. Each tag is a key-value pair.

Valid characters for key and value are letters, spaces, and numbers that you can represent in UTF-8 format, and the following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and the maximum length for a tag's value is 256 characters.

TargetName
Required: Yes
Type: string

The name of the iSCSI target used by an initiator to connect to a volume and used as a suffix for the target ARN. For example, specifying TargetName as myvolume results in the target ARN of arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume. The target name must be unique across all volumes on a gateway.

If you don't specify a value, Storage Gateway uses the value that was previously used for this volume as the new target name.

VolumeSizeInBytes
Required: Yes
Type: long (int|float)

The size of the volume in bytes.

Result Syntax

[
    'TargetARN' => '<string>',
    'VolumeARN' => '<string>',
]

Result Details

Members
TargetARN
Type: string

The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI name that initiators can use to connect to the target.

VolumeARN
Type: string

The Amazon Resource Name (ARN) of the configured volume.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To create a cached iSCSI volume

Creates a cached volume on a specified cached gateway.

$result = $client->createCachediSCSIVolume([
    'ClientToken' => 'cachedvol112233',
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
    'NetworkInterfaceId' => '10.1.1.1',
    'SnapshotId' => 'snap-f47b7b94',
    'TargetName' => 'my-volume',
    'VolumeSizeInBytes' => 536870912000,
]);

Result syntax:

[
    'TargetARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume',
    'VolumeARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
]

CreateNFSFileShare

$result = $client->createNFSFileShare([/* ... */]);
$promise = $client->createNFSFileShareAsync([/* ... */]);

Creates a Network File System (NFS) file share on an existing S3 File Gateway. In Storage Gateway, a file share is a file system mount point backed by Amazon S3 cloud storage. Storage Gateway exposes file shares using an NFS interface. This operation is only supported for S3 File Gateways.

S3 File gateway requires Security Token Service (Amazon Web Services STS) to be activated to enable you to create a file share. Make sure Amazon Web Services STS is activated in the Amazon Web Services Region you are creating your S3 File Gateway in. If Amazon Web Services STS is not activated in the Amazon Web Services Region, activate it. For information about how to activate Amazon Web Services STS, see Activating and deactivating Amazon Web Services STS in an Amazon Web Services Region in the Identity and Access Management User Guide.

S3 File Gateways do not support creating hard or symbolic links on a file share.

Parameter Syntax

$result = $client->createNFSFileShare([
    'AuditDestinationARN' => '<string>',
    'BucketRegion' => '<string>',
    'CacheAttributes' => [
        'CacheStaleTimeoutInSeconds' => <integer>,
    ],
    'ClientList' => ['<string>', ...],
    'ClientToken' => '<string>', // REQUIRED
    'DefaultStorageClass' => '<string>',
    'FileShareName' => '<string>',
    'GatewayARN' => '<string>', // REQUIRED
    'GuessMIMETypeEnabled' => true || false,
    'KMSEncrypted' => true || false,
    'KMSKey' => '<string>',
    'LocationARN' => '<string>', // REQUIRED
    'NFSFileShareDefaults' => [
        'DirectoryMode' => '<string>',
        'FileMode' => '<string>',
        'GroupId' => <integer>,
        'OwnerId' => <integer>,
    ],
    'NotificationPolicy' => '<string>',
    'ObjectACL' => 'private|public-read|public-read-write|authenticated-read|bucket-owner-read|bucket-owner-full-control|aws-exec-read',
    'ReadOnly' => true || false,
    'RequesterPays' => true || false,
    'Role' => '<string>', // REQUIRED
    'Squash' => '<string>',
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
    'VPCEndpointDNSName' => '<string>',
]);

Parameter Details

Members
AuditDestinationARN
Type: string

The Amazon Resource Name (ARN) of the storage used for audit logs.

BucketRegion
Type: string

Specifies the Region of the S3 bucket where the NFS file share stores files.

This parameter is required for NFS file shares that connect to Amazon S3 through a VPC endpoint, a VPC access point, or an access point alias that points to a VPC access point.

CacheAttributes
Type: CacheAttributes structure

Specifies refresh cache information for the file share.

ClientList
Type: Array of strings

The list of clients that are allowed to access the S3 File Gateway. The list must contain either valid IP addresses or valid CIDR blocks.

ClientToken
Required: Yes
Type: string

A unique string value that you supply that is used by S3 File Gateway to ensure idempotent file share creation.

DefaultStorageClass
Type: string

The default storage class for objects put into an Amazon S3 bucket by the S3 File Gateway. The default value is S3_STANDARD. Optional.

Valid Values: S3_STANDARD | S3_INTELLIGENT_TIERING | S3_STANDARD_IA | S3_ONEZONE_IA

FileShareName
Type: string

The name of the file share. Optional.

FileShareName must be set if an S3 prefix name is set in LocationARN, or if an access point or access point alias is used.

GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the S3 File Gateway on which you want to create a file share.

GuessMIMETypeEnabled
Type: boolean

A value that enables guessing of the MIME type for uploaded objects based on file extensions. Set this value to true to enable MIME type guessing, otherwise set to false. The default value is true.

Valid Values: true | false

KMSEncrypted
Type: boolean

Set to true to use Amazon S3 server-side encryption with your own KMS key, or false to use a key managed by Amazon S3. Optional.

Valid Values: true | false

KMSKey
Type: string

The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when KMSEncrypted is true. Optional.

LocationARN
Required: Yes
Type: string

A custom ARN for the backend storage used for storing data for file shares. It includes a resource ARN with an optional prefix concatenation. The prefix must end with a forward slash (/).

You can specify LocationARN as a bucket ARN, access point ARN or access point alias, as shown in the following examples.

Bucket ARN:

arn:aws:s3:::my-bucket/prefix/

Access point ARN:

arn:aws:s3:region:account-id:accesspoint/access-point-name/prefix/

If you specify an access point, the bucket policy must be configured to delegate access control to the access point. For information, see Delegating access control to access points in the Amazon S3 User Guide.

Access point alias:

test-ap-ab123cdef4gehijklmn5opqrstuvuse1a-s3alias

NFSFileShareDefaults
Type: NFSFileShareDefaults structure

File share default values. Optional.

NotificationPolicy
Type: string

The notification policy of the file share. SettlingTimeInSeconds controls the number of seconds to wait after the last point in time a client wrote to a file before generating an ObjectUploaded notification. Because clients can make many small writes to files, it's best to set this parameter for as long as possible to avoid generating multiple notifications for the same file in a small time period.

SettlingTimeInSeconds has no effect on the timing of the object uploading to Amazon S3, only the timing of the notification.

The following example sets NotificationPolicy on with SettlingTimeInSeconds set to 60.

{\"Upload\": {\"SettlingTimeInSeconds\": 60}}

The following example sets NotificationPolicy off.

{}

ObjectACL
Type: string

A value that sets the access control list (ACL) permission for objects in the S3 bucket that a S3 File Gateway puts objects into. The default value is private.

ReadOnly
Type: boolean

A value that sets the write status of a file share. Set this value to true to set the write status to read-only, otherwise set to false.

Valid Values: true | false

RequesterPays
Type: boolean

A value that sets who pays the cost of the request and the cost associated with data download from the S3 bucket. If this value is set to true, the requester pays the costs; otherwise, the S3 bucket owner pays. However, the S3 bucket owner always pays the cost of storing data.

RequesterPays is a configuration for the S3 bucket that backs the file share, so make sure that the configuration on the file share is the same as the S3 bucket configuration.

Valid Values: true | false

Role
Required: Yes
Type: string

The ARN of the Identity and Access Management (IAM) role that an S3 File Gateway assumes when it accesses the underlying storage.

Squash
Type: string

A value that maps a user to anonymous user.

Valid values are the following:

  • RootSquash: Only root is mapped to anonymous user.

  • NoSquash: No one is mapped to anonymous user.

  • AllSquash: Everyone is mapped to anonymous user.

Tags
Type: Array of Tag structures

A list of up to 50 tags that can be assigned to the NFS file share. Each tag is a key-value pair.

Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and the maximum length for a tag's value is 256.

VPCEndpointDNSName
Type: string

Specifies the DNS name for the VPC endpoint that the NFS file share uses to connect to Amazon S3.

This parameter is required for NFS file shares that connect to Amazon S3 through a VPC endpoint, a VPC access point, or an access point alias that points to a VPC access point.

Result Syntax

[
    'FileShareARN' => '<string>',
]

Result Details

Members
FileShareARN
Type: string

The Amazon Resource Name (ARN) of the newly created file share.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

CreateSMBFileShare

$result = $client->createSMBFileShare([/* ... */]);
$promise = $client->createSMBFileShareAsync([/* ... */]);

Creates a Server Message Block (SMB) file share on an existing S3 File Gateway. In Storage Gateway, a file share is a file system mount point backed by Amazon S3 cloud storage. Storage Gateway exposes file shares using an SMB interface. This operation is only supported for S3 File Gateways.

S3 File Gateways require Security Token Service (Amazon Web Services STS) to be activated to enable you to create a file share. Make sure that Amazon Web Services STS is activated in the Amazon Web Services Region you are creating your S3 File Gateway in. If Amazon Web Services STS is not activated in this Amazon Web Services Region, activate it. For information about how to activate Amazon Web Services STS, see Activating and deactivating Amazon Web Services STS in an Amazon Web Services Region in the Identity and Access Management User Guide.

File gateways don't support creating hard or symbolic links on a file share.

Parameter Syntax

$result = $client->createSMBFileShare([
    'AccessBasedEnumeration' => true || false,
    'AdminUserList' => ['<string>', ...],
    'AuditDestinationARN' => '<string>',
    'Authentication' => '<string>',
    'BucketRegion' => '<string>',
    'CacheAttributes' => [
        'CacheStaleTimeoutInSeconds' => <integer>,
    ],
    'CaseSensitivity' => 'ClientSpecified|CaseSensitive',
    'ClientToken' => '<string>', // REQUIRED
    'DefaultStorageClass' => '<string>',
    'FileShareName' => '<string>',
    'GatewayARN' => '<string>', // REQUIRED
    'GuessMIMETypeEnabled' => true || false,
    'InvalidUserList' => ['<string>', ...],
    'KMSEncrypted' => true || false,
    'KMSKey' => '<string>',
    'LocationARN' => '<string>', // REQUIRED
    'NotificationPolicy' => '<string>',
    'ObjectACL' => 'private|public-read|public-read-write|authenticated-read|bucket-owner-read|bucket-owner-full-control|aws-exec-read',
    'OplocksEnabled' => true || false,
    'ReadOnly' => true || false,
    'RequesterPays' => true || false,
    'Role' => '<string>', // REQUIRED
    'SMBACLEnabled' => true || false,
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
    'VPCEndpointDNSName' => '<string>',
    'ValidUserList' => ['<string>', ...],
]);

Parameter Details

Members
AccessBasedEnumeration
Type: boolean

The files and folders on this share will only be visible to users with read access.

AdminUserList
Type: Array of strings

A list of users or groups in the Active Directory that will be granted administrator privileges on the file share. These users can do all file operations as the super-user. Acceptable formats include: DOMAIN\User1, user1, @group1, and @DOMAIN\group1.

Use this option very carefully, because any user in this list can do anything they like on the file share, regardless of file permissions.

AuditDestinationARN
Type: string

The Amazon Resource Name (ARN) of the storage used for audit logs.

Authentication
Type: string

The authentication method that users use to access the file share. The default is ActiveDirectory.

Valid Values: ActiveDirectory | GuestAccess

BucketRegion
Type: string

Specifies the Region of the S3 bucket where the SMB file share stores files.

This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC access point, or an access point alias that points to a VPC access point.

CacheAttributes
Type: CacheAttributes structure

Specifies refresh cache information for the file share.

CaseSensitivity
Type: string

The case of an object name in an Amazon S3 bucket. For ClientSpecified, the client determines the case sensitivity. For CaseSensitive, the gateway determines the case sensitivity. The default value is ClientSpecified.

ClientToken
Required: Yes
Type: string

A unique string value that you supply that is used by S3 File Gateway to ensure idempotent file share creation.

DefaultStorageClass
Type: string

The default storage class for objects put into an Amazon S3 bucket by the S3 File Gateway. The default value is S3_STANDARD. Optional.

Valid Values: S3_STANDARD | S3_INTELLIGENT_TIERING | S3_STANDARD_IA | S3_ONEZONE_IA

FileShareName
Type: string

The name of the file share. Optional.

FileShareName must be set if an S3 prefix name is set in LocationARN, or if an access point or access point alias is used.

GatewayARN
Required: Yes
Type: string

The ARN of the S3 File Gateway on which you want to create a file share.

GuessMIMETypeEnabled
Type: boolean

A value that enables guessing of the MIME type for uploaded objects based on file extensions. Set this value to true to enable MIME type guessing, otherwise set to false. The default value is true.

Valid Values: true | false

InvalidUserList
Type: Array of strings

A list of users or groups in the Active Directory that are not allowed to access the file share. A group must be prefixed with the @ character. Acceptable formats include: DOMAIN\User1, user1, @group1, and @DOMAIN\group1. Can only be set if Authentication is set to ActiveDirectory.

KMSEncrypted
Type: boolean

Set to true to use Amazon S3 server-side encryption with your own KMS key, or false to use a key managed by Amazon S3. Optional.

Valid Values: true | false

KMSKey
Type: string

The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when KMSEncrypted is true. Optional.

LocationARN
Required: Yes
Type: string

A custom ARN for the backend storage used for storing data for file shares. It includes a resource ARN with an optional prefix concatenation. The prefix must end with a forward slash (/).

You can specify LocationARN as a bucket ARN, access point ARN or access point alias, as shown in the following examples.

Bucket ARN:

arn:aws:s3:::my-bucket/prefix/

Access point ARN:

arn:aws:s3:region:account-id:accesspoint/access-point-name/prefix/

If you specify an access point, the bucket policy must be configured to delegate access control to the access point. For information, see Delegating access control to access points in the Amazon S3 User Guide.

Access point alias:

test-ap-ab123cdef4gehijklmn5opqrstuvuse1a-s3alias

NotificationPolicy
Type: string

The notification policy of the file share. SettlingTimeInSeconds controls the number of seconds to wait after the last point in time a client wrote to a file before generating an ObjectUploaded notification. Because clients can make many small writes to files, it's best to set this parameter for as long as possible to avoid generating multiple notifications for the same file in a small time period.

SettlingTimeInSeconds has no effect on the timing of the object uploading to Amazon S3, only the timing of the notification.

The following example sets NotificationPolicy on with SettlingTimeInSeconds set to 60.

{\"Upload\": {\"SettlingTimeInSeconds\": 60}}

The following example sets NotificationPolicy off.

{}

ObjectACL
Type: string

A value that sets the access control list (ACL) permission for objects in the S3 bucket that a S3 File Gateway puts objects into. The default value is private.

OplocksEnabled
Type: boolean

Specifies whether opportunistic locking is enabled for the SMB file share.

Enabling opportunistic locking on case-sensitive shares is not recommended for workloads that involve access to files with the same name in different case.

Valid Values: true | false

ReadOnly
Type: boolean

A value that sets the write status of a file share. Set this value to true to set the write status to read-only, otherwise set to false.

Valid Values: true | false

RequesterPays
Type: boolean

A value that sets who pays the cost of the request and the cost associated with data download from the S3 bucket. If this value is set to true, the requester pays the costs; otherwise, the S3 bucket owner pays. However, the S3 bucket owner always pays the cost of storing data.

RequesterPays is a configuration for the S3 bucket that backs the file share, so make sure that the configuration on the file share is the same as the S3 bucket configuration.

Valid Values: true | false

Role
Required: Yes
Type: string

The ARN of the Identity and Access Management (IAM) role that an S3 File Gateway assumes when it accesses the underlying storage.

SMBACLEnabled
Type: boolean

Set this value to true to enable access control list (ACL) on the SMB file share. Set it to false to map file and directory permissions to the POSIX permissions.

For more information, see Using Microsoft Windows ACLs to control access to an SMB file share in the Storage Gateway User Guide.

Valid Values: true | false

Tags
Type: Array of Tag structures

A list of up to 50 tags that can be assigned to the NFS file share. Each tag is a key-value pair.

Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and the maximum length for a tag's value is 256.

VPCEndpointDNSName
Type: string

Specifies the DNS name for the VPC endpoint that the SMB file share uses to connect to Amazon S3.

This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC access point, or an access point alias that points to a VPC access point.

ValidUserList
Type: Array of strings

Result Syntax

[
    'FileShareARN' => '<string>',
]

Result Details

Members
FileShareARN
Type: string

The Amazon Resource Name (ARN) of the newly created file share.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

CreateSnapshot

$result = $client->createSnapshot([/* ... */]);
$promise = $client->createSnapshotAsync([/* ... */]);

Initiates a snapshot of a volume.

Storage Gateway provides the ability to back up point-in-time snapshots of your data to Amazon Simple Storage (Amazon S3) for durable off-site recovery, and also import the data to an Amazon Elastic Block Store (EBS) volume in Amazon Elastic Compute Cloud (EC2). You can take snapshots of your gateway volume on a scheduled or ad hoc basis. This API enables you to take an ad hoc snapshot. For more information, see Editing a snapshot schedule.

In the CreateSnapshot request, you identify the volume by providing its Amazon Resource Name (ARN). You must also provide description for the snapshot. When Storage Gateway takes the snapshot of specified volume, the snapshot and description appears in the Storage Gateway console. In response, Storage Gateway returns you a snapshot ID. You can use this snapshot ID to check the snapshot progress or later use it when you want to create a volume from a snapshot. This operation is only supported in stored and cached volume gateway type.

To list or delete a snapshot, you must use the Amazon EC2 API. For more information, see DescribeSnapshots or DeleteSnapshot in the Amazon Elastic Compute Cloud API Reference.

Volume and snapshot IDs are changing to a longer length ID format. For more information, see the important note on the Welcome page.

Parameter Syntax

$result = $client->createSnapshot([
    'SnapshotDescription' => '<string>', // REQUIRED
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
    'VolumeARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
SnapshotDescription
Required: Yes
Type: string

Textual description of the snapshot that appears in the Amazon EC2 console, Elastic Block Store snapshots panel in the Description field, and in the Storage Gateway snapshot Details pane, Description field.

Tags
Type: Array of Tag structures

A list of up to 50 tags that can be assigned to a snapshot. Each tag is a key-value pair.

Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and the maximum length for a tag's value is 256.

VolumeARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the volume. Use the ListVolumes operation to return a list of gateway volumes.

Result Syntax

[
    'SnapshotId' => '<string>',
    'VolumeARN' => '<string>',
]

Result Details

Members
SnapshotId
Type: string

The snapshot ID that is used to refer to the snapshot in future operations such as describing snapshots (Amazon Elastic Compute Cloud API DescribeSnapshots) or creating a volume from a snapshot (CreateStorediSCSIVolume).

VolumeARN
Type: string

The Amazon Resource Name (ARN) of the volume of which the snapshot was taken.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

ServiceUnavailableError:

An internal server error has occurred because the service is unavailable. For more information, see the error and message fields.

Examples

Example 1: To create a snapshot of a gateway volume

Initiates an ad-hoc snapshot of a gateway volume.

$result = $client->createSnapshot([
    'SnapshotDescription' => 'My root volume snapshot as of 10/03/2017',
    'VolumeARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
]);

Result syntax:

[
    'SnapshotId' => 'snap-78e22663',
    'VolumeARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
]

CreateSnapshotFromVolumeRecoveryPoint

$result = $client->createSnapshotFromVolumeRecoveryPoint([/* ... */]);
$promise = $client->createSnapshotFromVolumeRecoveryPointAsync([/* ... */]);

Initiates a snapshot of a gateway from a volume recovery point. This operation is only supported in the cached volume gateway type.

A volume recovery point is a point in time at which all data of the volume is consistent and from which you can create a snapshot. To get a list of volume recovery point for cached volume gateway, use ListVolumeRecoveryPoints.

In the CreateSnapshotFromVolumeRecoveryPoint request, you identify the volume by providing its Amazon Resource Name (ARN). You must also provide a description for the snapshot. When the gateway takes a snapshot of the specified volume, the snapshot and its description appear in the Storage Gateway console. In response, the gateway returns you a snapshot ID. You can use this snapshot ID to check the snapshot progress or later use it when you want to create a volume from a snapshot.

To list or delete a snapshot, you must use the Amazon EC2 API. For more information, see DescribeSnapshots or DeleteSnapshot in the Amazon Elastic Compute Cloud API Reference.

Parameter Syntax

$result = $client->createSnapshotFromVolumeRecoveryPoint([
    'SnapshotDescription' => '<string>', // REQUIRED
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
    'VolumeARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
SnapshotDescription
Required: Yes
Type: string

Textual description of the snapshot that appears in the Amazon EC2 console, Elastic Block Store snapshots panel in the Description field, and in the Storage Gateway snapshot Details pane, Description field.

Tags
Type: Array of Tag structures

A list of up to 50 tags that can be assigned to a snapshot. Each tag is a key-value pair.

Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and the maximum length for a tag's value is 256.

VolumeARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the iSCSI volume target. Use the DescribeStorediSCSIVolumes operation to return to retrieve the TargetARN for specified VolumeARN.

Result Syntax

[
    'SnapshotId' => '<string>',
    'VolumeARN' => '<string>',
    'VolumeRecoveryPointTime' => '<string>',
]

Result Details

Members
SnapshotId
Type: string

The ID of the snapshot.

VolumeARN
Type: string

The Amazon Resource Name (ARN) of the iSCSI volume target. Use the DescribeStorediSCSIVolumes operation to return to retrieve the TargetARN for specified VolumeARN.

VolumeRecoveryPointTime
Type: string

The time the volume was created from the recovery point.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

ServiceUnavailableError:

An internal server error has occurred because the service is unavailable. For more information, see the error and message fields.

Examples

Example 1: To create a snapshot of a gateway volume

Initiates a snapshot of a gateway from a volume recovery point.

$result = $client->createSnapshotFromVolumeRecoveryPoint([
    'SnapshotDescription' => 'My root volume snapshot as of 2017-06-30T10:10:10.000Z',
    'VolumeARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
]);

Result syntax:

[
    'SnapshotId' => 'snap-78e22663',
    'VolumeARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
    'VolumeRecoveryPointTime' => '2017-06-30T10:10:10.000Z',
]

CreateStorediSCSIVolume

$result = $client->createStorediSCSIVolume([/* ... */]);
$promise = $client->createStorediSCSIVolumeAsync([/* ... */]);

Creates a volume on a specified gateway. This operation is only supported in the stored volume gateway type.

The size of the volume to create is inferred from the disk size. You can choose to preserve existing data on the disk, create volume from an existing snapshot, or create an empty volume. If you choose to create an empty gateway volume, then any existing data on the disk is erased.

In the request, you must specify the gateway and the disk information on which you are creating the volume. In response, the gateway creates the volume and returns volume information such as the volume Amazon Resource Name (ARN), its size, and the iSCSI target ARN that initiators can use to connect to the volume target.

Parameter Syntax

$result = $client->createStorediSCSIVolume([
    'DiskId' => '<string>', // REQUIRED
    'GatewayARN' => '<string>', // REQUIRED
    'KMSEncrypted' => true || false,
    'KMSKey' => '<string>',
    'NetworkInterfaceId' => '<string>', // REQUIRED
    'PreserveExistingData' => true || false, // REQUIRED
    'SnapshotId' => '<string>',
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
    'TargetName' => '<string>', // REQUIRED
]);

Parameter Details

Members
DiskId
Required: Yes
Type: string

The unique identifier for the gateway local disk that is configured as a stored volume. Use ListLocalDisks to list disk IDs for a gateway.

GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

KMSEncrypted
Type: boolean

Set to true to use Amazon S3 server-side encryption with your own KMS key, or false to use a key managed by Amazon S3. Optional.

Valid Values: true | false

KMSKey
Type: string

The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when KMSEncrypted is true. Optional.

NetworkInterfaceId
Required: Yes
Type: string

The network interface of the gateway on which to expose the iSCSI target. Only IPv4 addresses are accepted. Use DescribeGatewayInformation to get a list of the network interfaces available on a gateway.

Valid Values: A valid IP address.

PreserveExistingData
Required: Yes
Type: boolean

Set to true if you want to preserve the data on the local disk. Otherwise, set to false to create an empty volume.

Valid Values: true | false

SnapshotId
Type: string

The snapshot ID (e.g., "snap-1122aabb") of the snapshot to restore as the new stored volume. Specify this field if you want to create the iSCSI storage volume from a snapshot; otherwise, do not include this field. To list snapshots for your account use DescribeSnapshots in the Amazon Elastic Compute Cloud API Reference.

Tags
Type: Array of Tag structures

A list of up to 50 tags that can be assigned to a stored volume. Each tag is a key-value pair.

Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and the maximum length for a tag's value is 256.

TargetName
Required: Yes
Type: string

The name of the iSCSI target used by an initiator to connect to a volume and used as a suffix for the target ARN. For example, specifying TargetName as myvolume results in the target ARN of arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume. The target name must be unique across all volumes on a gateway.

If you don't specify a value, Storage Gateway uses the value that was previously used for this volume as the new target name.

Result Syntax

[
    'TargetARN' => '<string>',
    'VolumeARN' => '<string>',
    'VolumeSizeInBytes' => <integer>,
]

Result Details

Members
TargetARN
Type: string

The Amazon Resource Name (ARN) of the volume target, which includes the iSCSI name that initiators can use to connect to the target.

VolumeARN
Type: string

The Amazon Resource Name (ARN) of the configured volume.

VolumeSizeInBytes
Type: long (int|float)

The size of the volume in bytes.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To create a stored iSCSI volume

Creates a stored volume on a specified stored gateway.

$result = $client->createStorediSCSIVolume([
    'DiskId' => 'pci-0000:03:00.0-scsi-0:0:0:0',
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
    'NetworkInterfaceId' => '10.1.1.1',
    'PreserveExistingData' => 1,
    'SnapshotId' => 'snap-f47b7b94',
    'TargetName' => 'my-volume',
]);

Result syntax:

[
    'TargetARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume',
    'VolumeARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
    'VolumeSizeInBytes' => 1099511627776,
]

CreateTapePool

$result = $client->createTapePool([/* ... */]);
$promise = $client->createTapePoolAsync([/* ... */]);

Creates a new custom tape pool. You can use custom tape pool to enable tape retention lock on tapes that are archived in the custom pool.

Parameter Syntax

$result = $client->createTapePool([
    'PoolName' => '<string>', // REQUIRED
    'RetentionLockTimeInDays' => <integer>,
    'RetentionLockType' => 'COMPLIANCE|GOVERNANCE|NONE',
    'StorageClass' => 'DEEP_ARCHIVE|GLACIER', // REQUIRED
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
PoolName
Required: Yes
Type: string

The name of the new custom tape pool.

RetentionLockTimeInDays
Type: int

Tape retention lock time is set in days. Tape retention lock can be enabled for up to 100 years (36,500 days).

RetentionLockType
Type: string

Tape retention lock can be configured in two modes. When configured in governance mode, Amazon Web Services accounts with specific IAM permissions are authorized to remove the tape retention lock from archived virtual tapes. When configured in compliance mode, the tape retention lock cannot be removed by any user, including the root Amazon Web Services account.

StorageClass
Required: Yes
Type: string

The storage class that is associated with the new custom pool. When you use your backup application to eject the tape, the tape is archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive) that corresponds to the pool.

Tags
Type: Array of Tag structures

A list of up to 50 tags that can be assigned to tape pool. Each tag is a key-value pair.

Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and the maximum length for a tag's value is 256.

Result Syntax

[
    'PoolARN' => '<string>',
]

Result Details

Members
PoolARN
Type: string

The unique Amazon Resource Name (ARN) that represents the custom tape pool. Use the ListTapePools operation to return a list of tape pools for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

CreateTapeWithBarcode

$result = $client->createTapeWithBarcode([/* ... */]);
$promise = $client->createTapeWithBarcodeAsync([/* ... */]);

Creates a virtual tape by using your own barcode. You write data to the virtual tape and then archive the tape. A barcode is unique and cannot be reused if it has already been used on a tape. This applies to barcodes used on deleted tapes. This operation is only supported in the tape gateway type.

Cache storage must be allocated to the gateway before you can create a virtual tape. Use the AddCache operation to add cache storage to a gateway.

Parameter Syntax

$result = $client->createTapeWithBarcode([
    'GatewayARN' => '<string>', // REQUIRED
    'KMSEncrypted' => true || false,
    'KMSKey' => '<string>',
    'PoolId' => '<string>',
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
    'TapeBarcode' => '<string>', // REQUIRED
    'TapeSizeInBytes' => <integer>, // REQUIRED
    'Worm' => true || false,
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The unique Amazon Resource Name (ARN) that represents the gateway to associate the virtual tape with. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

KMSEncrypted
Type: boolean

Set to true to use Amazon S3 server-side encryption with your own KMS key, or false to use a key managed by Amazon S3. Optional.

Valid Values: true | false

KMSKey
Type: string

The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when KMSEncrypted is true. Optional.

PoolId
Type: string

The ID of the pool that you want to add your tape to for archiving. The tape in this pool is archived in the S3 storage class that is associated with the pool. When you use your backup application to eject the tape, the tape is archived directly into the storage class (S3 Glacier or S3 Deep Archive) that corresponds to the pool.

Tags
Type: Array of Tag structures

A list of up to 50 tags that can be assigned to a virtual tape that has a barcode. Each tag is a key-value pair.

Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and the maximum length for a tag's value is 256.

TapeBarcode
Required: Yes
Type: string

The barcode that you want to assign to the tape.

Barcodes cannot be reused. This includes barcodes used for tapes that have been deleted.

TapeSizeInBytes
Required: Yes
Type: long (int|float)

The size, in bytes, of the virtual tape that you want to create.

The size must be aligned by gigabyte (1024*1024*1024 bytes).

Worm
Type: boolean

Set to TRUE if the tape you are creating is to be configured as a write-once-read-many (WORM) tape.

Result Syntax

[
    'TapeARN' => '<string>',
]

Result Details

Members
TapeARN
Type: string

A unique Amazon Resource Name (ARN) that represents the virtual tape that was created.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To create a virtual tape using a barcode

Creates a virtual tape by using your own barcode.

$result = $client->createTapeWithBarcode([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B',
    'TapeBarcode' => 'TEST12345',
    'TapeSizeInBytes' => 107374182400,
]);

Result syntax:

[
    'TapeARN' => 'arn:aws:storagegateway:us-east-1:999999999999:tape/TEST12345',
]

CreateTapes

$result = $client->createTapes([/* ... */]);
$promise = $client->createTapesAsync([/* ... */]);

Creates one or more virtual tapes. You write data to the virtual tapes and then archive the tapes. This operation is only supported in the tape gateway type.

Cache storage must be allocated to the gateway before you can create virtual tapes. Use the AddCache operation to add cache storage to a gateway.

Parameter Syntax

$result = $client->createTapes([
    'ClientToken' => '<string>', // REQUIRED
    'GatewayARN' => '<string>', // REQUIRED
    'KMSEncrypted' => true || false,
    'KMSKey' => '<string>',
    'NumTapesToCreate' => <integer>, // REQUIRED
    'PoolId' => '<string>',
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
    'TapeBarcodePrefix' => '<string>', // REQUIRED
    'TapeSizeInBytes' => <integer>, // REQUIRED
    'Worm' => true || false,
]);

Parameter Details

Members
ClientToken
Required: Yes
Type: string

A unique identifier that you use to retry a request. If you retry a request, use the same ClientToken you specified in the initial request.

Using the same ClientToken prevents creating the tape multiple times.

GatewayARN
Required: Yes
Type: string

The unique Amazon Resource Name (ARN) that represents the gateway to associate the virtual tapes with. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

KMSEncrypted
Type: boolean

Set to true to use Amazon S3 server-side encryption with your own KMS key, or false to use a key managed by Amazon S3. Optional.

Valid Values: true | false

KMSKey
Type: string

The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when KMSEncrypted is true. Optional.

NumTapesToCreate
Required: Yes
Type: int

The number of virtual tapes that you want to create.

PoolId
Type: string

The ID of the pool that you want to add your tape to for archiving. The tape in this pool is archived in the S3 storage class that is associated with the pool. When you use your backup application to eject the tape, the tape is archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive) that corresponds to the pool.

Tags
Type: Array of Tag structures

A list of up to 50 tags that can be assigned to a virtual tape. Each tag is a key-value pair.

Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and the maximum length for a tag's value is 256.

TapeBarcodePrefix
Required: Yes
Type: string

A prefix that you append to the barcode of the virtual tape you are creating. This prefix makes the barcode unique.

The prefix must be 1-4 characters in length and must be one of the uppercase letters from A to Z.

TapeSizeInBytes
Required: Yes
Type: long (int|float)

The size, in bytes, of the virtual tapes that you want to create.

The size must be aligned by gigabyte (1024*1024*1024 bytes).

Worm
Type: boolean

Set to TRUE if the tape you are creating is to be configured as a write-once-read-many (WORM) tape.

Result Syntax

[
    'TapeARNs' => ['<string>', ...],
]

Result Details

Members
TapeARNs
Type: Array of strings

A list of unique Amazon Resource Names (ARNs) that represents the virtual tapes that were created.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To create a virtual tape

Creates one or more virtual tapes.

$result = $client->createTapes([
    'ClientToken' => '77777',
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B',
    'NumTapesToCreate' => 3,
    'TapeBarcodePrefix' => 'TEST',
    'TapeSizeInBytes' => 107374182400,
]);

Result syntax:

[
    'TapeARNs' => [
        'arn:aws:storagegateway:us-east-1:999999999999:tape/TEST38A29D',
        'arn:aws:storagegateway:us-east-1:204469490176:tape/TEST3AA29F',
        'arn:aws:storagegateway:us-east-1:204469490176:tape/TEST3BA29E',
    ],
]

DeleteAutomaticTapeCreationPolicy

$result = $client->deleteAutomaticTapeCreationPolicy([/* ... */]);
$promise = $client->deleteAutomaticTapeCreationPolicyAsync([/* ... */]);

Deletes the automatic tape creation policy of a gateway. If you delete this policy, new virtual tapes must be created manually. Use the Amazon Resource Name (ARN) of the gateway in your request to remove the policy.

Parameter Syntax

$result = $client->deleteAutomaticTapeCreationPolicy([
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

DeleteBandwidthRateLimit

$result = $client->deleteBandwidthRateLimit([/* ... */]);
$promise = $client->deleteBandwidthRateLimitAsync([/* ... */]);

Deletes the bandwidth rate limits of a gateway. You can delete either the upload and download bandwidth rate limit, or you can delete both. If you delete only one of the limits, the other limit remains unchanged. To specify which gateway to work with, use the Amazon Resource Name (ARN) of the gateway in your request. This operation is supported only for the stored volume, cached volume, and tape gateway types.

Parameter Syntax

$result = $client->deleteBandwidthRateLimit([
    'BandwidthType' => '<string>', // REQUIRED
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
BandwidthType
Required: Yes
Type: string

One of the BandwidthType values that indicates the gateway bandwidth rate limit to delete.

Valid Values: UPLOAD | DOWNLOAD | ALL

GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To delete bandwidth rate limits of gateway

Deletes the bandwidth rate limits of a gateway; either the upload or download limit, or both.

$result = $client->deleteBandwidthRateLimit([
    'BandwidthType' => 'All',
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]);

Result syntax:

[
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]

DeleteChapCredentials

$result = $client->deleteChapCredentials([/* ... */]);
$promise = $client->deleteChapCredentialsAsync([/* ... */]);

Deletes Challenge-Handshake Authentication Protocol (CHAP) credentials for a specified iSCSI target and initiator pair. This operation is supported in volume and tape gateway types.

Parameter Syntax

$result = $client->deleteChapCredentials([
    'InitiatorName' => '<string>', // REQUIRED
    'TargetARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
InitiatorName
Required: Yes
Type: string

The iSCSI initiator that connects to the target.

TargetARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the iSCSI volume target. Use the DescribeStorediSCSIVolumes operation to return to retrieve the TargetARN for specified VolumeARN.

Result Syntax

[
    'InitiatorName' => '<string>',
    'TargetARN' => '<string>',
]

Result Details

Members
InitiatorName
Type: string

The iSCSI initiator that connects to the target.

TargetARN
Type: string

The Amazon Resource Name (ARN) of the target.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To delete CHAP credentials

Deletes Challenge-Handshake Authentication Protocol (CHAP) credentials for a specified iSCSI target and initiator pair.

$result = $client->deleteChapCredentials([
    'InitiatorName' => 'iqn.1991-05.com.microsoft:computername.domain.example.com',
    'TargetARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume',
]);

Result syntax:

[
    'InitiatorName' => 'iqn.1991-05.com.microsoft:computername.domain.example.com',
    'TargetARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume',
]

DeleteFileShare

$result = $client->deleteFileShare([/* ... */]);
$promise = $client->deleteFileShareAsync([/* ... */]);

Deletes a file share from an S3 File Gateway. This operation is only supported for S3 File Gateways.

Parameter Syntax

$result = $client->deleteFileShare([
    'FileShareARN' => '<string>', // REQUIRED
    'ForceDelete' => true || false,
]);

Parameter Details

Members
FileShareARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the file share to be deleted.

ForceDelete
Type: boolean

If this value is set to true, the operation deletes a file share immediately and aborts all data uploads to Amazon Web Services. Otherwise, the file share is not deleted until all data is uploaded to Amazon Web Services. This process aborts the data upload process, and the file share enters the FORCE_DELETING status.

Valid Values: true | false

Result Syntax

[
    'FileShareARN' => '<string>',
]

Result Details

Members
FileShareARN
Type: string

The Amazon Resource Name (ARN) of the deleted file share.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

DeleteGateway

$result = $client->deleteGateway([/* ... */]);
$promise = $client->deleteGatewayAsync([/* ... */]);

Deletes a gateway. To specify which gateway to delete, use the Amazon Resource Name (ARN) of the gateway in your request. The operation deletes the gateway; however, it does not delete the gateway virtual machine (VM) from your host computer.

After you delete a gateway, you cannot reactivate it. Completed snapshots of the gateway volumes are not deleted upon deleting the gateway, however, pending snapshots will not complete. After you delete a gateway, your next step is to remove it from your environment.

You no longer pay software charges after the gateway is deleted; however, your existing Amazon EBS snapshots persist and you will continue to be billed for these snapshots. You can choose to remove all remaining Amazon EBS snapshots by canceling your Amazon EC2 subscription.  If you prefer not to cancel your Amazon EC2 subscription, you can delete your snapshots using the Amazon EC2 console. For more information, see the Storage Gateway detail page.

Parameter Syntax

$result = $client->deleteGateway([
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To delete a gatgeway

This operation deletes the gateway, but not the gateway's VM from the host computer.

$result = $client->deleteGateway([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]);

Result syntax:

[
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]

DeleteSnapshotSchedule

$result = $client->deleteSnapshotSchedule([/* ... */]);
$promise = $client->deleteSnapshotScheduleAsync([/* ... */]);

Deletes a snapshot of a volume.

You can take snapshots of your gateway volumes on a scheduled or ad hoc basis. This API action enables you to delete a snapshot schedule for a volume. For more information, see Backing up your volumes. In the DeleteSnapshotSchedule request, you identify the volume by providing its Amazon Resource Name (ARN). This operation is only supported for cached volume gateway types.

To list or delete a snapshot, you must use the Amazon EC2 API. For more information, go to DescribeSnapshots in the Amazon Elastic Compute Cloud API Reference.

Parameter Syntax

$result = $client->deleteSnapshotSchedule([
    'VolumeARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
VolumeARN
Required: Yes
Type: string

The volume which snapshot schedule to delete.

Result Syntax

[
    'VolumeARN' => '<string>',
]

Result Details

Members
VolumeARN
Type: string

The volume which snapshot schedule was deleted.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To delete a snapshot of a volume

This action enables you to delete a snapshot schedule for a volume.

$result = $client->deleteSnapshotSchedule([
    'VolumeARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
]);

Result syntax:

[
    'VolumeARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
]

DeleteTape

$result = $client->deleteTape([/* ... */]);
$promise = $client->deleteTapeAsync([/* ... */]);

Deletes the specified virtual tape. This operation is only supported in the tape gateway type.

Parameter Syntax

$result = $client->deleteTape([
    'BypassGovernanceRetention' => true || false,
    'GatewayARN' => '<string>', // REQUIRED
    'TapeARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
BypassGovernanceRetention
Type: boolean

Set to TRUE to delete an archived tape that belongs to a custom pool with tape retention lock. Only archived tapes with tape retention lock set to governance can be deleted. Archived tapes with tape retention lock set to compliance can't be deleted.

GatewayARN
Required: Yes
Type: string

The unique Amazon Resource Name (ARN) of the gateway that the virtual tape to delete is associated with. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

TapeARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the virtual tape to delete.

Result Syntax

[
    'TapeARN' => '<string>',
]

Result Details

Members
TapeARN
Type: string

The Amazon Resource Name (ARN) of the deleted virtual tape.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To delete a virtual tape

This example deletes the specified virtual tape.

$result = $client->deleteTape([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:204469490176:gateway/sgw-12A3456B',
    'TapeARN' => 'arn:aws:storagegateway:us-east-1:204469490176:tape/TEST05A2A0',
]);

Result syntax:

[
    'TapeARN' => 'arn:aws:storagegateway:us-east-1:204469490176:tape/TEST05A2A0',
]

DeleteTapeArchive

$result = $client->deleteTapeArchive([/* ... */]);
$promise = $client->deleteTapeArchiveAsync([/* ... */]);

Deletes the specified virtual tape from the virtual tape shelf (VTS). This operation is only supported in the tape gateway type.

Parameter Syntax

$result = $client->deleteTapeArchive([
    'BypassGovernanceRetention' => true || false,
    'TapeARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
BypassGovernanceRetention
Type: boolean

Set to TRUE to delete an archived tape that belongs to a custom pool with tape retention lock. Only archived tapes with tape retention lock set to governance can be deleted. Archived tapes with tape retention lock set to compliance can't be deleted.

TapeARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the virtual tape to delete from the virtual tape shelf (VTS).

Result Syntax

[
    'TapeARN' => '<string>',
]

Result Details

Members
TapeARN
Type: string

The Amazon Resource Name (ARN) of the virtual tape that was deleted from the virtual tape shelf (VTS).

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To delete a virtual tape from the shelf (VTS)

Deletes the specified virtual tape from the virtual tape shelf (VTS).

$result = $client->deleteTapeArchive([
    'TapeARN' => 'arn:aws:storagegateway:us-east-1:204469490176:tape/TEST05A2A0',
]);

Result syntax:

[
    'TapeARN' => 'arn:aws:storagegateway:us-east-1:204469490176:tape/TEST05A2A0',
]

DeleteTapePool

$result = $client->deleteTapePool([/* ... */]);
$promise = $client->deleteTapePoolAsync([/* ... */]);

Delete a custom tape pool. A custom tape pool can only be deleted if there are no tapes in the pool and if there are no automatic tape creation policies that reference the custom tape pool.

Parameter Syntax

$result = $client->deleteTapePool([
    'PoolARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
PoolARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the custom tape pool to delete.

Result Syntax

[
    'PoolARN' => '<string>',
]

Result Details

Members
PoolARN
Type: string

The Amazon Resource Name (ARN) of the custom tape pool being deleted.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

DeleteVolume

$result = $client->deleteVolume([/* ... */]);
$promise = $client->deleteVolumeAsync([/* ... */]);

Deletes the specified storage volume that you previously created using the CreateCachediSCSIVolume or CreateStorediSCSIVolume API. This operation is only supported in the cached volume and stored volume types. For stored volume gateways, the local disk that was configured as the storage volume is not deleted. You can reuse the local disk to create another storage volume.

Before you delete a volume, make sure there are no iSCSI connections to the volume you are deleting. You should also make sure there is no snapshot in progress. You can use the Amazon Elastic Compute Cloud (Amazon EC2) API to query snapshots on the volume you are deleting and check the snapshot status. For more information, go to DescribeSnapshots in the Amazon Elastic Compute Cloud API Reference.

In the request, you must provide the Amazon Resource Name (ARN) of the storage volume you want to delete.

Parameter Syntax

$result = $client->deleteVolume([
    'VolumeARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
VolumeARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the volume. Use the ListVolumes operation to return a list of gateway volumes.

Result Syntax

[
    'VolumeARN' => '<string>',
]

Result Details

Members
VolumeARN
Type: string

The Amazon Resource Name (ARN) of the storage volume that was deleted. It is the same ARN you provided in the request.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To delete a gateway volume

Deletes the specified gateway volume that you previously created using the CreateCachediSCSIVolume or CreateStorediSCSIVolume API.

$result = $client->deleteVolume([
    'VolumeARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
]);

Result syntax:

[
    'VolumeARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
]

DescribeAvailabilityMonitorTest

$result = $client->describeAvailabilityMonitorTest([/* ... */]);
$promise = $client->describeAvailabilityMonitorTestAsync([/* ... */]);

Returns information about the most recent high availability monitoring test that was performed on the host in a cluster. If a test isn't performed, the status and start time in the response would be null.

Parameter Syntax

$result = $client->describeAvailabilityMonitorTest([
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'GatewayARN' => '<string>',
    'StartTime' => <DateTime>,
    'Status' => 'COMPLETE|FAILED|PENDING',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

StartTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time the high availability monitoring test was started. If a test hasn't been performed, the value of this field is null.

Status
Type: string

The status of the high availability monitoring test. If a test hasn't been performed, the value of this field is null.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

DescribeBandwidthRateLimit

$result = $client->describeBandwidthRateLimit([/* ... */]);
$promise = $client->describeBandwidthRateLimitAsync([/* ... */]);

Returns the bandwidth rate limits of a gateway. By default, these limits are not set, which means no bandwidth rate limiting is in effect. This operation is supported only for the stored volume, cached volume, and tape gateway types. To describe bandwidth rate limits for S3 file gateways, use DescribeBandwidthRateLimitSchedule.

This operation returns a value for a bandwidth rate limit only if the limit is set. If no limits are set for the gateway, then this operation returns only the gateway ARN in the response body. To specify which gateway to describe, use the Amazon Resource Name (ARN) of the gateway in your request.

Parameter Syntax

$result = $client->describeBandwidthRateLimit([
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'AverageDownloadRateLimitInBitsPerSec' => <integer>,
    'AverageUploadRateLimitInBitsPerSec' => <integer>,
    'GatewayARN' => '<string>',
]

Result Details

Members
AverageDownloadRateLimitInBitsPerSec
Type: long (int|float)

The average download bandwidth rate limit in bits per second. This field does not appear in the response if the download rate limit is not set.

AverageUploadRateLimitInBitsPerSec
Type: long (int|float)

The average upload bandwidth rate limit in bits per second. This field does not appear in the response if the upload rate limit is not set.

GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To describe the bandwidth rate limits of a gateway

Returns a value for a bandwidth rate limit if set. If not set, then only the gateway ARN is returned.

$result = $client->describeBandwidthRateLimit([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]);

Result syntax:

[
    'AverageDownloadRateLimitInBitsPerSec' => 204800,
    'AverageUploadRateLimitInBitsPerSec' => 102400,
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]

DescribeBandwidthRateLimitSchedule

$result = $client->describeBandwidthRateLimitSchedule([/* ... */]);
$promise = $client->describeBandwidthRateLimitScheduleAsync([/* ... */]);

Returns information about the bandwidth rate limit schedule of a gateway. By default, gateways do not have bandwidth rate limit schedules, which means no bandwidth rate limiting is in effect. This operation is supported only for volume, tape and S3 file gateways. FSx file gateways do not support bandwidth rate limits.

This operation returns information about a gateway's bandwidth rate limit schedule. A bandwidth rate limit schedule consists of one or more bandwidth rate limit intervals. A bandwidth rate limit interval defines a period of time on one or more days of the week, during which bandwidth rate limits are specified for uploading, downloading, or both.

A bandwidth rate limit interval consists of one or more days of the week, a start hour and minute, an ending hour and minute, and bandwidth rate limits for uploading and downloading

If no bandwidth rate limit schedule intervals are set for the gateway, this operation returns an empty response. To specify which gateway to describe, use the Amazon Resource Name (ARN) of the gateway in your request.

Parameter Syntax

$result = $client->describeBandwidthRateLimitSchedule([
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'BandwidthRateLimitIntervals' => [
        [
            'AverageDownloadRateLimitInBitsPerSec' => <integer>,
            'AverageUploadRateLimitInBitsPerSec' => <integer>,
            'DaysOfWeek' => [<integer>, ...],
            'EndHourOfDay' => <integer>,
            'EndMinuteOfHour' => <integer>,
            'StartHourOfDay' => <integer>,
            'StartMinuteOfHour' => <integer>,
        ],
        // ...
    ],
    'GatewayARN' => '<string>',
]

Result Details

Members
BandwidthRateLimitIntervals
Type: Array of BandwidthRateLimitInterval structures

An array that contains the bandwidth rate limit intervals for a tape or volume gateway.

GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

DescribeCache

$result = $client->describeCache([/* ... */]);
$promise = $client->describeCacheAsync([/* ... */]);

Returns information about the cache of a gateway. This operation is only supported in the cached volume, tape, and file gateway types.

The response includes disk IDs that are configured as cache, and it includes the amount of cache allocated and used.

Parameter Syntax

$result = $client->describeCache([
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'CacheAllocatedInBytes' => <integer>,
    'CacheDirtyPercentage' => <float>,
    'CacheHitPercentage' => <float>,
    'CacheMissPercentage' => <float>,
    'CacheUsedPercentage' => <float>,
    'DiskIds' => ['<string>', ...],
    'GatewayARN' => '<string>',
]

Result Details

Members
CacheAllocatedInBytes
Type: long (int|float)

The amount of cache in bytes allocated to a gateway.

CacheDirtyPercentage
Type: double

The file share's contribution to the overall percentage of the gateway's cache that has not been persisted to Amazon Web Services. The sample is taken at the end of the reporting period.

CacheHitPercentage
Type: double

Percent of application read operations from the file shares that are served from cache. The sample is taken at the end of the reporting period.

CacheMissPercentage
Type: double

Percent of application read operations from the file shares that are not served from cache. The sample is taken at the end of the reporting period.

CacheUsedPercentage
Type: double

Percent use of the gateway's cache storage. This metric applies only to the gateway-cached volume setup. The sample is taken at the end of the reporting period.

DiskIds
Type: Array of strings

An array of strings that identify disks that are to be configured as working storage. Each string has a minimum length of 1 and maximum length of 300. You can get the disk IDs from the ListLocalDisks API.

GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To describe cache information

Returns information about the cache of a gateway.

$result = $client->describeCache([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]);

Result syntax:

[
    'CacheAllocatedInBytes' => 2199023255552,
    'CacheDirtyPercentage' => 0.07,
    'CacheHitPercentage' => 99.68,
    'CacheMissPercentage' => 0.32,
    'CacheUsedPercentage' => 0.07,
    'DiskIds' => [
        'pci-0000:03:00.0-scsi-0:0:0:0',
        'pci-0000:04:00.0-scsi-0:1:0:0',
    ],
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]

DescribeCachediSCSIVolumes

$result = $client->describeCachediSCSIVolumes([/* ... */]);
$promise = $client->describeCachediSCSIVolumesAsync([/* ... */]);

Returns a description of the gateway volumes specified in the request. This operation is only supported in the cached volume gateway types.

The list of gateway volumes in the request must be from one gateway. In the response, Storage Gateway returns volume information sorted by volume Amazon Resource Name (ARN).

Parameter Syntax

$result = $client->describeCachediSCSIVolumes([
    'VolumeARNs' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
VolumeARNs
Required: Yes
Type: Array of strings

An array of strings where each string represents the Amazon Resource Name (ARN) of a cached volume. All of the specified cached volumes must be from the same gateway. Use ListVolumes to get volume ARNs for a gateway.

Result Syntax

[
    'CachediSCSIVolumes' => [
        [
            'CreatedDate' => <DateTime>,
            'KMSKey' => '<string>',
            'SourceSnapshotId' => '<string>',
            'TargetName' => '<string>',
            'VolumeARN' => '<string>',
            'VolumeAttachmentStatus' => '<string>',
            'VolumeId' => '<string>',
            'VolumeProgress' => <float>,
            'VolumeSizeInBytes' => <integer>,
            'VolumeStatus' => '<string>',
            'VolumeType' => '<string>',
            'VolumeUsedInBytes' => <integer>,
            'VolumeiSCSIAttributes' => [
                'ChapEnabled' => true || false,
                'LunNumber' => <integer>,
                'NetworkInterfaceId' => '<string>',
                'NetworkInterfacePort' => <integer>,
                'TargetARN' => '<string>',
            ],
        ],
        // ...
    ],
]

Result Details

Members
CachediSCSIVolumes
Type: Array of CachediSCSIVolume structures

An array of objects where each object contains metadata about one cached volume.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To describe gateway cached iSCSI volumes

Returns a description of the gateway cached iSCSI volumes specified in the request.

$result = $client->describeCachediSCSIVolumes([
    'VolumeARNs' => [
        'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
    ],
]);

Result syntax:

[
    'CachediSCSIVolumes' => [
        [
            'VolumeARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
            'VolumeId' => 'vol-1122AABB',
            'VolumeSizeInBytes' => 1099511627776,
            'VolumeStatus' => 'AVAILABLE',
            'VolumeType' => 'CACHED iSCSI',
            'VolumeiSCSIAttributes' => [
                'ChapEnabled' => 1,
                'LunNumber' => 1,
                'NetworkInterfaceId' => '10.243.43.207',
                'NetworkInterfacePort' => 3260,
                'TargetARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume',
            ],
        ],
    ],
]

DescribeChapCredentials

$result = $client->describeChapCredentials([/* ... */]);
$promise = $client->describeChapCredentialsAsync([/* ... */]);

Returns an array of Challenge-Handshake Authentication Protocol (CHAP) credentials information for a specified iSCSI target, one for each target-initiator pair. This operation is supported in the volume and tape gateway types.

Parameter Syntax

$result = $client->describeChapCredentials([
    'TargetARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
TargetARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the iSCSI volume target. Use the DescribeStorediSCSIVolumes operation to return to retrieve the TargetARN for specified VolumeARN.

Result Syntax

[
    'ChapCredentials' => [
        [
            'InitiatorName' => '<string>',
            'SecretToAuthenticateInitiator' => '<string>',
            'SecretToAuthenticateTarget' => '<string>',
            'TargetARN' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
ChapCredentials
Type: Array of ChapInfo structures

An array of ChapInfo objects that represent CHAP credentials. Each object in the array contains CHAP credential information for one target-initiator pair. If no CHAP credentials are set, an empty array is returned. CHAP credential information is provided in a JSON object with the following fields:

  • InitiatorName: The iSCSI initiator that connects to the target.

  • SecretToAuthenticateInitiator: The secret key that the initiator (for example, the Windows client) must provide to participate in mutual CHAP with the target.

  • SecretToAuthenticateTarget: The secret key that the target must provide to participate in mutual CHAP with the initiator (e.g. Windows client).

  • TargetARN: The Amazon Resource Name (ARN) of the storage volume.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To describe CHAP credetnitals for an iSCSI

Returns an array of Challenge-Handshake Authentication Protocol (CHAP) credentials information for a specified iSCSI target, one for each target-initiator pair.

$result = $client->describeChapCredentials([
    'TargetARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume',
]);

Result syntax:

[
    'ChapCredentials' => [
        [
            'InitiatorName' => 'iqn.1991-05.com.microsoft:computername.domain.example.com',
            'SecretToAuthenticateInitiator' => '111111111111',
            'SecretToAuthenticateTarget' => '222222222222',
            'TargetARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume',
        ],
    ],
]

DescribeFileSystemAssociations

$result = $client->describeFileSystemAssociations([/* ... */]);
$promise = $client->describeFileSystemAssociationsAsync([/* ... */]);

Gets the file system association information. This operation is only supported for FSx File Gateways.

Parameter Syntax

$result = $client->describeFileSystemAssociations([
    'FileSystemAssociationARNList' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
FileSystemAssociationARNList
Required: Yes
Type: Array of strings

An array containing the Amazon Resource Name (ARN) of each file system association to be described.

Result Syntax

[
    'FileSystemAssociationInfoList' => [
        [
            'AuditDestinationARN' => '<string>',
            'CacheAttributes' => [
                'CacheStaleTimeoutInSeconds' => <integer>,
            ],
            'EndpointNetworkConfiguration' => [
                'IpAddresses' => ['<string>', ...],
            ],
            'FileSystemAssociationARN' => '<string>',
            'FileSystemAssociationStatus' => '<string>',
            'FileSystemAssociationStatusDetails' => [
                [
                    'ErrorCode' => '<string>',
                ],
                // ...
            ],
            'GatewayARN' => '<string>',
            'LocationARN' => '<string>',
            'Tags' => [
                [
                    'Key' => '<string>',
                    'Value' => '<string>',
                ],
                // ...
            ],
        ],
        // ...
    ],
]

Result Details

Members
FileSystemAssociationInfoList
Type: Array of FileSystemAssociationInfo structures

An array containing the FileSystemAssociationInfo data type of each file system association to be described.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

DescribeGatewayInformation

$result = $client->describeGatewayInformation([/* ... */]);
$promise = $client->describeGatewayInformationAsync([/* ... */]);

Returns metadata about a gateway such as its name, network interfaces, time zone, status, and software version. To specify which gateway to describe, use the Amazon Resource Name (ARN) of the gateway in your request.

Parameter Syntax

$result = $client->describeGatewayInformation([
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'CloudWatchLogGroupARN' => '<string>',
    'DeprecationDate' => '<string>',
    'Ec2InstanceId' => '<string>',
    'Ec2InstanceRegion' => '<string>',
    'EndpointType' => '<string>',
    'GatewayARN' => '<string>',
    'GatewayCapacity' => 'Small|Medium|Large',
    'GatewayId' => '<string>',
    'GatewayName' => '<string>',
    'GatewayNetworkInterfaces' => [
        [
            'Ipv4Address' => '<string>',
            'Ipv6Address' => '<string>',
            'MacAddress' => '<string>',
        ],
        // ...
    ],
    'GatewayState' => '<string>',
    'GatewayTimezone' => '<string>',
    'GatewayType' => '<string>',
    'HostEnvironment' => 'VMWARE|HYPER-V|EC2|KVM|OTHER|SNOWBALL',
    'HostEnvironmentId' => '<string>',
    'LastSoftwareUpdate' => '<string>',
    'NextUpdateAvailabilityDate' => '<string>',
    'SoftwareUpdatesEndDate' => '<string>',
    'SoftwareVersion' => '<string>',
    'SupportedGatewayCapacities' => ['<string>', ...],
    'Tags' => [
        [
            'Key' => '<string>',
            'Value' => '<string>',
        ],
        // ...
    ],
    'VPCEndpoint' => '<string>',
]

Result Details

Members
CloudWatchLogGroupARN
Type: string

The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that is used to monitor events in the gateway. This field only only exist and returns once it have been chosen and set by the SGW service, based on the OS version of the gateway VM

DeprecationDate
Type: string

Date after which this gateway will not receive software updates for new features and bug fixes.

Ec2InstanceId
Type: string

The ID of the Amazon EC2 instance that was used to launch the gateway.

Ec2InstanceRegion
Type: string

The Amazon Web Services Region where the Amazon EC2 instance is located.

EndpointType
Type: string

The type of endpoint for your gateway.

Valid Values: STANDARD | FIPS

GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

GatewayCapacity
Type: string

Specifies the size of the gateway's metadata cache.

GatewayId
Type: string

The unique identifier assigned to your gateway during activation. This ID becomes part of the gateway Amazon Resource Name (ARN), which you use as input for other operations.

GatewayName
Type: string

The name you configured for your gateway.

GatewayNetworkInterfaces
Type: Array of NetworkInterface structures

A NetworkInterface array that contains descriptions of the gateway network interfaces.

GatewayState
Type: string

A value that indicates the operating state of the gateway.

GatewayTimezone
Type: string

A value that indicates the time zone configured for the gateway.

GatewayType
Type: string

The type of the gateway.

HostEnvironment
Type: string

The type of hardware or software platform on which the gateway is running.

Tape Gateway is no longer available on Snow Family devices.

HostEnvironmentId
Type: string

A unique identifier for the specific instance of the host platform running the gateway. This value is only available for certain host environments, and its format depends on the host environment type.

LastSoftwareUpdate
Type: string

The date on which the last software update was applied to the gateway. If the gateway has never been updated, this field does not return a value in the response. This only only exist and returns once it have been chosen and set by the SGW service, based on the OS version of the gateway VM

NextUpdateAvailabilityDate
Type: string

The date on which an update to the gateway is available. This date is in the time zone of the gateway. If the gateway is not available for an update this field is not returned in the response.

SoftwareUpdatesEndDate
Type: string

Date after which this gateway will not receive software updates for new features.

SoftwareVersion
Type: string

The version number of the software running on the gateway appliance.

SupportedGatewayCapacities
Type: Array of strings

A list of the metadata cache sizes that the gateway can support based on its current hardware specifications.

Tags
Type: Array of Tag structures

A list of up to 50 tags assigned to the gateway, sorted alphabetically by key name. Each tag is a key-value pair. For a gateway with more than 10 tags assigned, you can view all tags using the ListTagsForResource API operation.

VPCEndpoint
Type: string

The configuration settings for the virtual private cloud (VPC) endpoint for your gateway.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To describe metadata about the gateway

Returns metadata about a gateway such as its name, network interfaces, configured time zone, and the state (whether the gateway is running or not).

$result = $client->describeGatewayInformation([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]);

Result syntax:

[
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
    'GatewayId' => 'sgw-AABB1122',
    'GatewayName' => 'My_Gateway',
    'GatewayNetworkInterfaces' => [
        [
            'Ipv4Address' => '10.35.69.216',
        ],
    ],
    'GatewayState' => 'STATE_RUNNING',
    'GatewayTimezone' => 'GMT-8:00',
    'GatewayType' => 'STORED',
    'LastSoftwareUpdate' => '2016-01-02T16:00:00',
    'NextUpdateAvailabilityDate' => '2017-01-02T16:00:00',
]

DescribeMaintenanceStartTime

$result = $client->describeMaintenanceStartTime([/* ... */]);
$promise = $client->describeMaintenanceStartTimeAsync([/* ... */]);

Returns your gateway's weekly maintenance start time including the day and time of the week. Note that values are in terms of the gateway's time zone.

Parameter Syntax

$result = $client->describeMaintenanceStartTime([
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'DayOfMonth' => <integer>,
    'DayOfWeek' => <integer>,
    'GatewayARN' => '<string>',
    'HourOfDay' => <integer>,
    'MinuteOfHour' => <integer>,
    'Timezone' => '<string>',
]

Result Details

Members
DayOfMonth
Type: int

The day of the month component of the maintenance start time represented as an ordinal number from 1 to 28, where 1 represents the first day of the month and 28 represents the last day of the month.

DayOfWeek
Type: int

An ordinal number between 0 and 6 that represents the day of the week, where 0 represents Sunday and 6 represents Saturday. The day of week is in the time zone of the gateway.

GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

HourOfDay
Type: int

The hour component of the maintenance start time represented as hh, where hh is the hour (0 to 23). The hour of the day is in the time zone of the gateway.

MinuteOfHour
Type: int

The minute component of the maintenance start time represented as mm, where mm is the minute (0 to 59). The minute of the hour is in the time zone of the gateway.

Timezone
Type: string

A value that indicates the time zone that is set for the gateway. The start time and day of week specified should be in the time zone of the gateway.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To describe gateway's maintenance start time

Returns your gateway's weekly maintenance start time including the day and time of the week.

$result = $client->describeMaintenanceStartTime([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]);

Result syntax:

[
    'DayOfWeek' => 2,
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
    'HourOfDay' => 15,
    'MinuteOfHour' => 35,
    'Timezone' => 'GMT+7:00',
]

DescribeNFSFileShares

$result = $client->describeNFSFileShares([/* ... */]);
$promise = $client->describeNFSFileSharesAsync([/* ... */]);

Gets a description for one or more Network File System (NFS) file shares from an S3 File Gateway. This operation is only supported for S3 File Gateways.

Parameter Syntax

$result = $client->describeNFSFileShares([
    'FileShareARNList' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
FileShareARNList
Required: Yes
Type: Array of strings

An array containing the Amazon Resource Name (ARN) of each file share to be described.

Result Syntax

[
    'NFSFileShareInfoList' => [
        [
            'AuditDestinationARN' => '<string>',
            'BucketRegion' => '<string>',
            'CacheAttributes' => [
                'CacheStaleTimeoutInSeconds' => <integer>,
            ],
            'ClientList' => ['<string>', ...],
            'DefaultStorageClass' => '<string>',
            'FileShareARN' => '<string>',
            'FileShareId' => '<string>',
            'FileShareName' => '<string>',
            'FileShareStatus' => '<string>',
            'GatewayARN' => '<string>',
            'GuessMIMETypeEnabled' => true || false,
            'KMSEncrypted' => true || false,
            'KMSKey' => '<string>',
            'LocationARN' => '<string>',
            'NFSFileShareDefaults' => [
                'DirectoryMode' => '<string>',
                'FileMode' => '<string>',
                'GroupId' => <integer>,
                'OwnerId' => <integer>,
            ],
            'NotificationPolicy' => '<string>',
            'ObjectACL' => 'private|public-read|public-read-write|authenticated-read|bucket-owner-read|bucket-owner-full-control|aws-exec-read',
            'Path' => '<string>',
            'ReadOnly' => true || false,
            'RequesterPays' => true || false,
            'Role' => '<string>',
            'Squash' => '<string>',
            'Tags' => [
                [
                    'Key' => '<string>',
                    'Value' => '<string>',
                ],
                // ...
            ],
            'VPCEndpointDNSName' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
NFSFileShareInfoList
Type: Array of NFSFileShareInfo structures

An array containing a description for each requested file share.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

DescribeSMBFileShares

$result = $client->describeSMBFileShares([/* ... */]);
$promise = $client->describeSMBFileSharesAsync([/* ... */]);

Gets a description for one or more Server Message Block (SMB) file shares from a S3 File Gateway. This operation is only supported for S3 File Gateways.

Parameter Syntax

$result = $client->describeSMBFileShares([
    'FileShareARNList' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
FileShareARNList
Required: Yes
Type: Array of strings

An array containing the Amazon Resource Name (ARN) of each file share to be described.

Result Syntax

[
    'SMBFileShareInfoList' => [
        [
            'AccessBasedEnumeration' => true || false,
            'AdminUserList' => ['<string>', ...],
            'AuditDestinationARN' => '<string>',
            'Authentication' => '<string>',
            'BucketRegion' => '<string>',
            'CacheAttributes' => [
                'CacheStaleTimeoutInSeconds' => <integer>,
            ],
            'CaseSensitivity' => 'ClientSpecified|CaseSensitive',
            'DefaultStorageClass' => '<string>',
            'FileShareARN' => '<string>',
            'FileShareId' => '<string>',
            'FileShareName' => '<string>',
            'FileShareStatus' => '<string>',
            'GatewayARN' => '<string>',
            'GuessMIMETypeEnabled' => true || false,
            'InvalidUserList' => ['<string>', ...],
            'KMSEncrypted' => true || false,
            'KMSKey' => '<string>',
            'LocationARN' => '<string>',
            'NotificationPolicy' => '<string>',
            'ObjectACL' => 'private|public-read|public-read-write|authenticated-read|bucket-owner-read|bucket-owner-full-control|aws-exec-read',
            'OplocksEnabled' => true || false,
            'Path' => '<string>',
            'ReadOnly' => true || false,
            'RequesterPays' => true || false,
            'Role' => '<string>',
            'SMBACLEnabled' => true || false,
            'Tags' => [
                [
                    'Key' => '<string>',
                    'Value' => '<string>',
                ],
                // ...
            ],
            'VPCEndpointDNSName' => '<string>',
            'ValidUserList' => ['<string>', ...],
        ],
        // ...
    ],
]

Result Details

Members
SMBFileShareInfoList
Type: Array of SMBFileShareInfo structures

An array containing a description for each requested file share.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

DescribeSMBSettings

$result = $client->describeSMBSettings([/* ... */]);
$promise = $client->describeSMBSettingsAsync([/* ... */]);

Gets a description of a Server Message Block (SMB) file share settings from a file gateway. This operation is only supported for file gateways.

Parameter Syntax

$result = $client->describeSMBSettings([
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'ActiveDirectoryStatus' => 'ACCESS_DENIED|DETACHED|JOINED|JOINING|NETWORK_ERROR|TIMEOUT|UNKNOWN_ERROR',
    'DomainName' => '<string>',
    'FileSharesVisible' => true || false,
    'GatewayARN' => '<string>',
    'SMBGuestPasswordSet' => true || false,
    'SMBLocalGroups' => [
        'GatewayAdmins' => ['<string>', ...],
    ],
    'SMBSecurityStrategy' => 'ClientSpecified|MandatorySigning|MandatoryEncryption|MandatoryEncryptionNoAes128',
]

Result Details

Members
ActiveDirectoryStatus
Type: string

Indicates the status of a gateway that is a member of the Active Directory domain.

  • ACCESS_DENIED: Indicates that the JoinDomain operation failed due to an authentication error.

  • DETACHED: Indicates that gateway is not joined to a domain.

  • JOINED: Indicates that the gateway has successfully joined a domain.

  • JOINING: Indicates that a JoinDomain operation is in progress.

  • NETWORK_ERROR: Indicates that JoinDomain operation failed due to a network or connectivity error.

  • TIMEOUT: Indicates that the JoinDomain operation failed because the operation didn't complete within the allotted time.

  • UNKNOWN_ERROR: Indicates that the JoinDomain operation failed due to another type of error.

DomainName
Type: string

The name of the domain that the gateway is joined to.

FileSharesVisible
Type: boolean

The shares on this gateway appear when listing shares. Only supported for S3 File Gateways.

GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

SMBGuestPasswordSet
Type: boolean

This value is true if a password for the guest user smbguest is set, otherwise false. Only supported for S3 File Gateways.

Valid Values: true | false

SMBLocalGroups
Type: SMBLocalGroups structure

A list of Active Directory users and groups that have special permissions for SMB file shares on the gateway.

SMBSecurityStrategy
Type: string

The type of security strategy that was specified for file gateway.

  • ClientSpecified: If you choose this option, requests are established based on what is negotiated by the client. This option is recommended when you want to maximize compatibility across different clients in your environment. Supported only for S3 File Gateway.

  • MandatorySigning: If you use this option, File Gateway only allows connections from SMBv2 or SMBv3 clients that have signing turned on. This option works with SMB clients on Microsoft Windows Vista, Windows Server 2008, or later.

  • MandatoryEncryption: If you use this option, File Gateway only allows connections from SMBv3 clients that have encryption turned on. Both 256-bit and 128-bit algorithms are allowed. This option is recommended for environments that handle sensitive data. It works with SMB clients on Microsoft Windows 8, Windows Server 2012, or later.

  • EnforceEncryption: If you use this option, File Gateway only allows connections from SMBv3 clients that use 256-bit AES encryption algorithms. 128-bit algorithms are not allowed. This option is recommended for environments that handle sensitive data. It works with SMB clients on Microsoft Windows 8, Windows Server 2012, or later.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

DescribeSnapshotSchedule

$result = $client->describeSnapshotSchedule([/* ... */]);
$promise = $client->describeSnapshotScheduleAsync([/* ... */]);

Describes the snapshot schedule for the specified gateway volume. The snapshot schedule information includes intervals at which snapshots are automatically initiated on the volume. This operation is only supported in the cached volume and stored volume types.

Parameter Syntax

$result = $client->describeSnapshotSchedule([
    'VolumeARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
VolumeARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the volume. Use the ListVolumes operation to return a list of gateway volumes.

Result Syntax

[
    'Description' => '<string>',
    'RecurrenceInHours' => <integer>,
    'StartAt' => <integer>,
    'Tags' => [
        [
            'Key' => '<string>',
            'Value' => '<string>',
        ],
        // ...
    ],
    'Timezone' => '<string>',
    'VolumeARN' => '<string>',
]

Result Details

Members
Description
Type: string

The snapshot description.

RecurrenceInHours
Type: int

The number of hours between snapshots.

StartAt
Type: int

The hour of the day at which the snapshot schedule begins represented as hh, where hh is the hour (0 to 23). The hour of the day is in the time zone of the gateway.

Tags
Type: Array of Tag structures

A list of up to 50 tags assigned to the snapshot schedule, sorted alphabetically by key name. Each tag is a key-value pair. For a gateway with more than 10 tags assigned, you can view all tags using the ListTagsForResource API operation.

Timezone
Type: string

A value that indicates the time zone of the gateway.

VolumeARN
Type: string

The Amazon Resource Name (ARN) of the volume that was specified in the request.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To describe snapshot schedule for gateway volume

Describes the snapshot schedule for the specified gateway volume including intervals at which snapshots are automatically initiated.

$result = $client->describeSnapshotSchedule([
    'VolumeARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
]);

Result syntax:

[
    'Description' => 'sgw-AABB1122:vol-AABB1122:Schedule',
    'RecurrenceInHours' => 24,
    'StartAt' => 6,
    'Timezone' => 'GMT+7:00',
    'VolumeARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
]

DescribeStorediSCSIVolumes

$result = $client->describeStorediSCSIVolumes([/* ... */]);
$promise = $client->describeStorediSCSIVolumesAsync([/* ... */]);

Returns the description of the gateway volumes specified in the request. The list of gateway volumes in the request must be from one gateway. In the response, Storage Gateway returns volume information sorted by volume ARNs. This operation is only supported in stored volume gateway type.

Parameter Syntax

$result = $client->describeStorediSCSIVolumes([
    'VolumeARNs' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
VolumeARNs
Required: Yes
Type: Array of strings

An array of strings where each string represents the Amazon Resource Name (ARN) of a stored volume. All of the specified stored volumes must be from the same gateway. Use ListVolumes to get volume ARNs for a gateway.

Result Syntax

[
    'StorediSCSIVolumes' => [
        [
            'CreatedDate' => <DateTime>,
            'KMSKey' => '<string>',
            'PreservedExistingData' => true || false,
            'SourceSnapshotId' => '<string>',
            'TargetName' => '<string>',
            'VolumeARN' => '<string>',
            'VolumeAttachmentStatus' => '<string>',
            'VolumeDiskId' => '<string>',
            'VolumeId' => '<string>',
            'VolumeProgress' => <float>,
            'VolumeSizeInBytes' => <integer>,
            'VolumeStatus' => '<string>',
            'VolumeType' => '<string>',
            'VolumeUsedInBytes' => <integer>,
            'VolumeiSCSIAttributes' => [
                'ChapEnabled' => true || false,
                'LunNumber' => <integer>,
                'NetworkInterfaceId' => '<string>',
                'NetworkInterfacePort' => <integer>,
                'TargetARN' => '<string>',
            ],
        ],
        // ...
    ],
]

Result Details

Members
StorediSCSIVolumes
Type: Array of StorediSCSIVolume structures

Describes a single unit of output from DescribeStorediSCSIVolumes. The following fields are returned:

  • ChapEnabled: Indicates whether mutual CHAP is enabled for the iSCSI target.

  • LunNumber: The logical disk number.

  • NetworkInterfaceId: The network interface ID of the stored volume that initiator use to map the stored volume as an iSCSI target.

  • NetworkInterfacePort: The port used to communicate with iSCSI targets.

  • PreservedExistingData: Indicates when the stored volume was created, existing data on the underlying local disk was preserved.

  • SourceSnapshotId: If the stored volume was created from a snapshot, this field contains the snapshot ID used, e.g. snap-1122aabb. Otherwise, this field is not included.

  • StorediSCSIVolumes: An array of StorediSCSIVolume objects where each object contains metadata about one stored volume.

  • TargetARN: The Amazon Resource Name (ARN) of the volume target.

  • VolumeARN: The Amazon Resource Name (ARN) of the stored volume.

  • VolumeDiskId: The disk ID of the local disk that was specified in the CreateStorediSCSIVolume operation.

  • VolumeId: The unique identifier of the storage volume, e.g. vol-1122AABB.

  • VolumeiSCSIAttributes: An VolumeiSCSIAttributes object that represents a collection of iSCSI attributes for one stored volume.

  • VolumeProgress: Represents the percentage complete if the volume is restoring or bootstrapping that represents the percent of data transferred. This field does not appear in the response if the stored volume is not restoring or bootstrapping.

  • VolumeSizeInBytes: The size of the volume in bytes.

  • VolumeStatus: One of the VolumeStatus values that indicates the state of the volume.

  • VolumeType: One of the enumeration values describing the type of the volume. Currently, only STORED volumes are supported.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To describe the volumes of a gateway

Returns the description of the gateway volumes specified in the request belonging to the same gateway.

$result = $client->describeStorediSCSIVolumes([
    'VolumeARNs' => [
        'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
    ],
]);

Result syntax:

[
    'StorediSCSIVolumes' => [
        [
            'PreservedExistingData' => ,
            'VolumeARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
            'VolumeDiskId' => 'pci-0000:03:00.0-scsi-0:0:0:0',
            'VolumeId' => 'vol-1122AABB',
            'VolumeProgress' => 23.7,
            'VolumeSizeInBytes' => 1099511627776,
            'VolumeStatus' => 'BOOTSTRAPPING',
            'VolumeiSCSIAttributes' => [
                'ChapEnabled' => 1,
                'NetworkInterfaceId' => '10.243.43.207',
                'NetworkInterfacePort' => 3260,
                'TargetARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume',
            ],
        ],
    ],
]

DescribeTapeArchives

$result = $client->describeTapeArchives([/* ... */]);
$promise = $client->describeTapeArchivesAsync([/* ... */]);

Returns a description of specified virtual tapes in the virtual tape shelf (VTS). This operation is only supported in the tape gateway type.

If a specific TapeARN is not specified, Storage Gateway returns a description of all virtual tapes found in the VTS associated with your account.

Parameter Syntax

$result = $client->describeTapeArchives([
    'Limit' => <integer>,
    'Marker' => '<string>',
    'TapeARNs' => ['<string>', ...],
]);

Parameter Details

Members
Limit
Type: int

Specifies that the number of virtual tapes described be limited to the specified number.

Marker
Type: string

An opaque string that indicates the position at which to begin describing virtual tapes.

TapeARNs
Type: Array of strings

Specifies one or more unique Amazon Resource Names (ARNs) that represent the virtual tapes you want to describe.

Result Syntax

[
    'Marker' => '<string>',
    'TapeArchives' => [
        [
            'CompletionTime' => <DateTime>,
            'KMSKey' => '<string>',
            'PoolEntryDate' => <DateTime>,
            'PoolId' => '<string>',
            'RetentionStartDate' => <DateTime>,
            'RetrievedTo' => '<string>',
            'TapeARN' => '<string>',
            'TapeBarcode' => '<string>',
            'TapeCreatedDate' => <DateTime>,
            'TapeSizeInBytes' => <integer>,
            'TapeStatus' => '<string>',
            'TapeUsedInBytes' => <integer>,
            'Worm' => true || false,
        ],
        // ...
    ],
]

Result Details

Members
Marker
Type: string

An opaque string that indicates the position at which the virtual tapes that were fetched for description ended. Use this marker in your next request to fetch the next set of virtual tapes in the virtual tape shelf (VTS). If there are no more virtual tapes to describe, this field does not appear in the response.

TapeArchives
Type: Array of TapeArchive structures

An array of virtual tape objects in the virtual tape shelf (VTS). The description includes of the Amazon Resource Name (ARN) of the virtual tapes. The information returned includes the Amazon Resource Names (ARNs) of the tapes, size of the tapes, status of the tapes, progress of the description, and tape barcode.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To describe virtual tapes in the VTS

Returns a description of specified virtual tapes in the virtual tape shelf (VTS).

$result = $client->describeTapeArchives([
    'Limit' => 123,
    'Marker' => '1',
    'TapeARNs' => [
        'arn:aws:storagegateway:us-east-1:999999999999:tape/AM08A1AD',
        'arn:aws:storagegateway:us-east-1:999999999999:tape/AMZN01A2A4',
    ],
]);

Result syntax:

[
    'Marker' => '1',
    'TapeArchives' => [
        [
            'CompletionTime' => ,
            'TapeARN' => 'arn:aws:storagegateway:us-east-1:999999999:tape/AM08A1AD',
            'TapeBarcode' => 'AM08A1AD',
            'TapeSizeInBytes' => 107374182400,
            'TapeStatus' => 'ARCHIVED',
        ],
        [
            'CompletionTime' => ,
            'TapeARN' => 'arn:aws:storagegateway:us-east-1:999999999:tape/AMZN01A2A4',
            'TapeBarcode' => 'AMZN01A2A4',
            'TapeSizeInBytes' => 429496729600,
            'TapeStatus' => 'ARCHIVED',
        ],
    ],
]

DescribeTapeRecoveryPoints

$result = $client->describeTapeRecoveryPoints([/* ... */]);
$promise = $client->describeTapeRecoveryPointsAsync([/* ... */]);

Returns a list of virtual tape recovery points that are available for the specified tape gateway.

A recovery point is a point-in-time view of a virtual tape at which all the data on the virtual tape is consistent. If your gateway crashes, virtual tapes that have recovery points can be recovered to a new gateway. This operation is only supported in the tape gateway type.

Parameter Syntax

$result = $client->describeTapeRecoveryPoints([
    'GatewayARN' => '<string>', // REQUIRED
    'Limit' => <integer>,
    'Marker' => '<string>',
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Limit
Type: int

Specifies that the number of virtual tape recovery points that are described be limited to the specified number.

Marker
Type: string

An opaque string that indicates the position at which to begin describing the virtual tape recovery points.

Result Syntax

[
    'GatewayARN' => '<string>',
    'Marker' => '<string>',
    'TapeRecoveryPointInfos' => [
        [
            'TapeARN' => '<string>',
            'TapeRecoveryPointTime' => <DateTime>,
            'TapeSizeInBytes' => <integer>,
            'TapeStatus' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Marker
Type: string

An opaque string that indicates the position at which the virtual tape recovery points that were listed for description ended.

Use this marker in your next request to list the next set of virtual tape recovery points in the list. If there are no more recovery points to describe, this field does not appear in the response.

TapeRecoveryPointInfos
Type: Array of TapeRecoveryPointInfo structures

An array of TapeRecoveryPointInfos that are available for the specified gateway.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To describe virtual tape recovery points

Returns a list of virtual tape recovery points that are available for the specified gateway-VTL.

$result = $client->describeTapeRecoveryPoints([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
    'Limit' => 1,
    'Marker' => '1',
]);

Result syntax:

[
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
    'Marker' => '1',
    'TapeRecoveryPointInfos' => [
        [
            'TapeARN' => 'arn:aws:storagegateway:us-east-1:999999999:tape/AMZN01A2A4',
            'TapeRecoveryPointTime' => ,
            'TapeSizeInBytes' => 1471550497,
            'TapeStatus' => 'AVAILABLE',
        ],
    ],
]

DescribeTapes

$result = $client->describeTapes([/* ... */]);
$promise = $client->describeTapesAsync([/* ... */]);

Returns a description of virtual tapes that correspond to the specified Amazon Resource Names (ARNs). If TapeARN is not specified, returns a description of the virtual tapes associated with the specified gateway. This operation is only supported for the tape gateway type.

The operation supports pagination. By default, the operation returns a maximum of up to 100 tapes. You can optionally specify the Limit field in the body to limit the number of tapes in the response. If the number of tapes returned in the response is truncated, the response includes a Marker field. You can use this Marker value in your subsequent request to retrieve the next set of tapes.

Parameter Syntax

$result = $client->describeTapes([
    'GatewayARN' => '<string>', // REQUIRED
    'Limit' => <integer>,
    'Marker' => '<string>',
    'TapeARNs' => ['<string>', ...],
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Limit
Type: int

Specifies that the number of virtual tapes described be limited to the specified number.

Amazon Web Services may impose its own limit, if this field is not set.

Marker
Type: string

A marker value, obtained in a previous call to DescribeTapes. This marker indicates which page of results to retrieve.

If not specified, the first page of results is retrieved.

TapeARNs
Type: Array of strings

Specifies one or more unique Amazon Resource Names (ARNs) that represent the virtual tapes you want to describe. If this parameter is not specified, Tape gateway returns a description of all virtual tapes associated with the specified gateway.

Result Syntax

[
    'Marker' => '<string>',
    'Tapes' => [
        [
            'KMSKey' => '<string>',
            'PoolEntryDate' => <DateTime>,
            'PoolId' => '<string>',
            'Progress' => <float>,
            'RetentionStartDate' => <DateTime>,
            'TapeARN' => '<string>',
            'TapeBarcode' => '<string>',
            'TapeCreatedDate' => <DateTime>,
            'TapeSizeInBytes' => <integer>,
            'TapeStatus' => '<string>',
            'TapeUsedInBytes' => <integer>,
            'VTLDevice' => '<string>',
            'Worm' => true || false,
        ],
        // ...
    ],
]

Result Details

Members
Marker
Type: string

An opaque string that can be used as part of a subsequent DescribeTapes call to retrieve the next page of results.

If a response does not contain a marker, then there are no more results to be retrieved.

Tapes
Type: Array of Tape structures

An array of virtual tape descriptions.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To describe virtual tape(s) associated with gateway

Returns a description of the specified Amazon Resource Name (ARN) of virtual tapes. If a TapeARN is not specified, returns a description of all virtual tapes.

$result = $client->describeTapes([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B',
    'Limit' => 2,
    'Marker' => '1',
    'TapeARNs' => [
        'arn:aws:storagegateway:us-east-1:999999999999:tape/TEST04A2A1',
        'arn:aws:storagegateway:us-east-1:999999999999:tape/TEST05A2A0',
    ],
]);

Result syntax:

[
    'Marker' => '1',
    'Tapes' => [
        [
            'TapeARN' => 'arn:aws:storagegateway:us-east-1:999999999999:tape/TEST04A2A1',
            'TapeBarcode' => 'TEST04A2A1',
            'TapeSizeInBytes' => 107374182400,
            'TapeStatus' => 'AVAILABLE',
        ],
        [
            'TapeARN' => 'arn:aws:storagegateway:us-east-1:999999999999:tape/TEST05A2A0',
            'TapeBarcode' => 'TEST05A2A0',
            'TapeSizeInBytes' => 107374182400,
            'TapeStatus' => 'AVAILABLE',
        ],
    ],
]

DescribeUploadBuffer

$result = $client->describeUploadBuffer([/* ... */]);
$promise = $client->describeUploadBufferAsync([/* ... */]);

Returns information about the upload buffer of a gateway. This operation is supported for the stored volume, cached volume, and tape gateway types.

The response includes disk IDs that are configured as upload buffer space, and it includes the amount of upload buffer space allocated and used.

Parameter Syntax

$result = $client->describeUploadBuffer([
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'DiskIds' => ['<string>', ...],
    'GatewayARN' => '<string>',
    'UploadBufferAllocatedInBytes' => <integer>,
    'UploadBufferUsedInBytes' => <integer>,
]

Result Details

Members
DiskIds
Type: Array of strings

An array of the gateway's local disk IDs that are configured as working storage. Each local disk ID is specified as a string (minimum length of 1 and maximum length of 300). If no local disks are configured as working storage, then the DiskIds array is empty.

GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

UploadBufferAllocatedInBytes
Type: long (int|float)

The total number of bytes allocated in the gateway's as upload buffer.

UploadBufferUsedInBytes
Type: long (int|float)

The total number of bytes being used in the gateway's upload buffer.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To describe upload buffer of gateway

Returns information about the upload buffer of a gateway including disk IDs and the amount of upload buffer space allocated/used.

$result = $client->describeUploadBuffer([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]);

Result syntax:

[
    'DiskIds' => [
        'pci-0000:03:00.0-scsi-0:0:0:0',
        'pci-0000:04:00.0-scsi-0:1:0:0',
    ],
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
    'UploadBufferAllocatedInBytes' => 0,
    'UploadBufferUsedInBytes' => 161061273600,
]
Example 2: To describe upload buffer of a gateway

Returns information about the upload buffer of a gateway including disk IDs and the amount of upload buffer space allocated and used.

$result = $client->describeUploadBuffer([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]);

Result syntax:

[
    'DiskIds' => [
        'pci-0000:03:00.0-scsi-0:0:0:0',
        'pci-0000:04:00.0-scsi-0:1:0:0',
    ],
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
    'UploadBufferAllocatedInBytes' => 161061273600,
    'UploadBufferUsedInBytes' => 0,
]

DescribeVTLDevices

$result = $client->describeVTLDevices([/* ... */]);
$promise = $client->describeVTLDevicesAsync([/* ... */]);

Returns a description of virtual tape library (VTL) devices for the specified tape gateway. In the response, Storage Gateway returns VTL device information.

This operation is only supported in the tape gateway type.

Parameter Syntax

$result = $client->describeVTLDevices([
    'GatewayARN' => '<string>', // REQUIRED
    'Limit' => <integer>,
    'Marker' => '<string>',
    'VTLDeviceARNs' => ['<string>', ...],
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Limit
Type: int

Specifies that the number of VTL devices described be limited to the specified number.

Marker
Type: string

An opaque string that indicates the position at which to begin describing the VTL devices.

VTLDeviceARNs
Type: Array of strings

An array of strings, where each string represents the Amazon Resource Name (ARN) of a VTL device.

All of the specified VTL devices must be from the same gateway. If no VTL devices are specified, the result will contain all devices on the specified gateway.

Result Syntax

[
    'GatewayARN' => '<string>',
    'Marker' => '<string>',
    'VTLDevices' => [
        [
            'DeviceiSCSIAttributes' => [
                'ChapEnabled' => true || false,
                'NetworkInterfaceId' => '<string>',
                'NetworkInterfacePort' => <integer>,
                'TargetARN' => '<string>',
            ],
            'VTLDeviceARN' => '<string>',
            'VTLDeviceProductIdentifier' => '<string>',
            'VTLDeviceType' => '<string>',
            'VTLDeviceVendor' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Marker
Type: string

An opaque string that indicates the position at which the VTL devices that were fetched for description ended. Use the marker in your next request to fetch the next set of VTL devices in the list. If there are no more VTL devices to describe, this field does not appear in the response.

VTLDevices
Type: Array of VTLDevice structures

An array of VTL device objects composed of the Amazon Resource Name (ARN) of the VTL devices.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To describe virtual tape library (VTL) devices of a single gateway

Returns a description of virtual tape library (VTL) devices for the specified gateway.

$result = $client->describeVTLDevices([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B',
    'Limit' => 123,
    'Marker' => '1',
    'VTLDeviceARNs' => [
    ],
]);

Result syntax:

[
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B',
    'Marker' => '1',
    'VTLDevices' => [
        [
            'DeviceiSCSIAttributes' => [
                'ChapEnabled' => ,
                'NetworkInterfaceId' => '10.243.43.207',
                'NetworkInterfacePort' => 3260,
                'TargetARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:sgw-1fad4876-mediachanger',
            ],
            'VTLDeviceARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B/device/AMZN_SGW-1FAD4876_MEDIACHANGER_00001',
            'VTLDeviceProductIdentifier' => 'L700',
            'VTLDeviceType' => 'Medium Changer',
            'VTLDeviceVendor' => 'STK',
        ],
        [
            'DeviceiSCSIAttributes' => [
                'ChapEnabled' => ,
                'NetworkInterfaceId' => '10.243.43.209',
                'NetworkInterfacePort' => 3260,
                'TargetARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:sgw-1fad4876-tapedrive-01',
            ],
            'VTLDeviceARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B/device/AMZN_SGW-1FAD4876_TAPEDRIVE_00001',
            'VTLDeviceProductIdentifier' => 'ULT3580-TD5',
            'VTLDeviceType' => 'Tape Drive',
            'VTLDeviceVendor' => 'IBM',
        ],
        [
            'DeviceiSCSIAttributes' => [
                'ChapEnabled' => ,
                'NetworkInterfaceId' => '10.243.43.209',
                'NetworkInterfacePort' => 3260,
                'TargetARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:sgw-1fad4876-tapedrive-02',
            ],
            'VTLDeviceARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B/device/AMZN_SGW-1FAD4876_TAPEDRIVE_00002',
            'VTLDeviceProductIdentifier' => 'ULT3580-TD5',
            'VTLDeviceType' => 'Tape Drive',
            'VTLDeviceVendor' => 'IBM',
        ],
    ],
]

DescribeWorkingStorage

$result = $client->describeWorkingStorage([/* ... */]);
$promise = $client->describeWorkingStorageAsync([/* ... */]);

Returns information about the working storage of a gateway. This operation is only supported in the stored volumes gateway type. This operation is deprecated in cached volumes API version (20120630). Use DescribeUploadBuffer instead.

Working storage is also referred to as upload buffer. You can also use the DescribeUploadBuffer operation to add upload buffer to a stored volume gateway.

The response includes disk IDs that are configured as working storage, and it includes the amount of working storage allocated and used.

Parameter Syntax

$result = $client->describeWorkingStorage([
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'DiskIds' => ['<string>', ...],
    'GatewayARN' => '<string>',
    'WorkingStorageAllocatedInBytes' => <integer>,
    'WorkingStorageUsedInBytes' => <integer>,
]

Result Details

Members
DiskIds
Type: Array of strings

An array of the gateway's local disk IDs that are configured as working storage. Each local disk ID is specified as a string (minimum length of 1 and maximum length of 300). If no local disks are configured as working storage, then the DiskIds array is empty.

GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

WorkingStorageAllocatedInBytes
Type: long (int|float)

The total working storage in bytes allocated for the gateway. If no working storage is configured for the gateway, this field returns 0.

WorkingStorageUsedInBytes
Type: long (int|float)

The total working storage in bytes in use by the gateway. If no working storage is configured for the gateway, this field returns 0.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To describe the working storage of a gateway [Depreciated]

This operation is supported only for the gateway-stored volume architecture. This operation is deprecated in cached-volumes API version (20120630). Use DescribeUploadBuffer instead.

$result = $client->describeWorkingStorage([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]);

Result syntax:

[
    'DiskIds' => [
        'pci-0000:03:00.0-scsi-0:0:0:0',
        'pci-0000:03:00.0-scsi-0:0:1:0',
    ],
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
    'WorkingStorageAllocatedInBytes' => 2199023255552,
    'WorkingStorageUsedInBytes' => 789207040,
]

DetachVolume

$result = $client->detachVolume([/* ... */]);
$promise = $client->detachVolumeAsync([/* ... */]);

Disconnects a volume from an iSCSI connection and then detaches the volume from the specified gateway. Detaching and attaching a volume enables you to recover your data from one gateway to a different gateway without creating a snapshot. It also makes it easier to move your volumes from an on-premises gateway to a gateway hosted on an Amazon EC2 instance. This operation is only supported in the volume gateway type.

Parameter Syntax

$result = $client->detachVolume([
    'ForceDetach' => true || false,
    'VolumeARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
ForceDetach
Type: boolean

Set to true to forcibly remove the iSCSI connection of the target volume and detach the volume. The default is false. If this value is set to false, you must manually disconnect the iSCSI connection from the target volume.

Valid Values: true | false

VolumeARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the volume to detach from the gateway.

Result Syntax

[
    'VolumeARN' => '<string>',
]

Result Details

Members
VolumeARN
Type: string

The Amazon Resource Name (ARN) of the volume that was detached.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

DisableGateway

$result = $client->disableGateway([/* ... */]);
$promise = $client->disableGatewayAsync([/* ... */]);

Disables a tape gateway when the gateway is no longer functioning. For example, if your gateway VM is damaged, you can disable the gateway so you can recover virtual tapes.

Use this operation for a tape gateway that is not reachable or not functioning. This operation is only supported in the tape gateway type.

After a gateway is disabled, it cannot be enabled.

Parameter Syntax

$result = $client->disableGateway([
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The unique Amazon Resource Name (ARN) of the disabled gateway.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To disable a gateway when it is no longer functioning

Disables a gateway when the gateway is no longer functioning. Use this operation for a gateway-VTL that is not reachable or not functioning.

$result = $client->disableGateway([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]);

Result syntax:

[
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]

DisassociateFileSystem

$result = $client->disassociateFileSystem([/* ... */]);
$promise = $client->disassociateFileSystemAsync([/* ... */]);

Disassociates an Amazon FSx file system from the specified gateway. After the disassociation process finishes, the gateway can no longer access the Amazon FSx file system. This operation is only supported in the FSx File Gateway type.

Parameter Syntax

$result = $client->disassociateFileSystem([
    'FileSystemAssociationARN' => '<string>', // REQUIRED
    'ForceDelete' => true || false,
]);

Parameter Details

Members
FileSystemAssociationARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the file system association to be deleted.

ForceDelete
Type: boolean

If this value is set to true, the operation disassociates an Amazon FSx file system immediately. It ends all data uploads to the file system, and the file system association enters the FORCE_DELETING status. If this value is set to false, the Amazon FSx file system does not disassociate until all data is uploaded.

Result Syntax

[
    'FileSystemAssociationARN' => '<string>',
]

Result Details

Members
FileSystemAssociationARN
Type: string

The Amazon Resource Name (ARN) of the deleted file system association.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

JoinDomain

$result = $client->joinDomain([/* ... */]);
$promise = $client->joinDomainAsync([/* ... */]);

Adds a file gateway to an Active Directory domain. This operation is only supported for file gateways that support the SMB file protocol.

Joining a domain creates an Active Directory computer account in the default organizational unit, using the gateway's Gateway ID as the account name (for example, SGW-1234ADE). If your Active Directory environment requires that you pre-stage accounts to facilitate the join domain process, you will need to create this account ahead of time.

To create the gateway's computer account in an organizational unit other than the default, you must specify the organizational unit when joining the domain.

Parameter Syntax

$result = $client->joinDomain([
    'DomainControllers' => ['<string>', ...],
    'DomainName' => '<string>', // REQUIRED
    'GatewayARN' => '<string>', // REQUIRED
    'OrganizationalUnit' => '<string>',
    'Password' => '<string>', // REQUIRED
    'TimeoutInSeconds' => <integer>,
    'UserName' => '<string>', // REQUIRED
]);

Parameter Details

Members
DomainControllers
Type: Array of strings

List of IPv4 addresses, NetBIOS names, or host names of your domain server. If you need to specify the port number include it after the colon (“:”). For example, mydc.mydomain.com:389.

DomainName
Required: Yes
Type: string

The name of the domain that you want the gateway to join.

GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

OrganizationalUnit
Type: string

The organizational unit (OU) is a container in an Active Directory that can hold users, groups, computers, and other OUs and this parameter specifies the OU that the gateway will join within the AD domain.

Password
Required: Yes
Type: string

Sets the password of the user who has permission to add the gateway to the Active Directory domain.

TimeoutInSeconds
Type: int

Specifies the time in seconds, in which the JoinDomain operation must complete. The default is 20 seconds.

UserName
Required: Yes
Type: string

Sets the user name of user who has permission to add the gateway to the Active Directory domain. The domain user account should be enabled to join computers to the domain. For example, you can use the domain administrator account or an account with delegated permissions to join computers to the domain.

Result Syntax

[
    'ActiveDirectoryStatus' => 'ACCESS_DENIED|DETACHED|JOINED|JOINING|NETWORK_ERROR|TIMEOUT|UNKNOWN_ERROR',
    'GatewayARN' => '<string>',
]

Result Details

Members
ActiveDirectoryStatus
Type: string

Indicates the status of the gateway as a member of the Active Directory domain.

  • ACCESS_DENIED: Indicates that the JoinDomain operation failed due to an authentication error.

  • DETACHED: Indicates that gateway is not joined to a domain.

  • JOINED: Indicates that the gateway has successfully joined a domain.

  • JOINING: Indicates that a JoinDomain operation is in progress.

  • NETWORK_ERROR: Indicates that JoinDomain operation failed due to a network or connectivity error.

  • TIMEOUT: Indicates that the JoinDomain operation failed because the operation didn't complete within the allotted time.

  • UNKNOWN_ERROR: Indicates that the JoinDomain operation failed due to another type of error.

GatewayARN
Type: string

The unique Amazon Resource Name (ARN) of the gateway that joined the domain.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

ListAutomaticTapeCreationPolicies

$result = $client->listAutomaticTapeCreationPolicies([/* ... */]);
$promise = $client->listAutomaticTapeCreationPoliciesAsync([/* ... */]);

Lists the automatic tape creation policies for a gateway. If there are no automatic tape creation policies for the gateway, it returns an empty list.

This operation is only supported for tape gateways.

Parameter Syntax

$result = $client->listAutomaticTapeCreationPolicies([
    'GatewayARN' => '<string>',
]);

Parameter Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'AutomaticTapeCreationPolicyInfos' => [
        [
            'AutomaticTapeCreationRules' => [
                [
                    'MinimumNumTapes' => <integer>,
                    'PoolId' => '<string>',
                    'TapeBarcodePrefix' => '<string>',
                    'TapeSizeInBytes' => <integer>,
                    'Worm' => true || false,
                ],
                // ...
            ],
            'GatewayARN' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
AutomaticTapeCreationPolicyInfos
Type: Array of AutomaticTapeCreationPolicyInfo structures

Gets a listing of information about the gateway's automatic tape creation policies, including the automatic tape creation rules and the gateway that is using the policies.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

ListFileShares

$result = $client->listFileShares([/* ... */]);
$promise = $client->listFileSharesAsync([/* ... */]);

Gets a list of the file shares for a specific S3 File Gateway, or the list of file shares that belong to the calling Amazon Web Services account. This operation is only supported for S3 File Gateways.

Parameter Syntax

$result = $client->listFileShares([
    'GatewayARN' => '<string>',
    'Limit' => <integer>,
    'Marker' => '<string>',
]);

Parameter Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway whose file shares you want to list. If this field is not present, all file shares under your account are listed.

Limit
Type: int

The maximum number of file shares to return in the response. The value must be an integer with a value greater than zero. Optional.

Marker
Type: string

Opaque pagination token returned from a previous ListFileShares operation. If present, Marker specifies where to continue the list from after a previous call to ListFileShares. Optional.

Result Syntax

[
    'FileShareInfoList' => [
        [
            'FileShareARN' => '<string>',
            'FileShareId' => '<string>',
            'FileShareStatus' => '<string>',
            'FileShareType' => 'NFS|SMB',
            'GatewayARN' => '<string>',
        ],
        // ...
    ],
    'Marker' => '<string>',
    'NextMarker' => '<string>',
]

Result Details

Members
FileShareInfoList
Type: Array of FileShareInfo structures

An array of information about the S3 File Gateway's file shares.

Marker
Type: string

If the request includes Marker, the response returns that value in this field.

NextMarker
Type: string

If a value is present, there are more file shares to return. In a subsequent request, use NextMarker as the value for Marker to retrieve the next set of file shares.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

ListFileSystemAssociations

$result = $client->listFileSystemAssociations([/* ... */]);
$promise = $client->listFileSystemAssociationsAsync([/* ... */]);

Gets a list of FileSystemAssociationSummary objects. Each object contains a summary of a file system association. This operation is only supported for FSx File Gateways.

Parameter Syntax

$result = $client->listFileSystemAssociations([
    'GatewayARN' => '<string>',
    'Limit' => <integer>,
    'Marker' => '<string>',
]);

Parameter Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Limit
Type: int

The maximum number of file system associations to return in the response. If present, Limit must be an integer with a value greater than zero. Optional.

Marker
Type: string

Opaque pagination token returned from a previous ListFileSystemAssociations operation. If present, Marker specifies where to continue the list from after a previous call to ListFileSystemAssociations. Optional.

Result Syntax

[
    'FileSystemAssociationSummaryList' => [
        [
            'FileSystemAssociationARN' => '<string>',
            'FileSystemAssociationId' => '<string>',
            'FileSystemAssociationStatus' => '<string>',
            'GatewayARN' => '<string>',
        ],
        // ...
    ],
    'Marker' => '<string>',
    'NextMarker' => '<string>',
]

Result Details

Members
FileSystemAssociationSummaryList
Type: Array of FileSystemAssociationSummary structures

An array of information about the Amazon FSx gateway's file system associations.

Marker
Type: string

If the request includes Marker, the response returns that value in this field.

NextMarker
Type: string

If a value is present, there are more file system associations to return. In a subsequent request, use NextMarker as the value for Marker to retrieve the next set of file system associations.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

ListGateways

$result = $client->listGateways([/* ... */]);
$promise = $client->listGatewaysAsync([/* ... */]);

Lists gateways owned by an Amazon Web Services account in an Amazon Web Services Region specified in the request. The returned list is ordered by gateway Amazon Resource Name (ARN).

By default, the operation returns a maximum of 100 gateways. This operation supports pagination that allows you to optionally reduce the number of gateways returned in a response.

If you have more gateways than are returned in a response (that is, the response returns only a truncated list of your gateways), the response contains a marker that you can specify in your next request to fetch the next page of gateways.

Parameter Syntax

$result = $client->listGateways([
    'Limit' => <integer>,
    'Marker' => '<string>',
]);

Parameter Details

Members
Limit
Type: int

Specifies that the list of gateways returned be limited to the specified number of items.

Marker
Type: string

An opaque string that indicates the position at which to begin the returned list of gateways.

Result Syntax

[
    'Gateways' => [
        [
            'DeprecationDate' => '<string>',
            'Ec2InstanceId' => '<string>',
            'Ec2InstanceRegion' => '<string>',
            'GatewayARN' => '<string>',
            'GatewayId' => '<string>',
            'GatewayName' => '<string>',
            'GatewayOperationalState' => '<string>',
            'GatewayType' => '<string>',
            'HostEnvironment' => 'VMWARE|HYPER-V|EC2|KVM|OTHER|SNOWBALL',
            'HostEnvironmentId' => '<string>',
            'SoftwareVersion' => '<string>',
        ],
        // ...
    ],
    'Marker' => '<string>',
]

Result Details

Members
Gateways
Type: Array of GatewayInfo structures

An array of GatewayInfo objects.

Marker
Type: string

Use the marker in your next request to fetch the next set of gateways in the list. If there are no more gateways to list, this field does not appear in the response.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To lists region specific gateways per AWS account

Lists gateways owned by an AWS account in a specified region as requested. Results are sorted by gateway ARN up to a maximum of 100 gateways.

$result = $client->listGateways([
    'Limit' => 2,
    'Marker' => '1',
]);

Result syntax:

[
    'Gateways' => [
        [
            'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
        ],
        [
            'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-23A4567C',
        ],
    ],
    'Marker' => '1',
]

ListLocalDisks

$result = $client->listLocalDisks([/* ... */]);
$promise = $client->listLocalDisksAsync([/* ... */]);

Returns a list of the gateway's local disks. To specify which gateway to describe, you use the Amazon Resource Name (ARN) of the gateway in the body of the request.

The request returns a list of all disks, specifying which are configured as working storage, cache storage, or stored volume or not configured at all. The response includes a DiskStatus field. This field can have a value of present (the disk is available to use), missing (the disk is no longer connected to the gateway), or mismatch (the disk node is occupied by a disk that has incorrect metadata or the disk content is corrupted).

Parameter Syntax

$result = $client->listLocalDisks([
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'Disks' => [
        [
            'DiskAllocationResource' => '<string>',
            'DiskAllocationType' => '<string>',
            'DiskAttributeList' => ['<string>', ...],
            'DiskId' => '<string>',
            'DiskNode' => '<string>',
            'DiskPath' => '<string>',
            'DiskSizeInBytes' => <integer>,
            'DiskStatus' => '<string>',
        ],
        // ...
    ],
    'GatewayARN' => '<string>',
]

Result Details

Members
Disks
Type: Array of Disk structures

A JSON object containing the following fields:

GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To list the gateway's local disks

The request returns a list of all disks, specifying which are configured as working storage, cache storage, or stored volume or not configured at all.

$result = $client->listLocalDisks([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]);

Result syntax:

[
    'Disks' => [
        [
            'DiskAllocationType' => 'CACHE_STORAGE',
            'DiskId' => 'pci-0000:03:00.0-scsi-0:0:0:0',
            'DiskNode' => 'SCSI(0:0)',
            'DiskPath' => '/dev/sda',
            'DiskSizeInBytes' => 1099511627776,
            'DiskStatus' => 'missing',
        ],
        [
            'DiskAllocationResource' => '',
            'DiskAllocationType' => 'UPLOAD_BUFFER',
            'DiskId' => 'pci-0000:03:00.0-scsi-0:0:1:0',
            'DiskNode' => 'SCSI(0:1)',
            'DiskPath' => '/dev/sdb',
            'DiskSizeInBytes' => 1099511627776,
            'DiskStatus' => 'present',
        ],
    ],
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]

ListTagsForResource

$result = $client->listTagsForResource([/* ... */]);
$promise = $client->listTagsForResourceAsync([/* ... */]);

Lists the tags that have been added to the specified resource. This operation is supported in storage gateways of all types.

Parameter Syntax

$result = $client->listTagsForResource([
    'Limit' => <integer>,
    'Marker' => '<string>',
    'ResourceARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
Limit
Type: int

Specifies that the list of tags returned be limited to the specified number of items.

Marker
Type: string

An opaque string that indicates the position at which to begin returning the list of tags.

ResourceARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the resource for which you want to list tags.

Result Syntax

[
    'Marker' => '<string>',
    'ResourceARN' => '<string>',
    'Tags' => [
        [
            'Key' => '<string>',
            'Value' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
Marker
Type: string

An opaque string that indicates the position at which to stop returning the list of tags.

ResourceARN
Type: string

The Amazon Resource Name (ARN) of the resource for which you want to list tags.

Tags
Type: Array of Tag structures

An array that contains the tags for the specified resource.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To list tags that have been added to a resource

Lists the tags that have been added to the specified resource.

$result = $client->listTagsForResource([
    'Limit' => 1,
    'Marker' => '1',
    'ResourceARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-11A2222B',
]);

Result syntax:

[
    'Marker' => '1',
    'ResourceARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-11A2222B',
    'Tags' => [
        [
            'Key' => 'Dev Gatgeway Region',
            'Value' => 'East Coast',
        ],
    ],
]

ListTapePools

$result = $client->listTapePools([/* ... */]);
$promise = $client->listTapePoolsAsync([/* ... */]);

Lists custom tape pools. You specify custom tape pools to list by specifying one or more custom tape pool Amazon Resource Names (ARNs). If you don't specify a custom tape pool ARN, the operation lists all custom tape pools.

This operation supports pagination. You can optionally specify the Limit parameter in the body to limit the number of tape pools in the response. If the number of tape pools returned in the response is truncated, the response includes a Marker element that you can use in your subsequent request to retrieve the next set of tape pools.

Parameter Syntax

$result = $client->listTapePools([
    'Limit' => <integer>,
    'Marker' => '<string>',
    'PoolARNs' => ['<string>', ...],
]);

Parameter Details

Members
Limit
Type: int

An optional number limit for the tape pools in the list returned by this call.

Marker
Type: string

A string that indicates the position at which to begin the returned list of tape pools.

PoolARNs
Type: Array of strings

The Amazon Resource Name (ARN) of each of the custom tape pools you want to list. If you don't specify a custom tape pool ARN, the response lists all custom tape pools.

Result Syntax

[
    'Marker' => '<string>',
    'PoolInfos' => [
        [
            'PoolARN' => '<string>',
            'PoolName' => '<string>',
            'PoolStatus' => 'ACTIVE|DELETED',
            'RetentionLockTimeInDays' => <integer>,
            'RetentionLockType' => 'COMPLIANCE|GOVERNANCE|NONE',
            'StorageClass' => 'DEEP_ARCHIVE|GLACIER',
        ],
        // ...
    ],
]

Result Details

Members
Marker
Type: string

A string that indicates the position at which to begin the returned list of tape pools. Use the marker in your next request to continue pagination of tape pools. If there are no more tape pools to list, this element does not appear in the response body.

PoolInfos
Type: Array of PoolInfo structures

An array of PoolInfo objects, where each object describes a single custom tape pool. If there are no custom tape pools, the PoolInfos is an empty array.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

ListTapes

$result = $client->listTapes([/* ... */]);
$promise = $client->listTapesAsync([/* ... */]);

Lists virtual tapes in your virtual tape library (VTL) and your virtual tape shelf (VTS). You specify the tapes to list by specifying one or more tape Amazon Resource Names (ARNs). If you don't specify a tape ARN, the operation lists all virtual tapes in both your VTL and VTS.

This operation supports pagination. By default, the operation returns a maximum of up to 100 tapes. You can optionally specify the Limit parameter in the body to limit the number of tapes in the response. If the number of tapes returned in the response is truncated, the response includes a Marker element that you can use in your subsequent request to retrieve the next set of tapes. This operation is only supported in the tape gateway type.

Parameter Syntax

$result = $client->listTapes([
    'Limit' => <integer>,
    'Marker' => '<string>',
    'TapeARNs' => ['<string>', ...],
]);

Parameter Details

Members
Limit
Type: int

An optional number limit for the tapes in the list returned by this call.

Marker
Type: string

A string that indicates the position at which to begin the returned list of tapes.

TapeARNs
Type: Array of strings

The Amazon Resource Name (ARN) of each of the tapes you want to list. If you don't specify a tape ARN, the response lists all tapes in both your VTL and VTS.

Result Syntax

[
    'Marker' => '<string>',
    'TapeInfos' => [
        [
            'GatewayARN' => '<string>',
            'PoolEntryDate' => <DateTime>,
            'PoolId' => '<string>',
            'RetentionStartDate' => <DateTime>,
            'TapeARN' => '<string>',
            'TapeBarcode' => '<string>',
            'TapeSizeInBytes' => <integer>,
            'TapeStatus' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
Marker
Type: string

A string that indicates the position at which to begin returning the next list of tapes. Use the marker in your next request to continue pagination of tapes. If there are no more tapes to list, this element does not appear in the response body.

TapeInfos
Type: Array of TapeInfo structures

An array of TapeInfo objects, where each object describes a single tape. If there are no tapes in the tape library or VTS, then the TapeInfos is an empty array.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

ListVolumeInitiators

$result = $client->listVolumeInitiators([/* ... */]);
$promise = $client->listVolumeInitiatorsAsync([/* ... */]);

Lists iSCSI initiators that are connected to a volume. You can use this operation to determine whether a volume is being used or not. This operation is only supported in the cached volume and stored volume gateway types.

Parameter Syntax

$result = $client->listVolumeInitiators([
    'VolumeARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
VolumeARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the volume. Use the ListVolumes operation to return a list of gateway volumes for the gateway.

Result Syntax

[
    'Initiators' => ['<string>', ...],
]

Result Details

Members
Initiators
Type: Array of strings

The host names and port numbers of all iSCSI initiators that are connected to the gateway.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

ListVolumeRecoveryPoints

$result = $client->listVolumeRecoveryPoints([/* ... */]);
$promise = $client->listVolumeRecoveryPointsAsync([/* ... */]);

Lists the recovery points for a specified gateway. This operation is only supported in the cached volume gateway type.

Each cache volume has one recovery point. A volume recovery point is a point in time at which all data of the volume is consistent and from which you can create a snapshot or clone a new cached volume from a source volume. To create a snapshot from a volume recovery point use the CreateSnapshotFromVolumeRecoveryPoint operation.

Parameter Syntax

$result = $client->listVolumeRecoveryPoints([
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'GatewayARN' => '<string>',
    'VolumeRecoveryPointInfos' => [
        [
            'VolumeARN' => '<string>',
            'VolumeRecoveryPointTime' => '<string>',
            'VolumeSizeInBytes' => <integer>,
            'VolumeUsageInBytes' => <integer>,
        ],
        // ...
    ],
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

VolumeRecoveryPointInfos
Type: Array of VolumeRecoveryPointInfo structures

An array of VolumeRecoveryPointInfo objects.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To list recovery points for a gateway

Lists the recovery points for a specified gateway in which all data of the volume is consistent and can be used to create a snapshot.

$result = $client->listVolumeRecoveryPoints([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]);

Result syntax:

[
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
    'VolumeRecoveryPointInfos' => [
        [
            'VolumeARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
            'VolumeRecoveryPointTime' => '2012-09-04T21:08:44.627Z',
            'VolumeSizeInBytes' => 536870912000,
        ],
    ],
]

ListVolumes

$result = $client->listVolumes([/* ... */]);
$promise = $client->listVolumesAsync([/* ... */]);

Lists the iSCSI stored volumes of a gateway. Results are sorted by volume ARN. The response includes only the volume ARNs. If you want additional volume information, use the DescribeStorediSCSIVolumes or the DescribeCachediSCSIVolumes API.

The operation supports pagination. By default, the operation returns a maximum of up to 100 volumes. You can optionally specify the Limit field in the body to limit the number of volumes in the response. If the number of volumes returned in the response is truncated, the response includes a Marker field. You can use this Marker value in your subsequent request to retrieve the next set of volumes. This operation is only supported in the cached volume and stored volume gateway types.

Parameter Syntax

$result = $client->listVolumes([
    'GatewayARN' => '<string>',
    'Limit' => <integer>,
    'Marker' => '<string>',
]);

Parameter Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Limit
Type: int

Specifies that the list of volumes returned be limited to the specified number of items.

Marker
Type: string

A string that indicates the position at which to begin the returned list of volumes. Obtain the marker from the response of a previous List iSCSI Volumes request.

Result Syntax

[
    'GatewayARN' => '<string>',
    'Marker' => '<string>',
    'VolumeInfos' => [
        [
            'GatewayARN' => '<string>',
            'GatewayId' => '<string>',
            'VolumeARN' => '<string>',
            'VolumeAttachmentStatus' => '<string>',
            'VolumeId' => '<string>',
            'VolumeSizeInBytes' => <integer>,
            'VolumeType' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Marker
Type: string

Use the marker in your next request to continue pagination of iSCSI volumes. If there are no more volumes to list, this field does not appear in the response body.

VolumeInfos
Type: Array of VolumeInfo structures

An array of VolumeInfo objects, where each object describes an iSCSI volume. If no volumes are defined for the gateway, then VolumeInfos is an empty array "[]".

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To list the iSCSI stored volumes of a gateway

Lists the iSCSI stored volumes of a gateway. Results are sorted by volume ARN up to a maximum of 100 volumes.

$result = $client->listVolumes([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
    'Limit' => 2,
    'Marker' => '1',
]);

Result syntax:

[
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
    'Marker' => '1',
    'VolumeInfos' => [
        [
            'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
            'GatewayId' => 'sgw-12A3456B',
            'VolumeARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
            'VolumeId' => 'vol-1122AABB',
            'VolumeSizeInBytes' => 107374182400,
            'VolumeType' => 'STORED',
        ],
        [
            'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-13B4567C',
            'GatewayId' => 'sgw-gw-13B4567C',
            'VolumeARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-13B4567C/volume/vol-3344CCDD',
            'VolumeId' => 'vol-1122AABB',
            'VolumeSizeInBytes' => 107374182400,
            'VolumeType' => 'STORED',
        ],
    ],
]

NotifyWhenUploaded

$result = $client->notifyWhenUploaded([/* ... */]);
$promise = $client->notifyWhenUploadedAsync([/* ... */]);

Sends you notification through CloudWatch Events when all files written to your file share have been uploaded to Amazon S3.

Storage Gateway can send a notification through Amazon CloudWatch Events when all files written to your file share up to that point in time have been uploaded to Amazon S3. These files include files written to the file share up to the time that you make a request for notification. When the upload is done, Storage Gateway sends you notification through an Amazon CloudWatch Event. You can configure CloudWatch Events to send the notification through event targets such as Amazon SNS or Lambda function. This operation is only supported for S3 File Gateways.

For more information, see Getting file upload notification in the Amazon S3 File Gateway User Guide.

Parameter Syntax

$result = $client->notifyWhenUploaded([
    'FileShareARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
FileShareARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the file share.

Result Syntax

[
    'FileShareARN' => '<string>',
    'NotificationId' => '<string>',
]

Result Details

Members
FileShareARN
Type: string

The Amazon Resource Name (ARN) of the file share.

NotificationId
Type: string

The randomly generated ID of the notification that was sent. This ID is in UUID format.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

RefreshCache

$result = $client->refreshCache([/* ... */]);
$promise = $client->refreshCacheAsync([/* ... */]);

Refreshes the cached inventory of objects for the specified file share. This operation finds objects in the Amazon S3 bucket that were added, removed, or replaced since the gateway last listed the bucket's contents and cached the results. This operation does not import files into the S3 File Gateway cache storage. It only updates the cached inventory to reflect changes in the inventory of the objects in the S3 bucket. This operation is only supported in the S3 File Gateway types.

You can subscribe to be notified through an Amazon CloudWatch event when your RefreshCache operation completes. For more information, see Getting notified about file operations in the Amazon S3 File Gateway User Guide. This operation is Only supported for S3 File Gateways.

When this API is called, it only initiates the refresh operation. When the API call completes and returns a success code, it doesn't necessarily mean that the file refresh has completed. You should use the refresh-complete notification to determine that the operation has completed before you check for new files on the gateway file share. You can subscribe to be notified through a CloudWatch event when your RefreshCache operation completes.

Throttle limit: This API is asynchronous, so the gateway will accept no more than two refreshes at any time. We recommend using the refresh-complete CloudWatch event notification before issuing additional requests. For more information, see Getting notified about file operations in the Amazon S3 File Gateway User Guide.

  • Wait at least 60 seconds between consecutive RefreshCache API requests.

  • If you invoke the RefreshCache API when two requests are already being processed, any new request will cause an InvalidGatewayRequestException error because too many requests were sent to the server.

The S3 bucket name does not need to be included when entering the list of folders in the FolderList parameter.

For more information, see Getting notified about file operations in the Amazon S3 File Gateway User Guide.

Parameter Syntax

$result = $client->refreshCache([
    'FileShareARN' => '<string>', // REQUIRED
    'FolderList' => ['<string>', ...],
    'Recursive' => true || false,
]);

Parameter Details

Members
FileShareARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the file share you want to refresh.

FolderList
Type: Array of strings

A comma-separated list of the paths of folders to refresh in the cache. The default is ["/"]. The default refreshes objects and folders at the root of the Amazon S3 bucket. If Recursive is set to true, the entire S3 bucket that the file share has access to is refreshed.

Do not include / when specifying folder names. For example, you would specify samplefolder rather than samplefolder/.

Recursive
Type: boolean

A value that specifies whether to recursively refresh folders in the cache. The refresh includes folders that were in the cache the last time the gateway listed the folder's contents. If this value set to true, each folder that is listed in FolderList is recursively updated. Otherwise, subfolders listed in FolderList are not refreshed. Only objects that are in folders listed directly under FolderList are found and used for the update. The default is true.

Valid Values: true | false

Result Syntax

[
    'FileShareARN' => '<string>',
    'NotificationId' => '<string>',
]

Result Details

Members
FileShareARN
Type: string

The Amazon Resource Name (ARN) of the file share.

NotificationId
Type: string

The randomly generated ID of the notification that was sent. This ID is in UUID format.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

RemoveTagsFromResource

$result = $client->removeTagsFromResource([/* ... */]);
$promise = $client->removeTagsFromResourceAsync([/* ... */]);

Removes one or more tags from the specified resource. This operation is supported in storage gateways of all types.

Parameter Syntax

$result = $client->removeTagsFromResource([
    'ResourceARN' => '<string>', // REQUIRED
    'TagKeys' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
ResourceARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the resource you want to remove the tags from.

TagKeys
Required: Yes
Type: Array of strings

The keys of the tags you want to remove from the specified resource. A tag is composed of a key-value pair.

Result Syntax

[
    'ResourceARN' => '<string>',
]

Result Details

Members
ResourceARN
Type: string

The Amazon Resource Name (ARN) of the resource that the tags were removed from.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To remove tags from a resource

Lists the iSCSI stored volumes of a gateway. Removes one or more tags from the specified resource.

$result = $client->removeTagsFromResource([
    'ResourceARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-11A2222B',
    'TagKeys' => [
        'Dev Gatgeway Region',
        'East Coast',
    ],
]);

Result syntax:

[
    'ResourceARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-11A2222B',
]

ResetCache

$result = $client->resetCache([/* ... */]);
$promise = $client->resetCacheAsync([/* ... */]);

Resets all cache disks that have encountered an error and makes the disks available for reconfiguration as cache storage. If your cache disk encounters an error, the gateway prevents read and write operations on virtual tapes in the gateway. For example, an error can occur when a disk is corrupted or removed from the gateway. When a cache is reset, the gateway loses its cache storage. At this point, you can reconfigure the disks as cache disks. This operation is only supported in the cached volume and tape types.

If the cache disk you are resetting contains data that has not been uploaded to Amazon S3 yet, that data can be lost. After you reset cache disks, there will be no configured cache disks left in the gateway, so you must configure at least one new cache disk for your gateway to function properly.

Parameter Syntax

$result = $client->resetCache([
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To reset cache disks in error status

Resets all cache disks that have encountered a error and makes the disks available for reconfiguration as cache storage.

$result = $client->resetCache([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-13B4567C',
]);

Result syntax:

[
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-13B4567C',
]

RetrieveTapeArchive

$result = $client->retrieveTapeArchive([/* ... */]);
$promise = $client->retrieveTapeArchiveAsync([/* ... */]);

Retrieves an archived virtual tape from the virtual tape shelf (VTS) to a tape gateway. Virtual tapes archived in the VTS are not associated with any gateway. However after a tape is retrieved, it is associated with a gateway, even though it is also listed in the VTS, that is, archive. This operation is only supported in the tape gateway type.

Once a tape is successfully retrieved to a gateway, it cannot be retrieved again to another gateway. You must archive the tape again before you can retrieve it to another gateway. This operation is only supported in the tape gateway type.

Parameter Syntax

$result = $client->retrieveTapeArchive([
    'GatewayARN' => '<string>', // REQUIRED
    'TapeARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway you want to retrieve the virtual tape to. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

You retrieve archived virtual tapes to only one gateway and the gateway must be a tape gateway.

TapeARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the virtual tape you want to retrieve from the virtual tape shelf (VTS).

Result Syntax

[
    'TapeARN' => '<string>',
]

Result Details

Members
TapeARN
Type: string

The Amazon Resource Name (ARN) of the retrieved virtual tape.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To retrieve an archived tape from the VTS

Retrieves an archived virtual tape from the virtual tape shelf (VTS) to a gateway-VTL. Virtual tapes archived in the VTS are not associated with any gateway.

$result = $client->retrieveTapeArchive([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B',
    'TapeARN' => 'arn:aws:storagegateway:us-east-1:999999999999:tape/TEST0AA2AF',
]);

Result syntax:

[
    'TapeARN' => 'arn:aws:storagegateway:us-east-1:999999999999:tape/TEST0AA2AF',
]

RetrieveTapeRecoveryPoint

$result = $client->retrieveTapeRecoveryPoint([/* ... */]);
$promise = $client->retrieveTapeRecoveryPointAsync([/* ... */]);

Retrieves the recovery point for the specified virtual tape. This operation is only supported in the tape gateway type.

A recovery point is a point in time view of a virtual tape at which all the data on the tape is consistent. If your gateway crashes, virtual tapes that have recovery points can be recovered to a new gateway.

The virtual tape can be retrieved to only one gateway. The retrieved tape is read-only. The virtual tape can be retrieved to only a tape gateway. There is no charge for retrieving recovery points.

Parameter Syntax

$result = $client->retrieveTapeRecoveryPoint([
    'GatewayARN' => '<string>', // REQUIRED
    'TapeARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

TapeARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the virtual tape for which you want to retrieve the recovery point.

Result Syntax

[
    'TapeARN' => '<string>',
]

Result Details

Members
TapeARN
Type: string

The Amazon Resource Name (ARN) of the virtual tape for which the recovery point was retrieved.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To retrieve the recovery point of a virtual tape

Retrieves the recovery point for the specified virtual tape.

$result = $client->retrieveTapeRecoveryPoint([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B',
    'TapeARN' => 'arn:aws:storagegateway:us-east-1:999999999999:tape/TEST0AA2AF',
]);

Result syntax:

[
    'TapeARN' => 'arn:aws:storagegateway:us-east-1:999999999999:tape/TEST0AA2AF',
]

SetLocalConsolePassword

$result = $client->setLocalConsolePassword([/* ... */]);
$promise = $client->setLocalConsolePasswordAsync([/* ... */]);

Sets the password for your VM local console. When you log in to the local console for the first time, you log in to the VM with the default credentials. We recommend that you set a new password. You don't need to know the default password to set a new password.

Parameter Syntax

$result = $client->setLocalConsolePassword([
    'GatewayARN' => '<string>', // REQUIRED
    'LocalConsolePassword' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

LocalConsolePassword
Required: Yes
Type: string

The password you want to set for your VM local console.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To set a password for your VM

Sets the password for your VM local console.

$result = $client->setLocalConsolePassword([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B',
    'LocalConsolePassword' => 'PassWordMustBeAtLeast6Chars.',
]);

Result syntax:

[
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B',
]

SetSMBGuestPassword

$result = $client->setSMBGuestPassword([/* ... */]);
$promise = $client->setSMBGuestPasswordAsync([/* ... */]);

Sets the password for the guest user smbguest. The smbguest user is the user when the authentication method for the file share is set to GuestAccess. This operation only supported for S3 File Gateways

Parameter Syntax

$result = $client->setSMBGuestPassword([
    'GatewayARN' => '<string>', // REQUIRED
    'Password' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the S3 File Gateway the SMB file share is associated with.

Password
Required: Yes
Type: string

The password that you want to set for your SMB server.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

ShutdownGateway

$result = $client->shutdownGateway([/* ... */]);
$promise = $client->shutdownGatewayAsync([/* ... */]);

Shuts down a Tape Gateway or Volume Gateway. To specify which gateway to shut down, use the Amazon Resource Name (ARN) of the gateway in the body of your request.

This API action cannot be used to shut down S3 File Gateway or FSx File Gateway.

The operation shuts down the gateway service component running in the gateway's virtual machine (VM) and not the host VM.

If you want to shut down the VM, it is recommended that you first shut down the gateway component in the VM to avoid unpredictable conditions.

After the gateway is shutdown, you cannot call any other API except StartGateway, DescribeGatewayInformation, and ListGateways. For more information, see ActivateGateway. Your applications cannot read from or write to the gateway's storage volumes, and there are no snapshots taken.

When you make a shutdown request, you will get a 200 OK success response immediately. However, it might take some time for the gateway to shut down. You can call the DescribeGatewayInformation API to check the status. For more information, see ActivateGateway.

If do not intend to use the gateway again, you must delete the gateway (using DeleteGateway) to no longer pay software charges associated with the gateway.

Parameter Syntax

$result = $client->shutdownGateway([
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To shut down a gateway service

This operation shuts down the gateway service component running in the storage gateway's virtual machine (VM) and not the VM.

$result = $client->shutdownGateway([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B',
]);

Result syntax:

[
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B',
]

StartAvailabilityMonitorTest

$result = $client->startAvailabilityMonitorTest([/* ... */]);
$promise = $client->startAvailabilityMonitorTestAsync([/* ... */]);

Start a test that verifies that the specified gateway is configured for High Availability monitoring in your host environment. This request only initiates the test and that a successful response only indicates that the test was started. It doesn't indicate that the test passed. For the status of the test, invoke the DescribeAvailabilityMonitorTest API.

Starting this test will cause your gateway to go offline for a brief period.

Parameter Syntax

$result = $client->startAvailabilityMonitorTest([
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

StartGateway

$result = $client->startGateway([/* ... */]);
$promise = $client->startGatewayAsync([/* ... */]);

Starts a gateway that you previously shut down (see ShutdownGateway). After the gateway starts, you can then make other API calls, your applications can read from or write to the gateway's storage volumes and you will be able to take snapshot backups.

When you make a request, you will get a 200 OK success response immediately. However, it might take some time for the gateway to be ready. You should call DescribeGatewayInformation and check the status before making any additional API calls. For more information, see ActivateGateway.

To specify which gateway to start, use the Amazon Resource Name (ARN) of the gateway in your request.

Parameter Syntax

$result = $client->startGateway([
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To start a gateway service

Starts a gateway service that was previously shut down.

$result = $client->startGateway([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B',
]);

Result syntax:

[
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B',
]

UpdateAutomaticTapeCreationPolicy

$result = $client->updateAutomaticTapeCreationPolicy([/* ... */]);
$promise = $client->updateAutomaticTapeCreationPolicyAsync([/* ... */]);

Updates the automatic tape creation policy of a gateway. Use this to update the policy with a new set of automatic tape creation rules. This is only supported for tape gateways.

By default, there is no automatic tape creation policy.

A gateway can have only one automatic tape creation policy.

Parameter Syntax

$result = $client->updateAutomaticTapeCreationPolicy([
    'AutomaticTapeCreationRules' => [ // REQUIRED
        [
            'MinimumNumTapes' => <integer>, // REQUIRED
            'PoolId' => '<string>', // REQUIRED
            'TapeBarcodePrefix' => '<string>', // REQUIRED
            'TapeSizeInBytes' => <integer>, // REQUIRED
            'Worm' => true || false,
        ],
        // ...
    ],
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
AutomaticTapeCreationRules
Required: Yes
Type: Array of AutomaticTapeCreationRule structures

An automatic tape creation policy consists of a list of automatic tape creation rules. The rules determine when and how to automatically create new tapes.

GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

UpdateBandwidthRateLimit

$result = $client->updateBandwidthRateLimit([/* ... */]);
$promise = $client->updateBandwidthRateLimitAsync([/* ... */]);

Updates the bandwidth rate limits of a gateway. You can update both the upload and download bandwidth rate limit or specify only one of the two. If you don't set a bandwidth rate limit, the existing rate limit remains. This operation is supported only for the stored volume, cached volume, and tape gateway types. To update bandwidth rate limits for S3 file gateways, use UpdateBandwidthRateLimitSchedule.

By default, a gateway's bandwidth rate limits are not set. If you don't set any limit, the gateway does not have any limitations on its bandwidth usage and could potentially use the maximum available bandwidth.

To specify which gateway to update, use the Amazon Resource Name (ARN) of the gateway in your request.

Parameter Syntax

$result = $client->updateBandwidthRateLimit([
    'AverageDownloadRateLimitInBitsPerSec' => <integer>,
    'AverageUploadRateLimitInBitsPerSec' => <integer>,
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
AverageDownloadRateLimitInBitsPerSec
Type: long (int|float)

The average download bandwidth rate limit in bits per second.

AverageUploadRateLimitInBitsPerSec
Type: long (int|float)

The average upload bandwidth rate limit in bits per second.

GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To update the bandwidth rate limits of a gateway

Updates the bandwidth rate limits of a gateway. Both the upload and download bandwidth rate limit can be set, or either one of the two. If a new limit is not set, the existing rate limit remains.

$result = $client->updateBandwidthRateLimit([
    'AverageDownloadRateLimitInBitsPerSec' => 102400,
    'AverageUploadRateLimitInBitsPerSec' => 51200,
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]);

Result syntax:

[
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]

UpdateBandwidthRateLimitSchedule

$result = $client->updateBandwidthRateLimitSchedule([/* ... */]);
$promise = $client->updateBandwidthRateLimitScheduleAsync([/* ... */]);

Updates the bandwidth rate limit schedule for a specified gateway. By default, gateways do not have bandwidth rate limit schedules, which means no bandwidth rate limiting is in effect. Use this to initiate or update a gateway's bandwidth rate limit schedule. This operation is supported for volume, tape, and S3 file gateways. S3 file gateways support bandwidth rate limits for upload only. FSx file gateways do not support bandwidth rate limits.

Parameter Syntax

$result = $client->updateBandwidthRateLimitSchedule([
    'BandwidthRateLimitIntervals' => [ // REQUIRED
        [
            'AverageDownloadRateLimitInBitsPerSec' => <integer>,
            'AverageUploadRateLimitInBitsPerSec' => <integer>,
            'DaysOfWeek' => [<integer>, ...], // REQUIRED
            'EndHourOfDay' => <integer>, // REQUIRED
            'EndMinuteOfHour' => <integer>, // REQUIRED
            'StartHourOfDay' => <integer>, // REQUIRED
            'StartMinuteOfHour' => <integer>, // REQUIRED
        ],
        // ...
    ],
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
BandwidthRateLimitIntervals
Required: Yes
Type: Array of BandwidthRateLimitInterval structures

An array containing bandwidth rate limit schedule intervals for a gateway. When no bandwidth rate limit intervals have been scheduled, the array is empty.

GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

UpdateChapCredentials

$result = $client->updateChapCredentials([/* ... */]);
$promise = $client->updateChapCredentialsAsync([/* ... */]);

Updates the Challenge-Handshake Authentication Protocol (CHAP) credentials for a specified iSCSI target. By default, a gateway does not have CHAP enabled; however, for added security, you might use it. This operation is supported in the volume and tape gateway types.

When you update CHAP credentials, all existing connections on the target are closed and initiators must reconnect with the new credentials.

Parameter Syntax

$result = $client->updateChapCredentials([
    'InitiatorName' => '<string>', // REQUIRED
    'SecretToAuthenticateInitiator' => '<string>', // REQUIRED
    'SecretToAuthenticateTarget' => '<string>',
    'TargetARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
InitiatorName
Required: Yes
Type: string

The iSCSI initiator that connects to the target.

SecretToAuthenticateInitiator
Required: Yes
Type: string

The secret key that the initiator (for example, the Windows client) must provide to participate in mutual CHAP with the target.

The secret key must be between 12 and 16 bytes when encoded in UTF-8.

SecretToAuthenticateTarget
Type: string

The secret key that the target must provide to participate in mutual CHAP with the initiator (e.g. Windows client).

Byte constraints: Minimum bytes of 12. Maximum bytes of 16.

The secret key must be between 12 and 16 bytes when encoded in UTF-8.

TargetARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the iSCSI volume target. Use the DescribeStorediSCSIVolumes operation to return the TargetARN for specified VolumeARN.

Result Syntax

[
    'InitiatorName' => '<string>',
    'TargetARN' => '<string>',
]

Result Details

Members
InitiatorName
Type: string

The iSCSI initiator that connects to the target. This is the same initiator name specified in the request.

TargetARN
Type: string

The Amazon Resource Name (ARN) of the target. This is the same target specified in the request.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To update CHAP credentials for an iSCSI target

Updates the Challenge-Handshake Authentication Protocol (CHAP) credentials for a specified iSCSI target.

$result = $client->updateChapCredentials([
    'InitiatorName' => 'iqn.1991-05.com.microsoft:computername.domain.example.com',
    'SecretToAuthenticateInitiator' => '111111111111',
    'SecretToAuthenticateTarget' => '222222222222',
    'TargetARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume',
]);

Result syntax:

[
    'InitiatorName' => 'iqn.1991-05.com.microsoft:computername.domain.example.com',
    'TargetARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume',
]

UpdateFileSystemAssociation

$result = $client->updateFileSystemAssociation([/* ... */]);
$promise = $client->updateFileSystemAssociationAsync([/* ... */]);

Updates a file system association. This operation is only supported in the FSx File Gateways.

Parameter Syntax

$result = $client->updateFileSystemAssociation([
    'AuditDestinationARN' => '<string>',
    'CacheAttributes' => [
        'CacheStaleTimeoutInSeconds' => <integer>,
    ],
    'FileSystemAssociationARN' => '<string>', // REQUIRED
    'Password' => '<string>',
    'UserName' => '<string>',
]);

Parameter Details

Members
AuditDestinationARN
Type: string

The Amazon Resource Name (ARN) of the storage used for the audit logs.

CacheAttributes
Type: CacheAttributes structure

The refresh cache information for the file share or FSx file systems.

FileSystemAssociationARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the file system association that you want to update.

Password
Type: string

The password of the user credential.

UserName
Type: string

The user name of the user credential that has permission to access the root share D$ of the Amazon FSx file system. The user account must belong to the Amazon FSx delegated admin user group.

Result Syntax

[
    'FileSystemAssociationARN' => '<string>',
]

Result Details

Members
FileSystemAssociationARN
Type: string

The ARN of the updated file system association.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

UpdateGatewayInformation

$result = $client->updateGatewayInformation([/* ... */]);
$promise = $client->updateGatewayInformationAsync([/* ... */]);

Updates a gateway's metadata, which includes the gateway's name and time zone. To specify which gateway to update, use the Amazon Resource Name (ARN) of the gateway in your request.

For gateways activated after September 2, 2015, the gateway's ARN contains the gateway ID rather than the gateway name. However, changing the name of the gateway has no effect on the gateway's ARN.

Parameter Syntax

$result = $client->updateGatewayInformation([
    'CloudWatchLogGroupARN' => '<string>',
    'GatewayARN' => '<string>', // REQUIRED
    'GatewayCapacity' => 'Small|Medium|Large',
    'GatewayName' => '<string>',
    'GatewayTimezone' => '<string>',
]);

Parameter Details

Members
CloudWatchLogGroupARN
Type: string

The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that you want to use to monitor and log events in the gateway.

For more information, see What is Amazon CloudWatch Logs?

GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

GatewayCapacity
Type: string

Specifies the size of the gateway's metadata cache.

GatewayName
Type: string

The name you configured for your gateway.

GatewayTimezone
Type: string

A value that indicates the time zone of the gateway.

Result Syntax

[
    'GatewayARN' => '<string>',
    'GatewayName' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

GatewayName
Type: string

The name you configured for your gateway.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To update a gateway's metadata

Updates a gateway's metadata, which includes the gateway's name and time zone.

$result = $client->updateGatewayInformation([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
    'GatewayName' => 'MyGateway2',
    'GatewayTimezone' => 'GMT-12:00',
]);

Result syntax:

[
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
    'GatewayName' => '',
]

UpdateGatewaySoftwareNow

$result = $client->updateGatewaySoftwareNow([/* ... */]);
$promise = $client->updateGatewaySoftwareNowAsync([/* ... */]);

Updates the gateway virtual machine (VM) software. The request immediately triggers the software update.

When you make this request, you get a 200 OK success response immediately. However, it might take some time for the update to complete. You can call DescribeGatewayInformation to verify the gateway is in the STATE_RUNNING state.

A software update forces a system restart of your gateway. You can minimize the chance of any disruption to your applications by increasing your iSCSI Initiators' timeouts. For more information about increasing iSCSI Initiator timeouts for Windows and Linux, see Customizing your Windows iSCSI settings and Customizing your Linux iSCSI settings, respectively.

Parameter Syntax

$result = $client->updateGatewaySoftwareNow([
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To update a gateway's VM software

Updates the gateway virtual machine (VM) software. The request immediately triggers the software update.

$result = $client->updateGatewaySoftwareNow([
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]);

Result syntax:

[
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]

UpdateMaintenanceStartTime

$result = $client->updateMaintenanceStartTime([/* ... */]);
$promise = $client->updateMaintenanceStartTimeAsync([/* ... */]);

Updates a gateway's weekly maintenance start time information, including day and time of the week. The maintenance time is the time in your gateway's time zone.

Parameter Syntax

$result = $client->updateMaintenanceStartTime([
    'DayOfMonth' => <integer>,
    'DayOfWeek' => <integer>,
    'GatewayARN' => '<string>', // REQUIRED
    'HourOfDay' => <integer>, // REQUIRED
    'MinuteOfHour' => <integer>, // REQUIRED
]);

Parameter Details

Members
DayOfMonth
Type: int

The day of the month component of the maintenance start time represented as an ordinal number from 1 to 28, where 1 represents the first day of the month and 28 represents the last day of the month.

DayOfWeek
Type: int

The day of the week component of the maintenance start time week represented as an ordinal number from 0 to 6, where 0 represents Sunday and 6 Saturday.

GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

HourOfDay
Required: Yes
Type: int

The hour component of the maintenance start time represented as hh, where hh is the hour (00 to 23). The hour of the day is in the time zone of the gateway.

MinuteOfHour
Required: Yes
Type: int

The minute component of the maintenance start time represented as mm, where mm is the minute (00 to 59). The minute of the hour is in the time zone of the gateway.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To update a gateway's maintenance start time

Updates a gateway's weekly maintenance start time information, including day and time of the week. The maintenance time is in your gateway's time zone.

$result = $client->updateMaintenanceStartTime([
    'DayOfWeek' => 2,
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
    'HourOfDay' => 0,
    'MinuteOfHour' => 30,
]);

Result syntax:

[
    'GatewayARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B',
]

UpdateNFSFileShare

$result = $client->updateNFSFileShare([/* ... */]);
$promise = $client->updateNFSFileShareAsync([/* ... */]);

Updates a Network File System (NFS) file share. This operation is only supported in S3 File Gateways.

To leave a file share field unchanged, set the corresponding input field to null.

Updates the following file share settings:

  • Default storage class for your S3 bucket

  • Metadata defaults for your S3 bucket

  • Allowed NFS clients for your file share

  • Squash settings

  • Write status of your file share

Parameter Syntax

$result = $client->updateNFSFileShare([
    'AuditDestinationARN' => '<string>',
    'CacheAttributes' => [
        'CacheStaleTimeoutInSeconds' => <integer>,
    ],
    'ClientList' => ['<string>', ...],
    'DefaultStorageClass' => '<string>',
    'FileShareARN' => '<string>', // REQUIRED
    'FileShareName' => '<string>',
    'GuessMIMETypeEnabled' => true || false,
    'KMSEncrypted' => true || false,
    'KMSKey' => '<string>',
    'NFSFileShareDefaults' => [
        'DirectoryMode' => '<string>',
        'FileMode' => '<string>',
        'GroupId' => <integer>,
        'OwnerId' => <integer>,
    ],
    'NotificationPolicy' => '<string>',
    'ObjectACL' => 'private|public-read|public-read-write|authenticated-read|bucket-owner-read|bucket-owner-full-control|aws-exec-read',
    'ReadOnly' => true || false,
    'RequesterPays' => true || false,
    'Squash' => '<string>',
]);

Parameter Details

Members
AuditDestinationARN
Type: string

The Amazon Resource Name (ARN) of the storage used for audit logs.

CacheAttributes
Type: CacheAttributes structure

Specifies refresh cache information for the file share.

ClientList
Type: Array of strings

The list of clients that are allowed to access the S3 File Gateway. The list must contain either valid IP addresses or valid CIDR blocks.

DefaultStorageClass
Type: string

The default storage class for objects put into an Amazon S3 bucket by the S3 File Gateway. The default value is S3_STANDARD. Optional.

Valid Values: S3_STANDARD | S3_INTELLIGENT_TIERING | S3_STANDARD_IA | S3_ONEZONE_IA

FileShareARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the file share to be updated.

FileShareName
Type: string

The name of the file share. Optional.

FileShareName must be set if an S3 prefix name is set in LocationARN, or if an access point or access point alias is used.

GuessMIMETypeEnabled
Type: boolean

A value that enables guessing of the MIME type for uploaded objects based on file extensions. Set this value to true to enable MIME type guessing, otherwise set to false. The default value is true.

Valid Values: true | false

KMSEncrypted
Type: boolean

Set to true to use Amazon S3 server-side encryption with your own KMS key, or false to use a key managed by Amazon S3. Optional.

Valid Values: true | false

KMSKey
Type: string

The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when KMSEncrypted is true. Optional.

NFSFileShareDefaults
Type: NFSFileShareDefaults structure

The default values for the file share. Optional.

NotificationPolicy
Type: string

The notification policy of the file share. SettlingTimeInSeconds controls the number of seconds to wait after the last point in time a client wrote to a file before generating an ObjectUploaded notification. Because clients can make many small writes to files, it's best to set this parameter for as long as possible to avoid generating multiple notifications for the same file in a small time period.

SettlingTimeInSeconds has no effect on the timing of the object uploading to Amazon S3, only the timing of the notification.

The following example sets NotificationPolicy on with SettlingTimeInSeconds set to 60.

{\"Upload\": {\"SettlingTimeInSeconds\": 60}}

The following example sets NotificationPolicy off.

{}

ObjectACL
Type: string

A value that sets the access control list (ACL) permission for objects in the S3 bucket that a S3 File Gateway puts objects into. The default value is private.

ReadOnly
Type: boolean

A value that sets the write status of a file share. Set this value to true to set the write status to read-only, otherwise set to false.

Valid Values: true | false

RequesterPays
Type: boolean

A value that sets who pays the cost of the request and the cost associated with data download from the S3 bucket. If this value is set to true, the requester pays the costs; otherwise, the S3 bucket owner pays. However, the S3 bucket owner always pays the cost of storing data.

RequesterPays is a configuration for the S3 bucket that backs the file share, so make sure that the configuration on the file share is the same as the S3 bucket configuration.

Valid Values: true | false

Squash
Type: string

The user mapped to anonymous user.

Valid values are the following:

  • RootSquash: Only root is mapped to anonymous user.

  • NoSquash: No one is mapped to anonymous user.

  • AllSquash: Everyone is mapped to anonymous user.

Result Syntax

[
    'FileShareARN' => '<string>',
]

Result Details

Members
FileShareARN
Type: string

The Amazon Resource Name (ARN) of the updated file share.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

UpdateSMBFileShare

$result = $client->updateSMBFileShare([/* ... */]);
$promise = $client->updateSMBFileShareAsync([/* ... */]);

Updates a Server Message Block (SMB) file share. This operation is only supported for S3 File Gateways.

To leave a file share field unchanged, set the corresponding input field to null.

File gateways require Security Token Service (Amazon Web Services STS) to be activated to enable you to create a file share. Make sure that Amazon Web Services STS is activated in the Amazon Web Services Region you are creating your file gateway in. If Amazon Web Services STS is not activated in this Amazon Web Services Region, activate it. For information about how to activate Amazon Web Services STS, see Activating and deactivating Amazon Web Services STS in an Amazon Web Services Region in the Identity and Access Management User Guide.

File gateways don't support creating hard or symbolic links on a file share.

Parameter Syntax

$result = $client->updateSMBFileShare([
    'AccessBasedEnumeration' => true || false,
    'AdminUserList' => ['<string>', ...],
    'AuditDestinationARN' => '<string>',
    'CacheAttributes' => [
        'CacheStaleTimeoutInSeconds' => <integer>,
    ],
    'CaseSensitivity' => 'ClientSpecified|CaseSensitive',
    'DefaultStorageClass' => '<string>',
    'FileShareARN' => '<string>', // REQUIRED
    'FileShareName' => '<string>',
    'GuessMIMETypeEnabled' => true || false,
    'InvalidUserList' => ['<string>', ...],
    'KMSEncrypted' => true || false,
    'KMSKey' => '<string>',
    'NotificationPolicy' => '<string>',
    'ObjectACL' => 'private|public-read|public-read-write|authenticated-read|bucket-owner-read|bucket-owner-full-control|aws-exec-read',
    'OplocksEnabled' => true || false,
    'ReadOnly' => true || false,
    'RequesterPays' => true || false,
    'SMBACLEnabled' => true || false,
    'ValidUserList' => ['<string>', ...],
]);

Parameter Details

Members
AccessBasedEnumeration
Type: boolean

The files and folders on this share will only be visible to users with read access.

AdminUserList
Type: Array of strings

A list of users or groups in the Active Directory that have administrator rights to the file share. A group must be prefixed with the @ character. Acceptable formats include: DOMAIN\User1, user1, @group1, and @DOMAIN\group1. Can only be set if Authentication is set to ActiveDirectory.

AuditDestinationARN
Type: string

The Amazon Resource Name (ARN) of the storage used for audit logs.

CacheAttributes
Type: CacheAttributes structure

Specifies refresh cache information for the file share.

CaseSensitivity
Type: string

The case of an object name in an Amazon S3 bucket. For ClientSpecified, the client determines the case sensitivity. For CaseSensitive, the gateway determines the case sensitivity. The default value is ClientSpecified.

DefaultStorageClass
Type: string

The default storage class for objects put into an Amazon S3 bucket by the S3 File Gateway. The default value is S3_STANDARD. Optional.

Valid Values: S3_STANDARD | S3_INTELLIGENT_TIERING | S3_STANDARD_IA | S3_ONEZONE_IA

FileShareARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the SMB file share that you want to update.

FileShareName
Type: string

The name of the file share. Optional.

FileShareName must be set if an S3 prefix name is set in LocationARN, or if an access point or access point alias is used.

GuessMIMETypeEnabled
Type: boolean

A value that enables guessing of the MIME type for uploaded objects based on file extensions. Set this value to true to enable MIME type guessing, otherwise set to false. The default value is true.

Valid Values: true | false

InvalidUserList
Type: Array of strings

A list of users or groups in the Active Directory that are not allowed to access the file share. A group must be prefixed with the @ character. Acceptable formats include: DOMAIN\User1, user1, @group1, and @DOMAIN\group1. Can only be set if Authentication is set to ActiveDirectory.

KMSEncrypted
Type: boolean

Set to true to use Amazon S3 server-side encryption with your own KMS key, or false to use a key managed by Amazon S3. Optional.

Valid Values: true | false

KMSKey
Type: string

The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when KMSEncrypted is true. Optional.

NotificationPolicy
Type: string

The notification policy of the file share. SettlingTimeInSeconds controls the number of seconds to wait after the last point in time a client wrote to a file before generating an ObjectUploaded notification. Because clients can make many small writes to files, it's best to set this parameter for as long as possible to avoid generating multiple notifications for the same file in a small time period.

SettlingTimeInSeconds has no effect on the timing of the object uploading to Amazon S3, only the timing of the notification.

The following example sets NotificationPolicy on with SettlingTimeInSeconds set to 60.

{\"Upload\": {\"SettlingTimeInSeconds\": 60}}

The following example sets NotificationPolicy off.

{}

ObjectACL
Type: string

A value that sets the access control list (ACL) permission for objects in the S3 bucket that a S3 File Gateway puts objects into. The default value is private.

OplocksEnabled
Type: boolean

Specifies whether opportunistic locking is enabled for the SMB file share.

Enabling opportunistic locking on case-sensitive shares is not recommended for workloads that involve access to files with the same name in different case.

Valid Values: true | false

ReadOnly
Type: boolean

A value that sets the write status of a file share. Set this value to true to set write status to read-only, otherwise set to false.

Valid Values: true | false

RequesterPays
Type: boolean

A value that sets who pays the cost of the request and the cost associated with data download from the S3 bucket. If this value is set to true, the requester pays the costs; otherwise, the S3 bucket owner pays. However, the S3 bucket owner always pays the cost of storing data.

RequesterPays is a configuration for the S3 bucket that backs the file share, so make sure that the configuration on the file share is the same as the S3 bucket configuration.

Valid Values: true | false

SMBACLEnabled
Type: boolean

Set this value to true to enable access control list (ACL) on the SMB file share. Set it to false to map file and directory permissions to the POSIX permissions.

For more information, see Using Microsoft Windows ACLs to control access to an SMB file share in the Storage Gateway User Guide.

Valid Values: true | false

ValidUserList
Type: Array of strings

A list of users or groups in the Active Directory that are allowed to access the file share. A group must be prefixed with the @ character. Acceptable formats include: DOMAIN\User1, user1, @group1, and @DOMAIN\group1. Can only be set if Authentication is set to ActiveDirectory.

Result Syntax

[
    'FileShareARN' => '<string>',
]

Result Details

Members
FileShareARN
Type: string

The Amazon Resource Name (ARN) of the updated SMB file share.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

UpdateSMBFileShareVisibility

$result = $client->updateSMBFileShareVisibility([/* ... */]);
$promise = $client->updateSMBFileShareVisibilityAsync([/* ... */]);

Controls whether the shares on an S3 File Gateway are visible in a net view or browse list. The operation is only supported for S3 File Gateways.

Parameter Syntax

$result = $client->updateSMBFileShareVisibility([
    'FileSharesVisible' => true || false, // REQUIRED
    'GatewayARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
FileSharesVisible
Required: Yes
Type: boolean

The shares on this gateway appear when listing shares.

GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

UpdateSMBLocalGroups

$result = $client->updateSMBLocalGroups([/* ... */]);
$promise = $client->updateSMBLocalGroupsAsync([/* ... */]);

Updates the list of Active Directory users and groups that have special permissions for SMB file shares on the gateway.

Parameter Syntax

$result = $client->updateSMBLocalGroups([
    'GatewayARN' => '<string>', // REQUIRED
    'SMBLocalGroups' => [ // REQUIRED
        'GatewayAdmins' => ['<string>', ...],
    ],
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

SMBLocalGroups
Required: Yes
Type: SMBLocalGroups structure

A list of Active Directory users and groups that you want to grant special permissions for SMB file shares on the gateway.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

UpdateSMBSecurityStrategy

$result = $client->updateSMBSecurityStrategy([/* ... */]);
$promise = $client->updateSMBSecurityStrategyAsync([/* ... */]);

Updates the SMB security strategy on a file gateway. This action is only supported in file gateways.

This API is called Security level in the User Guide.

A higher security level can affect performance of the gateway.

Parameter Syntax

$result = $client->updateSMBSecurityStrategy([
    'GatewayARN' => '<string>', // REQUIRED
    'SMBSecurityStrategy' => 'ClientSpecified|MandatorySigning|MandatoryEncryption|MandatoryEncryptionNoAes128', // REQUIRED
]);

Parameter Details

Members
GatewayARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

SMBSecurityStrategy
Required: Yes
Type: string

Specifies the type of security strategy.

ClientSpecified: if you use this option, requests are established based on what is negotiated by the client. This option is recommended when you want to maximize compatibility across different clients in your environment. Supported only in S3 File Gateway.

MandatorySigning: if you use this option, file gateway only allows connections from SMBv2 or SMBv3 clients that have signing enabled. This option works with SMB clients on Microsoft Windows Vista, Windows Server 2008 or newer.

MandatoryEncryption: if you use this option, file gateway only allows connections from SMBv3 clients that have encryption enabled. This option is highly recommended for environments that handle sensitive data. This option works with SMB clients on Microsoft Windows 8, Windows Server 2012 or newer.

Result Syntax

[
    'GatewayARN' => '<string>',
]

Result Details

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

UpdateSnapshotSchedule

$result = $client->updateSnapshotSchedule([/* ... */]);
$promise = $client->updateSnapshotScheduleAsync([/* ... */]);

Updates a snapshot schedule configured for a gateway volume. This operation is only supported in the cached volume and stored volume gateway types.

The default snapshot schedule for volume is once every 24 hours, starting at the creation time of the volume. You can use this API to change the snapshot schedule configured for the volume.

In the request you must identify the gateway volume whose snapshot schedule you want to update, and the schedule information, including when you want the snapshot to begin on a day and the frequency (in hours) of snapshots.

Parameter Syntax

$result = $client->updateSnapshotSchedule([
    'Description' => '<string>',
    'RecurrenceInHours' => <integer>, // REQUIRED
    'StartAt' => <integer>, // REQUIRED
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
    'VolumeARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
Description
Type: string

Optional description of the snapshot that overwrites the existing description.

RecurrenceInHours
Required: Yes
Type: int

Frequency of snapshots. Specify the number of hours between snapshots.

StartAt
Required: Yes
Type: int

The hour of the day at which the snapshot schedule begins represented as hh, where hh is the hour (0 to 23). The hour of the day is in the time zone of the gateway.

Tags
Type: Array of Tag structures

A list of up to 50 tags that can be assigned to a snapshot. Each tag is a key-value pair.

Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and the maximum length for a tag's value is 256.

VolumeARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the volume. Use the ListVolumes operation to return a list of gateway volumes.

Result Syntax

[
    'VolumeARN' => '<string>',
]

Result Details

Members
VolumeARN
Type: string

The Amazon Resource Name (ARN) of the volume. Use the ListVolumes operation to return a list of gateway volumes.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To update a volume snapshot schedule

Updates a snapshot schedule configured for a gateway volume.

$result = $client->updateSnapshotSchedule([
    'Description' => 'Hourly snapshot',
    'RecurrenceInHours' => 1,
    'StartAt' => 0,
    'VolumeARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
]);

Result syntax:

[
    'VolumeARN' => 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
]

UpdateVTLDeviceType

$result = $client->updateVTLDeviceType([/* ... */]);
$promise = $client->updateVTLDeviceTypeAsync([/* ... */]);

Updates the type of medium changer in a tape gateway. When you activate a tape gateway, you select a medium changer type for the tape gateway. This operation enables you to select a different type of medium changer after a tape gateway is activated. This operation is only supported in the tape gateway type.

Parameter Syntax

$result = $client->updateVTLDeviceType([
    'DeviceType' => '<string>', // REQUIRED
    'VTLDeviceARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
DeviceType
Required: Yes
Type: string

The type of medium changer you want to select.

Valid Values: STK-L700 | AWS-Gateway-VTL | IBM-03584L32-0402

VTLDeviceARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the medium changer you want to select.

Result Syntax

[
    'VTLDeviceARN' => '<string>',
]

Result Details

Members
VTLDeviceARN
Type: string

The Amazon Resource Name (ARN) of the medium changer you have selected.

Errors

InvalidGatewayRequestException:

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

InternalServerError:

An internal server error has occurred during the request. For more information, see the error and message fields.

Examples

Example 1: To update a VTL device type

Updates the type of medium changer in a gateway-VTL after a gateway-VTL is activated.

$result = $client->updateVTLDeviceType([
    'DeviceType' => 'Medium Changer',
    'VTLDeviceARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B/device/AMZN_SGW-1FAD4876_MEDIACHANGER_00001',
]);

Result syntax:

[
    'VTLDeviceARN' => 'arn:aws:storagegateway:us-east-1:999999999999:gateway/sgw-12A3456B/device/AMZN_SGW-1FAD4876_MEDIACHANGER_00001',
]

Shapes

AutomaticTapeCreationPolicyInfo

Description

Information about the gateway's automatic tape creation policies, including the automatic tape creation rules and the gateway that is using the policies.

Members
AutomaticTapeCreationRules
Type: Array of AutomaticTapeCreationRule structures

An automatic tape creation policy consists of a list of automatic tape creation rules. This returns the rules that determine when and how to automatically create new tapes.

GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

AutomaticTapeCreationRule

Description

An automatic tape creation policy consists of automatic tape creation rules where each rule defines when and how to create new tapes. For more information about automatic tape creation, see Creating Tapes Automatically.

Members
MinimumNumTapes
Required: Yes
Type: int

The minimum number of available virtual tapes that the gateway maintains at all times. If the number of tapes on the gateway goes below this value, the gateway creates as many new tapes as are needed to have MinimumNumTapes on the gateway. For more information about automatic tape creation, see Creating Tapes Automatically.

PoolId
Required: Yes
Type: string

The ID of the pool that you want to add your tape to for archiving. The tape in this pool is archived in the Amazon S3 storage class that is associated with the pool. When you use your backup application to eject the tape, the tape is archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive) that corresponds to the pool.

TapeBarcodePrefix
Required: Yes
Type: string

A prefix that you append to the barcode of the virtual tape that you are creating. This prefix makes the barcode unique.

The prefix must be 1-4 characters in length and must be one of the uppercase letters from A to Z.

TapeSizeInBytes
Required: Yes
Type: long (int|float)

The size, in bytes, of the virtual tape capacity.

Worm
Type: boolean

Set to true to indicate that tapes are to be archived as write-once-read-many (WORM). Set to false when WORM is not enabled for tapes.

BandwidthRateLimitInterval

Description

Describes a bandwidth rate limit interval for a gateway. A bandwidth rate limit schedule consists of one or more bandwidth rate limit intervals. A bandwidth rate limit interval defines a period of time on one or more days of the week, during which bandwidth rate limits are specified for uploading, downloading, or both.

Members
AverageDownloadRateLimitInBitsPerSec
Type: long (int|float)

The average download rate limit component of the bandwidth rate limit interval, in bits per second. This field does not appear in the response if the download rate limit is not set.

AverageUploadRateLimitInBitsPerSec
Type: long (int|float)

The average upload rate limit component of the bandwidth rate limit interval, in bits per second. This field does not appear in the response if the upload rate limit is not set.

For Tape Gateway and Volume Gateway, the minimum value is 51200.

For S3 File Gateway and FSx File Gateway, the minimum value is 104857600.

DaysOfWeek
Required: Yes
Type: Array of ints

The days of the week component of the bandwidth rate limit interval, represented as ordinal numbers from 0 to 6, where 0 represents Sunday and 6 represents Saturday.

EndHourOfDay
Required: Yes
Type: int

The hour of the day to end the bandwidth rate limit interval.

EndMinuteOfHour
Required: Yes
Type: int

The minute of the hour to end the bandwidth rate limit interval.

The bandwidth rate limit interval ends at the end of the minute. To end an interval at the end of an hour, use the value 59.

StartHourOfDay
Required: Yes
Type: int

The hour of the day to start the bandwidth rate limit interval.

StartMinuteOfHour
Required: Yes
Type: int

The minute of the hour to start the bandwidth rate limit interval. The interval begins at the start of that minute. To begin an interval exactly at the start of the hour, use the value 0.

CacheAttributes

Description

The refresh cache information for the file share or FSx file systems.

Members
CacheStaleTimeoutInSeconds
Type: int

Refreshes a file share's cache by using Time To Live (TTL). TTL is the length of time since the last refresh after which access to the directory would cause the file gateway to first refresh that directory's contents from the Amazon S3 bucket or Amazon FSx file system. The TTL duration is in seconds.

Valid Values:0, 300 to 2,592,000 seconds (5 minutes to 30 days)

CachediSCSIVolume

Description

Describes an iSCSI cached volume.

Members
CreatedDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date the volume was created. Volumes created prior to March 28, 2017 don’t have this timestamp.

KMSKey
Type: string

The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when KMSEncrypted is true. Optional.

SourceSnapshotId
Type: string

If the cached volume was created from a snapshot, this field contains the snapshot ID used, e.g., snap-78e22663. Otherwise, this field is not included.

TargetName
Type: string

The name of the iSCSI target used by an initiator to connect to a volume and used as a suffix for the target ARN. For example, specifying TargetName as myvolume results in the target ARN of arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume. The target name must be unique across all volumes on a gateway.

If you don't specify a value, Storage Gateway uses the value that was previously used for this volume as the new target name.

VolumeARN
Type: string

The Amazon Resource Name (ARN) of the storage volume.

VolumeAttachmentStatus
Type: string

A value that indicates whether a storage volume is attached to or detached from a gateway. For more information, see Moving your volumes to a different gateway.

VolumeId
Type: string

The unique identifier of the volume, e.g., vol-AE4B946D.

VolumeProgress
Type: double

Represents the percentage complete if the volume is restoring or bootstrapping that represents the percent of data transferred. This field does not appear in the response if the cached volume is not restoring or bootstrapping.

VolumeSizeInBytes
Type: long (int|float)

The size, in bytes, of the volume capacity.

VolumeStatus
Type: string

One of the VolumeStatus values that indicates the state of the storage volume.

VolumeType
Type: string

One of the VolumeType enumeration values that describes the type of the volume.

VolumeUsedInBytes
Type: long (int|float)

The size of the data stored on the volume in bytes. This value is calculated based on the number of blocks that are touched, instead of the actual amount of data written. This value can be useful for sequential write patterns but less accurate for random write patterns. VolumeUsedInBytes is different from the compressed size of the volume, which is the value that is used to calculate your bill.

This value is not available for volumes created prior to May 13, 2015, until you store data on the volume.

If you use a delete tool that overwrites the data on your volume with random data, your usage will not be reduced. This is because the random data is not compressible. If you want to reduce the amount of billed storage on your volume, we recommend overwriting your files with zeros to compress the data to a negligible amount of actual storage.

VolumeiSCSIAttributes
Type: VolumeiSCSIAttributes structure

An VolumeiSCSIAttributes object that represents a collection of iSCSI attributes for one stored volume.

ChapInfo

Description

Describes Challenge-Handshake Authentication Protocol (CHAP) information that supports authentication between your gateway and iSCSI initiators.

Members
InitiatorName
Type: string

The iSCSI initiator that connects to the target.

SecretToAuthenticateInitiator
Type: string

The secret key that the initiator (for example, the Windows client) must provide to participate in mutual CHAP with the target.

SecretToAuthenticateTarget
Type: string

The secret key that the target must provide to participate in mutual CHAP with the initiator (e.g., Windows client).

TargetARN
Type: string

The Amazon Resource Name (ARN) of the volume.

Valid Values: 50 to 500 lowercase letters, numbers, periods (.), and hyphens (-).

DeviceiSCSIAttributes

Description

Lists iSCSI information about a VTL device.

Members
ChapEnabled
Type: boolean

Indicates whether mutual CHAP is enabled for the iSCSI target.

NetworkInterfaceId
Type: string

The network interface identifier of the VTL device.

NetworkInterfacePort
Type: int

The port used to communicate with iSCSI VTL device targets.

TargetARN
Type: string

Specifies the unique Amazon Resource Name (ARN) that encodes the iSCSI qualified name(iqn) of a tape drive or media changer target.

Disk

Description

Represents a gateway's local disk.

Members
DiskAllocationResource
Type: string

The iSCSI qualified name (IQN) that is defined for a disk. This field is not included in the response if the local disk is not defined as an iSCSI target. The format of this field is targetIqn::LUNNumber::region-volumeId.

DiskAllocationType
Type: string

One of the DiskAllocationType enumeration values that identifies how a local disk is used.

Valid Values: UPLOAD_BUFFER | CACHE_STORAGE

DiskAttributeList
Type: Array of strings

A list of values that represents attributes of a local disk.

DiskId
Type: string

The unique device ID or other distinguishing data that identifies a local disk.

DiskNode
Type: string

The device node of a local disk as assigned by the virtualization environment.

DiskPath
Type: string

The path of a local disk in the gateway virtual machine (VM).

DiskSizeInBytes
Type: long (int|float)

The local disk size in bytes.

DiskStatus
Type: string

A value that represents the status of a local disk.

EndpointNetworkConfiguration

Description

Specifies network configuration information for the gateway associated with the Amazon FSx file system.

Members
IpAddresses
Type: Array of strings

A list of gateway IP addresses on which the associated Amazon FSx file system is available.

If multiple file systems are associated with this gateway, this field is required.

FileShareInfo

Description

Describes a file share. Only supported S3 File Gateway.

Members
FileShareARN
Type: string

The Amazon Resource Name (ARN) of the file share.

FileShareId
Type: string

The ID of the file share.

FileShareStatus
Type: string

The status of the file share.

Valid Values: CREATING | UPDATING | AVAILABLE | DELETING

FileShareType
Type: string

The type of the file share.

GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

FileSystemAssociationInfo

Description

Describes the object returned by DescribeFileSystemAssociations that describes a created file system association.

Members
AuditDestinationARN
Type: string

The Amazon Resource Name (ARN) of the storage used for the audit logs.

CacheAttributes
Type: CacheAttributes structure

The refresh cache information for the file share or FSx file systems.

EndpointNetworkConfiguration

Specifies network configuration information for the gateway associated with the Amazon FSx file system.

If multiple file systems are associated with this gateway, this parameter's IpAddresses field is required.

FileSystemAssociationARN
Type: string

The Amazon Resource Name (ARN) of the file system association.

FileSystemAssociationStatus
Type: string

The status of the file system association. Valid Values: AVAILABLE | CREATING | DELETING | FORCE_DELETING | UPDATING | ERROR

FileSystemAssociationStatusDetails
Type: Array of FileSystemAssociationStatusDetail structures

An array containing the FileSystemAssociationStatusDetail data type, which provides detailed information on file system association status.

GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

LocationARN
Type: string

The ARN of the backend Amazon FSx file system used for storing file data. For information, see FileSystem in the Amazon FSx API Reference.

Tags
Type: Array of Tag structures

A list of up to 50 tags assigned to the SMB file share, sorted alphabetically by key name. Each tag is a key-value pair.

FileSystemAssociationStatusDetail

Description

Detailed information on file system association status.

Members
ErrorCode
Type: string

The error code for a given file system association status.

FileSystemAssociationSummary

Description

Gets the summary returned by ListFileSystemAssociation, which is a summary of a created file system association.

Members
FileSystemAssociationARN
Type: string

The Amazon Resource Name (ARN) of the file system association.

FileSystemAssociationId
Type: string

The ID of the file system association.

FileSystemAssociationStatus
Type: string

The status of the file share. Valid Values: AVAILABLE | CREATING | DELETING | FORCE_DELETING | UPDATING | ERROR

GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

GatewayInfo

Description

Describes a gateway object.

Members
DeprecationDate
Type: string

Date after which this gateway will not receive software updates for new features and bug fixes.

Ec2InstanceId
Type: string

The ID of the Amazon EC2 instance that was used to launch the gateway.

Ec2InstanceRegion
Type: string

The Amazon Web Services Region where the Amazon EC2 instance is located.

GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

GatewayId
Type: string

The unique identifier assigned to your gateway during activation. This ID becomes part of the gateway Amazon Resource Name (ARN), which you use as input for other operations.

GatewayName
Type: string

The name of the gateway.

GatewayOperationalState
Type: string

The state of the gateway.

Valid Values: DISABLED | ACTIVE

GatewayType
Type: string

The type of the gateway.

HostEnvironment
Type: string

The type of hardware or software platform on which the gateway is running.

Tape Gateway is no longer available on Snow Family devices.

HostEnvironmentId
Type: string

A unique identifier for the specific instance of the host platform running the gateway. This value is only available for certain host environments, and its format depends on the host environment type.

SoftwareVersion
Type: string

The version number of the software running on the gateway appliance.

InternalServerError

Description

An internal server error has occurred during the request. For more information, see the error and message fields.

Members
error
Type: StorageGatewayError structure

A StorageGatewayError that provides more information about the cause of the error.

message
Type: string

A human-readable message describing the error that occurred.

InvalidGatewayRequestException

Description

An exception occurred because an invalid gateway request was issued to the service. For more information, see the error and message fields.

Members
error
Type: StorageGatewayError structure

A StorageGatewayError that provides more detail about the cause of the error.

message
Type: string

A human-readable message describing the error that occurred.

NFSFileShareDefaults

Description

Describes Network File System (NFS) file share default values. Files and folders stored as Amazon S3 objects in S3 buckets don't, by default, have Unix file permissions assigned to them. Upon discovery in an S3 bucket by Storage Gateway, the S3 objects that represent files and folders are assigned these default Unix permissions. This operation is only supported for S3 File Gateways.

Members
DirectoryMode
Type: string

The Unix directory mode in the form "nnnn". For example, 0666 represents the default access mode for all directories inside the file share. The default value is 0777.

FileMode
Type: string

The Unix file mode in the form "nnnn". For example, 0666 represents the default file mode inside the file share. The default value is 0666.

GroupId
Type: long (int|float)

The default group ID for the file share (unless the files have another group ID specified). The default value is nfsnobody.

OwnerId
Type: long (int|float)

The default owner ID for files in the file share (unless the files have another owner ID specified). The default value is nfsnobody.

NFSFileShareInfo

Description

The Unix file permissions and ownership information assigned, by default, to native S3 objects when an S3 File Gateway discovers them in S3 buckets. This operation is only supported in S3 File Gateways.

Members
AuditDestinationARN
Type: string

The Amazon Resource Name (ARN) of the storage used for audit logs.

BucketRegion
Type: string

Specifies the Region of the S3 bucket where the NFS file share stores files.

This parameter is required for NFS file shares that connect to Amazon S3 through a VPC endpoint, a VPC access point, or an access point alias that points to a VPC access point.

CacheAttributes
Type: CacheAttributes structure

Refresh cache information for the file share.

ClientList
Type: Array of strings

The list of clients that are allowed to access the S3 File Gateway. The list must contain either valid IP addresses or valid CIDR blocks.

DefaultStorageClass
Type: string

The default storage class for objects put into an Amazon S3 bucket by the S3 File Gateway. The default value is S3_STANDARD. Optional.

Valid Values: S3_STANDARD | S3_INTELLIGENT_TIERING | S3_STANDARD_IA | S3_ONEZONE_IA

FileShareARN
Type: string

The Amazon Resource Name (ARN) of the file share.

FileShareId
Type: string

The ID of the file share.

FileShareName
Type: string

The name of the file share. Optional.

FileShareName must be set if an S3 prefix name is set in LocationARN, or if an access point or access point alias is used.

FileShareStatus
Type: string

The status of the file share.

Valid Values: CREATING | UPDATING | AVAILABLE | DELETING

GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

GuessMIMETypeEnabled
Type: boolean

A value that enables guessing of the MIME type for uploaded objects based on file extensions. Set this value to true to enable MIME type guessing, otherwise set to false. The default value is true.

Valid Values: true | false

KMSEncrypted
Type: boolean

Set to true to use Amazon S3 server-side encryption with your own KMS key, or false to use a key managed by Amazon S3. Optional.

Valid Values: true | false

KMSKey
Type: string

The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when KMSEncrypted is true. Optional.

LocationARN
Type: string

A custom ARN for the backend storage used for storing data for file shares. It includes a resource ARN with an optional prefix concatenation. The prefix must end with a forward slash (/).

You can specify LocationARN as a bucket ARN, access point ARN or access point alias, as shown in the following examples.

Bucket ARN:

arn:aws:s3:::my-bucket/prefix/

Access point ARN:

arn:aws:s3:region:account-id:accesspoint/access-point-name/prefix/

If you specify an access point, the bucket policy must be configured to delegate access control to the access point. For information, see Delegating access control to access points in the Amazon S3 User Guide.

Access point alias:

test-ap-ab123cdef4gehijklmn5opqrstuvuse1a-s3alias

NFSFileShareDefaults
Type: NFSFileShareDefaults structure

Describes Network File System (NFS) file share default values. Files and folders stored as Amazon S3 objects in S3 buckets don't, by default, have Unix file permissions assigned to them. Upon discovery in an S3 bucket by Storage Gateway, the S3 objects that represent files and folders are assigned these default Unix permissions. This operation is only supported for S3 File Gateways.

NotificationPolicy
Type: string

The notification policy of the file share. SettlingTimeInSeconds controls the number of seconds to wait after the last point in time a client wrote to a file before generating an ObjectUploaded notification. Because clients can make many small writes to files, it's best to set this parameter for as long as possible to avoid generating multiple notifications for the same file in a small time period.

SettlingTimeInSeconds has no effect on the timing of the object uploading to Amazon S3, only the timing of the notification.

The following example sets NotificationPolicy on with SettlingTimeInSeconds set to 60.

{\"Upload\": {\"SettlingTimeInSeconds\": 60}}

The following example sets NotificationPolicy off.

{}

ObjectACL
Type: string

A value that sets the access control list (ACL) permission for objects in the S3 bucket that an S3 File Gateway puts objects into. The default value is private.

Path
Type: string

The file share path used by the NFS client to identify the mount point.

ReadOnly
Type: boolean

A value that sets the write status of a file share. Set this value to true to set the write status to read-only, otherwise set to false.

Valid Values: true | false

RequesterPays
Type: boolean

A value that sets who pays the cost of the request and the cost associated with data download from the S3 bucket. If this value is set to true, the requester pays the costs; otherwise, the S3 bucket owner pays. However, the S3 bucket owner always pays the cost of storing data.

RequesterPays is a configuration for the S3 bucket that backs the file share, so make sure that the configuration on the file share is the same as the S3 bucket configuration.

Valid Values: true | false

Role
Type: string

The ARN of the IAM role that an S3 File Gateway assumes when it accesses the underlying storage.

Squash
Type: string

The user mapped to anonymous user. Valid options are the following:

  • RootSquash: Only root is mapped to anonymous user.

  • NoSquash: No one is mapped to anonymous user.

  • AllSquash: Everyone is mapped to anonymous user.

Tags
Type: Array of Tag structures

A list of up to 50 tags assigned to the NFS file share, sorted alphabetically by key name. Each tag is a key-value pair. For a gateway with more than 10 tags assigned, you can view all tags using the ListTagsForResource API operation.

VPCEndpointDNSName
Type: string

Specifies the DNS name for the VPC endpoint that the NFS file share uses to connect to Amazon S3.

This parameter is required for NFS file shares that connect to Amazon S3 through a VPC endpoint, a VPC access point, or an access point alias that points to a VPC access point.

NetworkInterface

Description

Describes a gateway's network interface.

Members
Ipv4Address
Type: string

The Internet Protocol version 4 (IPv4) address of the interface.

Ipv6Address
Type: string

The Internet Protocol version 6 (IPv6) address of the interface. Currently not supported.

MacAddress
Type: string

The Media Access Control (MAC) address of the interface.

This is currently unsupported and will not be returned in output.

PoolInfo

Description

Describes a custom tape pool.

Members
PoolARN
Type: string

The Amazon Resource Name (ARN) of the custom tape pool. Use the ListTapePools operation to return a list of custom tape pools for your account and Amazon Web Services Region.

PoolName
Type: string

The name of the custom tape pool. PoolName can use all ASCII characters, except '/' and '\'.

PoolStatus
Type: string

Status of the custom tape pool. Pool can be ACTIVE or DELETED.

RetentionLockTimeInDays
Type: int

Tape retention lock time is set in days. Tape retention lock can be enabled for up to 100 years (36,500 days).

RetentionLockType
Type: string

Tape retention lock type, which can be configured in two modes. When configured in governance mode, Amazon Web Services accounts with specific IAM permissions are authorized to remove the tape retention lock from archived virtual tapes. When configured in compliance mode, the tape retention lock cannot be removed by any user, including the root Amazon Web Services account.

StorageClass
Type: string

The storage class that is associated with the custom pool. When you use your backup application to eject the tape, the tape is archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive) that corresponds to the pool.

SMBFileShareInfo

Description

The Windows file permissions and ownership information assigned, by default, to native S3 objects when S3 File Gateway discovers them in S3 buckets. This operation is only supported for S3 File Gateways.

Members
AccessBasedEnumeration
Type: boolean

Indicates whether AccessBasedEnumeration is enabled.

AdminUserList
Type: Array of strings

A list of users or groups in the Active Directory that have administrator rights to the file share. A group must be prefixed with the @ character. Acceptable formats include: DOMAIN\User1, user1, @group1, and @DOMAIN\group1. Can only be set if Authentication is set to ActiveDirectory.

AuditDestinationARN
Type: string

The Amazon Resource Name (ARN) of the storage used for audit logs.

Authentication
Type: string

The authentication method of the file share. The default is ActiveDirectory.

Valid Values: ActiveDirectory | GuestAccess

BucketRegion
Type: string

Specifies the Region of the S3 bucket where the SMB file share stores files.

This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC access point, or an access point alias that points to a VPC access point.

CacheAttributes
Type: CacheAttributes structure

Refresh cache information for the file share.

CaseSensitivity
Type: string

The case of an object name in an Amazon S3 bucket. For ClientSpecified, the client determines the case sensitivity. For CaseSensitive, the gateway determines the case sensitivity. The default value is ClientSpecified.

DefaultStorageClass
Type: string

The default storage class for objects put into an Amazon S3 bucket by the S3 File Gateway. The default value is S3_STANDARD. Optional.

Valid Values: S3_STANDARD | S3_INTELLIGENT_TIERING | S3_STANDARD_IA | S3_ONEZONE_IA

FileShareARN
Type: string

The Amazon Resource Name (ARN) of the file share.

FileShareId
Type: string

The ID of the file share.

FileShareName
Type: string

The name of the file share. Optional.

FileShareName must be set if an S3 prefix name is set in LocationARN, or if an access point or access point alias is used.

FileShareStatus
Type: string

The status of the file share.

Valid Values: CREATING | UPDATING | AVAILABLE | DELETING

GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

GuessMIMETypeEnabled
Type: boolean

A value that enables guessing of the MIME type for uploaded objects based on file extensions. Set this value to true to enable MIME type guessing, otherwise set to false. The default value is true.

Valid Values: true | false

InvalidUserList
Type: Array of strings

A list of users or groups in the Active Directory that are not allowed to access the file share. A group must be prefixed with the @ character. Acceptable formats include: DOMAIN\User1, user1, @group1, and @DOMAIN\group1. Can only be set if Authentication is set to ActiveDirectory.

KMSEncrypted
Type: boolean

Set to true to use Amazon S3 server-side encryption with your own KMS key, or false to use a key managed by Amazon S3. Optional.

Valid Values: true | false

KMSKey
Type: string

The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when KMSEncrypted is true. Optional.

LocationARN
Type: string

A custom ARN for the backend storage used for storing data for file shares. It includes a resource ARN with an optional prefix concatenation. The prefix must end with a forward slash (/).

You can specify LocationARN as a bucket ARN, access point ARN or access point alias, as shown in the following examples.

Bucket ARN:

arn:aws:s3:::my-bucket/prefix/

Access point ARN:

arn:aws:s3:region:account-id:accesspoint/access-point-name/prefix/

If you specify an access point, the bucket policy must be configured to delegate access control to the access point. For information, see Delegating access control to access points in the Amazon S3 User Guide.

Access point alias:

test-ap-ab123cdef4gehijklmn5opqrstuvuse1a-s3alias

NotificationPolicy
Type: string

The notification policy of the file share. SettlingTimeInSeconds controls the number of seconds to wait after the last point in time a client wrote to a file before generating an ObjectUploaded notification. Because clients can make many small writes to files, it's best to set this parameter for as long as possible to avoid generating multiple notifications for the same file in a small time period.

SettlingTimeInSeconds has no effect on the timing of the object uploading to Amazon S3, only the timing of the notification.

The following example sets NotificationPolicy on with SettlingTimeInSeconds set to 60.

{\"Upload\": {\"SettlingTimeInSeconds\": 60}}

The following example sets NotificationPolicy off.

{}

ObjectACL
Type: string

A value that sets the access control list (ACL) permission for objects in the S3 bucket that an S3 File Gateway puts objects into. The default value is private.

OplocksEnabled
Type: boolean

Specifies whether opportunistic locking is enabled for the SMB file share.

Enabling opportunistic locking on case-sensitive shares is not recommended for workloads that involve access to files with the same name in different case.

Valid Values: true | false

Path
Type: string

The file share path used by the SMB client to identify the mount point.

ReadOnly
Type: boolean

A value that sets the write status of a file share. Set this value to true to set the write status to read-only, otherwise set to false.

Valid Values: true | false

RequesterPays
Type: boolean

A value that sets who pays the cost of the request and the cost associated with data download from the S3 bucket. If this value is set to true, the requester pays the costs; otherwise, the S3 bucket owner pays. However, the S3 bucket owner always pays the cost of storing data.

RequesterPays is a configuration for the S3 bucket that backs the file share, so make sure that the configuration on the file share is the same as the S3 bucket configuration.

Valid Values: true | false

Role
Type: string

The ARN of the IAM role that an S3 File Gateway assumes when it accesses the underlying storage.

SMBACLEnabled
Type: boolean

If this value is set to true, it indicates that access control list (ACL) is enabled on the SMB file share. If it is set to false, it indicates that file and directory permissions are mapped to the POSIX permission.

For more information, see Using Microsoft Windows ACLs to control access to an SMB file share in the Storage Gateway User Guide.

Tags
Type: Array of Tag structures

A list of up to 50 tags assigned to the SMB file share, sorted alphabetically by key name. Each tag is a key-value pair. For a gateway with more than 10 tags assigned, you can view all tags using the ListTagsForResource API operation.

VPCEndpointDNSName
Type: string

Specifies the DNS name for the VPC endpoint that the SMB file share uses to connect to Amazon S3.

This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC access point, or an access point alias that points to a VPC access point.

ValidUserList
Type: Array of strings

A list of users or groups in the Active Directory that are allowed to access the file share. A group must be prefixed with the @ character. Acceptable formats include: DOMAIN\User1, user1, @group1, and @DOMAIN\group1. Can only be set if Authentication is set to ActiveDirectory.

SMBLocalGroups

Description

A list of Active Directory users and groups that have special permissions for SMB file shares on the gateway.

Members
GatewayAdmins
Type: Array of strings

A list of Active Directory users and groups that have local Gateway Admin permissions. Acceptable formats include: DOMAIN\User1, user1, DOMAIN\group1, and group1.

Gateway Admins can use the Shared Folders Microsoft Management Console snap-in to force-close files that are open and locked.

ServiceUnavailableError

Description

An internal server error has occurred because the service is unavailable. For more information, see the error and message fields.

Members
error
Type: StorageGatewayError structure

A StorageGatewayError that provides more information about the cause of the error.

message
Type: string

A human-readable message describing the error that occurred.

StorageGatewayError

Description

Provides additional information about an error that was returned by the service. See the errorCode and errorDetails members for more information about the error.

Members
errorCode
Type: string

Additional information about the error.

errorDetails
Type: Associative array of custom strings keys (string) to strings

Human-readable text that provides detail about the error that occurred.

StorediSCSIVolume

Description

Describes an iSCSI stored volume.

Members
CreatedDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date the volume was created. Volumes created prior to March 28, 2017 don’t have this timestamp.

KMSKey
Type: string

The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when KMSEncrypted is true. Optional.

PreservedExistingData
Type: boolean

Indicates if when the stored volume was created, existing data on the underlying local disk was preserved.

Valid Values: true | false

SourceSnapshotId
Type: string

If the stored volume was created from a snapshot, this field contains the snapshot ID used, e.g. snap-78e22663. Otherwise, this field is not included.

TargetName
Type: string

The name of the iSCSI target used by an initiator to connect to a volume and used as a suffix for the target ARN. For example, specifying TargetName as myvolume results in the target ARN of arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/target/iqn.1997-05.com.amazon:myvolume. The target name must be unique across all volumes on a gateway.

If you don't specify a value, Storage Gateway uses the value that was previously used for this volume as the new target name.

VolumeARN
Type: string

The Amazon Resource Name (ARN) of the storage volume.

VolumeAttachmentStatus
Type: string

A value that indicates whether a storage volume is attached to, detached from, or is in the process of detaching from a gateway. For more information, see Moving your volumes to a different gateway.

VolumeDiskId
Type: string

The ID of the local disk that was specified in the CreateStorediSCSIVolume operation.

VolumeId
Type: string

The unique identifier of the volume, e.g., vol-AE4B946D.

VolumeProgress
Type: double

Represents the percentage complete if the volume is restoring or bootstrapping that represents the percent of data transferred. This field does not appear in the response if the stored volume is not restoring or bootstrapping.

VolumeSizeInBytes
Type: long (int|float)

The size of the volume in bytes.

VolumeStatus
Type: string

One of the VolumeStatus values that indicates the state of the storage volume.

VolumeType
Type: string

One of the VolumeType enumeration values describing the type of the volume.

VolumeUsedInBytes
Type: long (int|float)

The size of the data stored on the volume in bytes. This value is calculated based on the number of blocks that are touched, instead of the actual amount of data written. This value can be useful for sequential write patterns but less accurate for random write patterns. VolumeUsedInBytes is different from the compressed size of the volume, which is the value that is used to calculate your bill.

This value is not available for volumes created prior to May 13, 2015, until you store data on the volume.

VolumeiSCSIAttributes
Type: VolumeiSCSIAttributes structure

An VolumeiSCSIAttributes object that represents a collection of iSCSI attributes for one stored volume.

Tag

Description

A key-value pair that helps you manage, filter, and search for your resource. Allowed characters: letters, white space, and numbers, representable in UTF-8, and the following characters: + - = . _ : /.

Members
Key
Required: Yes
Type: string

Tag key. The key can't start with aws:.

Value
Required: Yes
Type: string

Value of the tag key.

Tape

Description

Describes a virtual tape object.

Members
KMSKey
Type: string

The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when KMSEncrypted is true. Optional.

PoolEntryDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date that the tape enters a custom tape pool.

PoolId
Type: string

The ID of the pool that contains tapes that will be archived. The tapes in this pool are archived in the S3 storage class that is associated with the pool. When you use your backup application to eject the tape, the tape is archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive) that corresponds to the pool.

Progress
Type: double

For archiving virtual tapes, indicates how much data remains to be uploaded before archiving is complete.

Range: 0 (not started) to 100 (complete).

RetentionStartDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date that the tape is first archived with tape retention lock enabled.

TapeARN
Type: string

The Amazon Resource Name (ARN) of the virtual tape.

TapeBarcode
Type: string

The barcode that identifies a specific virtual tape.

TapeCreatedDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date the virtual tape was created.

TapeSizeInBytes
Type: long (int|float)

The size, in bytes, of the virtual tape capacity.

TapeStatus
Type: string

The current state of the virtual tape.

TapeUsedInBytes
Type: long (int|float)

The size, in bytes, of data stored on the virtual tape.

This value is not available for tapes created prior to May 13, 2015.

VTLDevice
Type: string

The virtual tape library (VTL) device that the virtual tape is associated with.

Worm
Type: boolean

If the tape is archived as write-once-read-many (WORM), this value is true.

TapeArchive

Description

Represents a virtual tape that is archived in the virtual tape shelf (VTS).

Members
CompletionTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time that the archiving of the virtual tape was completed.

The default timestamp format is in the ISO8601 extended YYYY-MM-DD'T'HH:MM:SS'Z' format.

KMSKey
Type: string

The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when KMSEncrypted is true. Optional.

PoolEntryDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time that the tape entered the custom tape pool.

The default timestamp format is in the ISO8601 extended YYYY-MM-DD'T'HH:MM:SS'Z' format.

PoolId
Type: string

The ID of the pool that was used to archive the tape. The tapes in this pool are archived in the S3 storage class that is associated with the pool.

RetentionStartDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

If the archived tape is subject to tape retention lock, the date that the archived tape started being retained.

RetrievedTo
Type: string

The Amazon Resource Name (ARN) of the tape gateway that the virtual tape is being retrieved to.

The virtual tape is retrieved from the virtual tape shelf (VTS).

TapeARN
Type: string

The Amazon Resource Name (ARN) of an archived virtual tape.

TapeBarcode
Type: string

The barcode that identifies the archived virtual tape.

TapeCreatedDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date the virtual tape was created.

TapeSizeInBytes
Type: long (int|float)

The size, in bytes, of the archived virtual tape.

TapeStatus
Type: string

The current state of the archived virtual tape.

TapeUsedInBytes
Type: long (int|float)

The size, in bytes, of data stored on the virtual tape.

This value is not available for tapes created prior to May 13, 2015.

Worm
Type: boolean

Set to true if the archived tape is stored as write-once-read-many (WORM).

TapeInfo

Description

Describes a virtual tape.

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

PoolEntryDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date that the tape entered the custom tape pool with tape retention lock enabled.

PoolId
Type: string

The ID of the pool that you want to add your tape to for archiving. The tape in this pool is archived in the S3 storage class that is associated with the pool. When you use your backup application to eject the tape, the tape is archived directly into the storage class (S3 Glacier or S3 Glacier Deep Archive) that corresponds to the pool.

RetentionStartDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date that the tape became subject to tape retention lock.

TapeARN
Type: string

The Amazon Resource Name (ARN) of a virtual tape.

TapeBarcode
Type: string

The barcode that identifies a specific virtual tape.

TapeSizeInBytes
Type: long (int|float)

The size, in bytes, of a virtual tape.

TapeStatus
Type: string

The status of the tape.

TapeRecoveryPointInfo

Description

Describes a recovery point.

Members
TapeARN
Type: string

The Amazon Resource Name (ARN) of the virtual tape.

TapeRecoveryPointTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the point-in-time view of the virtual tape was replicated for later recovery.

The default timestamp format of the tape recovery point time is in the ISO8601 extended YYYY-MM-DD'T'HH:MM:SS'Z' format.

TapeSizeInBytes
Type: long (int|float)

The size, in bytes, of the virtual tapes to recover.

TapeStatus
Type: string

The status of the virtual tapes.

VTLDevice

Description

Represents a device object associated with a tape gateway.

Members
DeviceiSCSIAttributes
Type: DeviceiSCSIAttributes structure

A list of iSCSI information about a VTL device.

VTLDeviceARN
Type: string

Specifies the unique Amazon Resource Name (ARN) of the device (tape drive or media changer).

VTLDeviceProductIdentifier
Type: string

Specifies the model number of device that the VTL device emulates.

VTLDeviceType
Type: string

Specifies the type of device that the VTL device emulates.

VTLDeviceVendor
Type: string

Specifies the vendor of the device that the VTL device object emulates.

VolumeInfo

Description

Describes a storage volume object.

Members
GatewayARN
Type: string

The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and Amazon Web Services Region.

GatewayId
Type: string

The unique identifier assigned to your gateway during activation. This ID becomes part of the gateway Amazon Resource Name (ARN), which you use as input for other operations.

Valid Values: 50 to 500 lowercase letters, numbers, periods (.), and hyphens (-).

VolumeARN
Type: string

The Amazon Resource Name (ARN) for the storage volume. For example, the following is a valid ARN:

arn:aws:storagegateway:us-east-2:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB

Valid Values: 50 to 500 lowercase letters, numbers, periods (.), and hyphens (-).

VolumeAttachmentStatus
Type: string

One of the VolumeStatus values that indicates the state of the storage volume.

VolumeId
Type: string

The unique identifier assigned to the volume. This ID becomes part of the volume Amazon Resource Name (ARN), which you use as input for other operations.

Valid Values: 50 to 500 lowercase letters, numbers, periods (.), and hyphens (-).

VolumeSizeInBytes
Type: long (int|float)

The size of the volume in bytes.

Valid Values: 50 to 500 lowercase letters, numbers, periods (.), and hyphens (-).

VolumeType
Type: string

One of the VolumeType enumeration values describing the type of the volume.

VolumeRecoveryPointInfo

Description

Describes a storage volume recovery point object.

Members
VolumeARN
Type: string

The Amazon Resource Name (ARN) of the volume target.

VolumeRecoveryPointTime
Type: string

The time the recovery point was taken.

VolumeSizeInBytes
Type: long (int|float)

The size of the volume in bytes.

VolumeUsageInBytes
Type: long (int|float)

The size of the data stored on the volume in bytes.

This value is not available for volumes created prior to May 13, 2015, until you store data on the volume.

VolumeiSCSIAttributes

Description

Lists iSCSI information about a volume.

Members
ChapEnabled
Type: boolean

Indicates whether mutual CHAP is enabled for the iSCSI target.

LunNumber
Type: int

The logical disk number.

NetworkInterfaceId
Type: string

The network interface identifier.

NetworkInterfacePort
Type: int

The port used to communicate with iSCSI targets.

TargetARN
Type: string

The Amazon Resource Name (ARN) of the volume target.