Every API here is available over the APIs.io API and to AI agents over MCP.
openapi: 3.1.0
info:
title: Amazon Elastic File System Filesystems API
version: '2015-02-01'
description: Generated from AWS's published Smithy model for Amazon Elastic File System. 5 operation(s).
contact:
name: Amazon Web Services
url: https://aws.amazon.com/contact-us/
license:
name: Apache 2.0
identifier: Apache-2.0
url: https://github.com/aws/api-models-aws/blob/main/LICENSE
servers:
- url: https://elasticfilesystem.{region}.amazonaws.com
variables:
region:
default: us-east-1
security:
- sigv4: []
paths:
/2015-02-01/file-systems:
post:
operationId: CreateFileSystem
summary: Create File System
description: 'Creates a new, empty file system. The operation requires a creation token in the request that Amazon EFS
uses to ensure idempotent creation (calling the operation with same creation token has no effect). If a file system
does not currently exist that is owned by the caller''s Amazon Web Services account with the specified creation token,
this operation does the following: Creates a new, empty file system. The file system will have an Amazon EFS assigned
ID, and an initial lifecycle state creating. Returns with the description of the created file system. Otherwise, this
operation returns a FileSystemAlreadyExists error with the ID of the existing file system. For basic use cases, you
can use a randomly generated UUID for the creation token. The idempotent operation allows you to retry a CreateFileSystem
call without risk of creating an extra file system. This can happen when an initial call fails in a way that leaves
it uncertain whether or not a file system was actually created. An example might be that a transport level timeout
occurred or your connection was reset. As long as you use the same creation token, if the initial call had succeeded
in creating a file system, the client c'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/FileSystemDescription'
'400':
description: BadRequest; ThroughputLimitExceeded; UnsupportedAvailabilityZone
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
'409':
description: FileSystemAlreadyExists
content:
application/json:
schema:
$ref: '#/components/schemas/FileSystemAlreadyExists'
'403':
description: FileSystemLimitExceeded
content:
application/json:
schema:
$ref: '#/components/schemas/FileSystemLimitExceeded'
'503':
description: InsufficientThroughputCapacity
content:
application/json:
schema:
$ref: '#/components/schemas/InsufficientThroughputCapacity'
'500':
description: InternalServerError
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateFileSystemRequest'
tags:
- Filesystems
get:
operationId: DescribeFileSystems
summary: Describe File Systems
description: Returns the description of a specific Amazon EFS file system if either the file system CreationToken or
the FileSystemId is provided. Otherwise, it returns descriptions of all file systems owned by the caller's Amazon
Web Services account in the Amazon Web Services Region of the endpoint that you're calling. When retrieving all file
system descriptions, you can optionally specify the MaxItems parameter to limit the number of descriptions in a response.
This number is automatically set to 100. If more file system descriptions remain, Amazon EFS returns a NextMarker,
an opaque token, in the response. In this case, you should send a subsequent request with the Marker request parameter
set to the value of NextMarker. To retrieve a list of your file system descriptions, this operation is used in an
iterative process, where DescribeFileSystems is called first without the Marker and then the operation continues to
call it with the Marker parameter set to the value of the NextMarker from the previous response until the response
has no NextMarker. The order of file systems returned in the response of one DescribeFileSystems call and the order
of file systems returned across the responses of
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/DescribeFileSystemsResponse'
'400':
description: BadRequest
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
'404':
description: FileSystemNotFound
content:
application/json:
schema:
$ref: '#/components/schemas/FileSystemNotFound'
'500':
description: InternalServerError
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DescribeFileSystemsRequest'
tags:
- Filesystems
/2015-02-01/file-systems/{FileSystemId}:
delete:
operationId: DeleteFileSystem
summary: Delete File System
description: Deletes a file system, permanently severing access to its contents. Upon return, the file system no longer
exists and you can't access any contents of the deleted file system. You need to manually delete mount targets attached
to a file system before you can delete an EFS file system. This step is performed for you when you use the Amazon
Web Services console to delete a file system. You cannot delete a file system that is part of an EFS replication configuration.
You need to delete the replication configuration first. You can't delete a file system that is in use. That is, if
the file system has any mount targets, you must first delete them. For more information, see DescribeMountTargets
and DeleteMountTarget. The DeleteFileSystem call returns while the file system state is still deleting. You can check
the file system deletion status by calling the DescribeFileSystems operation, which returns a list of file systems
in your account. If you pass file system ID or creation token for the deleted file system, the DescribeFileSystems
returns a 404 FileSystemNotFound error. This operation requires permissions for the elasticfilesystem:DeleteFileSystem
action.
responses:
'200':
description: Success
content:
application/json:
schema:
type: string
'400':
description: BadRequest
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
'409':
description: FileSystemInUse
content:
application/json:
schema:
$ref: '#/components/schemas/FileSystemInUse'
'404':
description: FileSystemNotFound
content:
application/json:
schema:
$ref: '#/components/schemas/FileSystemNotFound'
'500':
description: InternalServerError
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteFileSystemRequest'
example:
FileSystemId: fs-01234567
tags:
- Filesystems
put:
operationId: UpdateFileSystem
summary: Update File System
description: Updates the throughput mode or the amount of provisioned throughput of an existing file system.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/FileSystemDescription'
'400':
description: BadRequest; ThroughputLimitExceeded
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
'404':
description: FileSystemNotFound
content:
application/json:
schema:
$ref: '#/components/schemas/FileSystemNotFound'
'409':
description: IncorrectFileSystemLifeCycleState
content:
application/json:
schema:
$ref: '#/components/schemas/IncorrectFileSystemLifeCycleState'
'503':
description: InsufficientThroughputCapacity
content:
application/json:
schema:
$ref: '#/components/schemas/InsufficientThroughputCapacity'
'500':
description: InternalServerError
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
'429':
description: TooManyRequests
content:
application/json:
schema:
$ref: '#/components/schemas/TooManyRequests'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateFileSystemRequest'
tags:
- Filesystems
/2015-02-01/file-systems/replication-configurations:
get:
operationId: DescribeReplicationConfigurations
summary: Describe Replication Configurations
description: Retrieves the replication configuration for a specific file system. If a file system is not specified,
all of the replication configurations for the Amazon Web Services account in an Amazon Web Services Region are retrieved.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/DescribeReplicationConfigurationsResponse'
'400':
description: BadRequest; ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
'404':
description: FileSystemNotFound; ReplicationNotFound
content:
application/json:
schema:
$ref: '#/components/schemas/FileSystemNotFound'
'500':
description: InternalServerError
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DescribeReplicationConfigurationsRequest'
tags:
- Filesystems
components:
securitySchemes:
sigv4:
type: apiKey
in: header
name: Authorization
description: AWS Signature Version 4. The Authorization header carries an AWS4-HMAC-SHA256 signature over the canonical
request, with X-Amz-Date (and X-Amz-Security-Token for temporary credentials). Not a bearer token.
x-aws-sigv4:
signingName: elasticfilesystem
schemas:
BadRequest:
type: object
properties:
ErrorCode:
type: string
Message:
type: string
required:
- ErrorCode
CreateFileSystemRequest:
type: object
properties:
CreationToken:
type: string
description: A string of up to 64 ASCII characters. Amazon EFS uses this to ensure idempotent creation.
PerformanceMode:
type: string
enum:
- generalPurpose
- maxIO
description: The performance mode of the file system. We recommend generalPurpose performance mode for all file
systems. File systems using the maxIO performance mode can scale to higher levels of aggregate throughput and
operations per second with a tradeoff of slightly higher latencies for most file operations. The performance mode
can't be changed after the file system has been created. The maxIO mode is not supported on One Zone file systems.
Due to the higher per-operation latencies with Max I/O, we recommend using General Purpose performance mode for
all file systems. Default is generalPurpose.
Encrypted:
type: boolean
description: A Boolean value that, if true, creates an encrypted file system. When creating an encrypted file system,
you have the option of specifying an existing Key Management Service key (KMS key). If you don't specify a KMS
key, then the default KMS key for Amazon EFS, /aws/elasticfilesystem, is used to protect the encrypted file system.
KmsKeyId:
type: string
description: 'The ID of the KMS key that you want to use to protect the encrypted file system. This parameter is
required only if you want to use a non-default KMS key. If this parameter is not specified, the default KMS key
for Amazon EFS is used. You can specify a KMS key ID using the following formats: Key ID - A unique identifier
of the key, for example 1234abcd-12ab-34cd-56ef-1234567890ab. ARN - An Amazon Resource Name (ARN) for the key,
for example arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab. Key alias - A previously
created display name for a key, for example alias/pro'
ThroughputMode:
type: string
enum:
- bursting
- provisioned
- elastic
description: Specifies the throughput mode for the file system. The mode can be bursting, provisioned, or elastic.
If you set ThroughputMode to provisioned, you must also set a value for ProvisionedThroughputInMibps. After you
create the file system, you can decrease your file system's Provisioned throughput or change between the throughput
modes, with certain time restrictions. For more information, see Specifying throughput with provisioned mode in
the Amazon EFS User Guide. Default is bursting.
ProvisionedThroughputInMibps:
type: number
description: The throughput, measured in mebibytes per second (MiBps), that you want to provision for a file system
that you're creating. Required if ThroughputMode is set to provisioned. Valid values are 1-3414 MiBps, with the
upper limit depending on Region. To increase this limit, contact Amazon Web Services Support. For more information,
see Amazon EFS quotas that you can increase in the Amazon EFS User Guide.
AvailabilityZoneName:
type: string
description: For One Zone file systems, specify the Amazon Web Services Availability Zone in which to create the
file system. Use the format us-east-1a to specify the Availability Zone. For more information about One Zone file
systems, see EFS file system types in the Amazon EFS User Guide. One Zone file systems are not available in all
Availability Zones in Amazon Web Services Regions where Amazon EFS is available.
Backup:
type: boolean
description: Specifies whether automatic backups are enabled on the file system that you are creating. Set the value
to true to enable automatic backups. If you are creating a One Zone file system, automatic backups are enabled
by default. For more information, see Automatic backups in the Amazon EFS User Guide. Default is false. However,
if you specify an AvailabilityZoneName, the default is true. Backup is not available in all Amazon Web Services
Regions where Amazon EFS is available.
Tags:
type: array
items:
$ref: '#/components/schemas/Tag'
description: Use to create one or more tags associated with the file system. Each tag is a user-defined key-value
pair. Name your file system on creation by including a "Key":"Name","Value":"{value}" key-value pair. Each key
must be unique. For more information, see Tagging Amazon Web Services resources in the Amazon Web Services General
Reference Guide.
required:
- CreationToken
DeleteFileSystemRequest:
type: object
properties:
FileSystemId:
type: string
description: The ID of the file system you want to delete.
required:
- FileSystemId
DescribeFileSystemsRequest:
type: object
properties:
MaxItems:
type: integer
description: (Optional) Specifies the maximum number of file systems to return in the response (integer). This number
is automatically set to 100. The response is paginated at 100 per page if you have more than 100 file systems.
Marker:
type: string
description: (Optional) Opaque pagination token returned from a previous DescribeFileSystems operation (String).
If present, specifies to continue the list from where the returning call had left off.
CreationToken:
type: string
description: (Optional) Restricts the list to the file system with this creation token (String). You specify a creation
token when you create an Amazon EFS file system.
FileSystemId:
type: string
description: (Optional) ID of the file system whose description you want to retrieve (String).
DescribeFileSystemsResponse:
type: object
properties:
Marker:
type: string
description: Present if provided by caller in the request (String).
FileSystems:
type: array
items:
$ref: '#/components/schemas/FileSystemDescription'
description: An array of file system descriptions.
NextMarker:
type: string
description: Present if there are more file systems than returned in the response (String). You can use the NextMarker
in the subsequent request to fetch the descriptions.
DescribeReplicationConfigurationsRequest:
type: object
properties:
FileSystemId:
type: string
description: You can retrieve the replication configuration for a specific file system by providing its file system
ID. For cross-account,cross-region replication, an account can only describe the replication configuration for
a file system in its own Region.
NextToken:
type: string
description: NextToken is present if the response is paginated. You can use NextToken in a subsequent request to
fetch the next page of output.
MaxResults:
type: integer
description: (Optional) To limit the number of objects returned in a response, you can specify the MaxItems parameter.
The default value is 100.
DescribeReplicationConfigurationsResponse:
type: object
properties:
Replications:
type: array
items:
$ref: '#/components/schemas/ReplicationConfigurationDescription'
description: The collection of replication configurations that is returned.
NextToken:
type: string
description: You can use the NextToken from the previous response in a subsequent request to fetch the additional
descriptions.
Destination:
type: object
properties:
Status:
type: string
enum:
- ENABLED
- ENABLING
- DELETING
- ERROR
- PAUSED
- PAUSING
description: Describes the status of the replication configuration. For more information about replication status,
see Viewing replication details in the Amazon EFS User Guide.
FileSystemId:
type: string
description: The ID of the destination Amazon EFS file system.
Region:
type: string
description: The Amazon Web Services Region in which the destination file system is located.
LastReplicatedTimestamp:
type: string
format: date-time
description: The time when the most recent sync was successfully completed on the destination file system. Any changes
to data on the source file system that occurred before this time have been successfully replicated to the destination
file system. Any changes that occurred after this time might not be fully replicated.
OwnerId:
type: string
description: ID of the Amazon Web Services account in which the destination file system resides.
StatusMessage:
type: string
description: Message that provides details about the PAUSED or ERRROR state of the replication destination configuration.
For more information about replication status messages, see Viewing replication details in the Amazon EFS User
Guide.
RoleArn:
type: string
description: Amazon Resource Name (ARN) of the IAM role in the source account that allows Amazon EFS to perform
replication on its behalf. This is optional for same-account replication and required for cross-account replication.
required:
- Status
- FileSystemId
- Region
FileSystemAlreadyExists:
type: object
properties:
ErrorCode:
type: string
Message:
type: string
FileSystemId:
type: string
required:
- ErrorCode
- FileSystemId
FileSystemDescription:
type: object
properties:
OwnerId:
type: string
description: The Amazon Web Services account that created the file system.
CreationToken:
type: string
description: The opaque string specified in the request.
FileSystemId:
type: string
description: The ID of the file system, assigned by Amazon EFS.
FileSystemArn:
type: string
description: 'The Amazon Resource Name (ARN) for the EFS file system, in the format arn:aws:elasticfilesystem:region:account-id:file-system/file-system-id
. Example with sample data: arn:aws:elasticfilesystem:us-west-2:1111333322228888:file-system/fs-01234567'
CreationTime:
type: string
format: date-time
description: The time that the file system was created, in seconds (since 1970-01-01T00:00:00Z).
LifeCycleState:
type: string
enum:
- creating
- available
- updating
- deleting
- deleted
- error
description: The lifecycle phase of the file system.
Name:
type: string
description: You can add tags to a file system, including a Name tag. For more information, see CreateFileSystem.
If the file system has a Name tag, Amazon EFS returns the value in this field.
NumberOfMountTargets:
type: integer
description: The current number of mount targets that the file system has. For more information, see CreateMountTarget.
SizeInBytes:
$ref: '#/components/schemas/FileSystemSize'
PerformanceMode:
type: string
enum:
- generalPurpose
- maxIO
description: The performance mode of the file system.
Encrypted:
type: boolean
description: A Boolean value that, if true, indicates that the file system is encrypted.
KmsKeyId:
type: string
description: The ID of an KMS key used to protect the encrypted file system.
ThroughputMode:
type: string
enum:
- bursting
- provisioned
- elastic
description: Displays the file system's throughput mode. For more information, see Throughput modes in the Amazon
EFS User Guide.
ProvisionedThroughputInMibps:
type: number
description: The amount of provisioned throughput, measured in MiBps, for the file system. Valid for file systems
using ThroughputMode set to provisioned.
AvailabilityZoneName:
type: string
description: Describes the Amazon Web Services Availability Zone in which the file system is located, and is valid
only for One Zone file systems. For more information, see Using EFS storage classes in the Amazon EFS User Guide.
AvailabilityZoneId:
type: string
description: The unique and consistent identifier of the Availability Zone in which the file system is located,
and is valid only for One Zone file systems. For example, use1-az1 is an Availability Zone ID for the us-east-1
Amazon Web Services Region, and it has the same location in every Amazon Web Services account.
Tags:
type: array
items:
$ref: '#/components/schemas/Tag'
description: The tags associated with the file system, presented as an array of Tag objects.
FileSystemProtection:
$ref: '#/components/schemas/FileSystemProtectionDescription'
required:
- OwnerId
- CreationToken
- FileSystemId
- CreationTime
- LifeCycleState
- NumberOfMountTargets
- SizeInBytes
- PerformanceMode
- Tags
FileSystemInUse:
type: object
properties:
ErrorCode:
type: string
Message:
type: string
required:
- ErrorCode
FileSystemLimitExceeded:
type: object
properties:
ErrorCode:
type: string
Message:
type: string
required:
- ErrorCode
FileSystemNotFound:
type: object
properties:
ErrorCode:
type: string
Message:
type: string
required:
- ErrorCode
FileSystemProtectionDescription:
type: object
properties:
ReplicationOverwriteProtection:
type: string
enum:
- ENABLED
- DISABLED
- REPLICATING
description: The status of the file system's replication overwrite protection. ENABLED – The file system cannot
be used as the destination file system in a replication configuration. The file system is writeable. Replication
overwrite protection is ENABLED by default. DISABLED – The file system can be used as the destination file system
in a replication configuration. The file system is read-only and can only be modified by EFS replication. REPLICATING
– The file system is being used as the destination file system in a replication configuration. The file system
is read-only and is modified only by EFS repl
FileSystemSize:
type: object
properties:
Value:
type: integer
description: The latest known metered size (in bytes) of data stored in the file system.
Timestamp:
type: string
format: date-time
description: The time at which the size of data, returned in the Value field, was determined. The value is the integer
number of seconds since 1970-01-01T00:00:00Z.
ValueInIA:
type: integer
description: The latest known metered size (in bytes) of data stored in the Infrequent Access storage class.
ValueInStandard:
type: integer
description: The latest known metered size (in bytes) of data stored in the Standard storage class.
ValueInArchive:
type: integer
description: The latest known metered size (in bytes) of data stored in the Archive storage class.
required:
- Value
IncorrectFileSystemLifeCycleState:
type: object
properties:
ErrorCode:
type: string
Message:
type: string
required:
- ErrorCode
InsufficientThroughputCapacity:
type: object
properties:
ErrorCode:
type: string
Message:
type: string
required:
- ErrorCode
InternalServerError:
type: object
properties:
ErrorCode:
type: string
Message:
type: string
required:
- ErrorCode
ReplicationConfigurationDescription:
type: object
properties:
SourceFileSystemId:
type: string
description: The ID of the source Amazon EFS file system that is being replicated.
SourceFileSystemRegion:
type: string
description: The Amazon Web Services Region in which the source EFS file system is located.
SourceFileSystemArn:
type: string
description: The Amazon Resource Name (ARN) of the current source file system in the replication configuration.
OriginalSourceFileSystemArn:
type: string
description: The Amazon Resource Name (ARN) of the original source EFS file system in the replication configuration.
CreationTime:
type: string
format: date-time
description: Describes when the replication configuration was created.
Destinations:
type: array
items:
$ref: '#/components/schemas/Destination'
description: An array of destination objects. Only one destination object is supported.
SourceFileSystemOwnerId:
type: string
description: ID of the Amazon Web Services account in which the source file system resides.
required:
- SourceFileSystemId
- SourceFileSystemRegion
- SourceFileSystemArn
- OriginalSourceFileSystemArn
- CreationTime
- Destinations
Tag:
type: object
properties:
Key:
type: string
description: The tag key (String). The key can't start with aws:.
Value:
type: string
description: The value of the tag key.
required:
- Key
- Value
TooManyRequests:
type: object
properties:
ErrorCode:
type: string
Message:
type: string
required:
- ErrorCode
UpdateFileSystemRequest:
type: object
properties:
FileSystemId:
type: string
description: The ID of the file system that you want to update.
ThroughputMode:
type: string
enum:
- bursting
- provisioned
- elastic
description: (Optional) Updates the file system's throughput mode. If you're not updating your throughput mode,
you don't need to provide this value in your request. If you are changing the ThroughputMode to provisioned, you
must also set a value for ProvisionedThroughputInMibps.
ProvisionedThroughputInMibps:
type: number
description: (Optional) The throughput, measured in mebibytes per second (MiBps), that you want to provision for
a file system that you're creating. Required if ThroughputMode is set to provisioned. Valid values are 1-3414
MiBps, with the upper limit depending on Region. To increase this limit, contact Amazon Web Services Support.
For more information, see Amazon EFS quotas that you can increase in the Amazon EFS User Guide.
required:
- FileSystemId
x-provenance:
method: harvested
publisher: Amazon Web Services
source: https://raw.githubusercontent.com/aws/api-models-aws/582e55931c45b944739742a2c1620b6026dd2d13/models/efs/service/2015-02-01/efs-2015-02-01.json
note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)