Amazon EFS FileSystem is a JSON Structure definition published by Amazon EFS, describing 17 properties, of which 1 is required. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.
{
"$schema": "https://json-structure.org/meta/core/v0/#",
"$id": "https://raw.githubusercontent.com/api-evangelist/amazon-efs/refs/heads/main/json-structure/amazon-efs-filesystem-structure.json",
"name": "Amazon EFS FileSystem",
"description": "Schema representing an Amazon Elastic File System, which provides a simple, serverless, set-and-forget elastic file system for use with AWS cloud services and on-premises resources.",
"type": "object",
"properties": {
"FileSystemId": {
"type": "string",
"description": "The ID of the file system, assigned by Amazon EFS.",
"pattern": "^fs-[a-f0-9]+$"
},
"FileSystemArn": {
"type": "string",
"description": "The Amazon Resource Name (ARN) of the EFS file system.",
"pattern": "^arn:aws[a-zA-Z-]*:elasticfilesystem:[a-z0-9-]+:[0-9]{12}:file-system/fs-.+$"
},
"CreationToken": {
"type": "string",
"description": "The opaque string specified in the request to ensure idempotent creation.",
"minLength": 1,
"maxLength": 64
},
"OwnerId": {
"type": "string",
"description": "The AWS account that created the file system.",
"pattern": "^[0-9]{12}$"
},
"CreationTime": {
"type": "datetime",
"description": "The time that the file system was created, in seconds since epoch."
},
"LifeCycleState": {
"type": "string",
"description": "The lifecycle phase of the file system.",
"enum": [
"creating",
"available",
"updating",
"deleting",
"deleted",
"error"
]
},
"Name": {
"type": [
"string",
"null"
],
"description": "You can add tags to a file system, including a Name tag. If the file system has a Name tag, Amazon EFS returns the value in this field.",
"maxLength": 256
},
"NumberOfMountTargets": {
"type": "int32",
"description": "The current number of mount targets that the file system has.",
"minimum": 0
},
"SizeInBytes": {
"type": "object",
"description": "The latest known metered size (in bytes) of data stored in the file system.",
"properties": {
"Value": {
"type": "int32",
"description": "The latest known metered size (in bytes) of data stored in the file system.",
"minimum": 0
},
"Timestamp": {
"type": "datetime",
"description": "The time at which the size of data was determined."
},
"ValueInIA": {
"type": "int32",
"description": "The latest known metered size (in bytes) of data stored in the Infrequent Access storage class.",
"minimum": 0
},
"ValueInStandard": {
"type": "int32",
"description": "The latest known metered size (in bytes) of data stored in the Standard storage class.",
"minimum": 0
}
}
},
"PerformanceMode": {
"type": "string",
"description": "The performance mode of the file system.",
"enum": [
"generalPurpose",
"maxIO"
],
"default": "generalPurpose"
},
"Encrypted": {
"type": "boolean",
"description": "A Boolean value that, if true, indicates that the file system is encrypted.",
"default": false
},
"KmsKeyId": {
"type": "string",
"description": "The ID of an AWS KMS key used to protect the encrypted file system."
},
"ThroughputMode": {
"type": "string",
"description": "Displays the file system's throughput mode.",
"enum": [
"bursting",
"provisioned",
"elastic"
],
"default": "bursting"
},
"ProvisionedThroughputInMibps": {
"type": "double",
"description": "The amount of provisioned throughput, measured in MiB/s, for the file system.",
"minimum": 1,
"maximum": 3414
},
"AvailabilityZoneId": {
"type": [
"string",
"null"
],
"description": "The unique and consistent identifier of the Availability Zone in which the file system is located."
},
"AvailabilityZoneName": {
"type": [
"string",
"null"
],
"description": "Describes the AWS Availability Zone in which the file system is located."
},
"Tags": {
"type": "array",
"description": "The tags associated with the file system.",
"items": {
"type": "object",
"required": [
"Key",
"Value"
],
"properties": {
"Key": {
"type": "string",
"description": "The tag key.",
"minLength": 1,
"maxLength": 128
},
"Value": {
"type": "string",
"description": "The value of the tag key.",
"minLength": 0,
"maxLength": 256
}
}
}
}
},
"required": [
"CreationToken"
]
}