naftiko: 1.0.0-alpha2
info:
label: Amazon Simple Storage Service
description: <p/>
tags:
- Aws
- S3
- API
created: '2026-05-06'
modified: '2026-05-06'
capability:
consumes:
- type: http
namespace: aws-s3
baseUri: http://s3.us-east-1.amazonaws.com
description: Amazon Simple Storage Service HTTP API.
authentication:
type: apikey
in: header
name: Authorization
value: '{{AWS_S3_TOKEN}}'
resources:
- name: bucket-key-uploadid
path: /{Bucket}/{Key}#uploadId
operations:
- name: abortmultipartupload
method: DELETE
description: Amazon S3 - AbortMultipartUpload
inputParameters:
- name: Bucket
in: path
type: string
required: true
description: <p>The bucket name to which the upload was taking place. </p> <p>When using this action with an access
point, you must direct requests to the access point hostn
- name: Key
in: path
type: string
required: true
description: Key of the object for which the multipart upload was initiated.
- name: uploadId
in: query
type: string
required: true
description: Upload ID that identifies the multipart upload.
- name: x-amz-request-payer
in: header
type: string
- name: x-amz-expected-bucket-owner
in: header
type: string
description: The account ID of the expected bucket owner. If the bucket is owned by a different account, the request
fails with the HTTP status code <code>403 Forbidden</cod
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: completemultipartupload
method: POST
description: Amazon S3 - CompleteMultipartUpload
inputParameters:
- name: Bucket
in: path
type: string
required: true
description: <p>Name of the bucket to which the multipart upload was initiated.</p> <p>When using this action with
an access point, you must direct requests to the access po
- name: Key
in: path
type: string
required: true
description: Object key for which the multipart upload was initiated.
- name: uploadId
in: query
type: string
required: true
description: ID for the initiated multipart upload.
- name: x-amz-checksum-crc32
in: header
type: string
description: This header can be used as a data integrity check to verify that the data received is the same data
that was originally sent. This header specifies the base64-e
- name: x-amz-checksum-crc32c
in: header
type: string
description: This header can be used as a data integrity check to verify that the data received is the same data
that was originally sent. This header specifies the base64-e
- name: x-amz-checksum-sha1
in: header
type: string
description: This header can be used as a data integrity check to verify that the data received is the same data
that was originally sent. This header specifies the base64-e
- name: x-amz-checksum-sha256
in: header
type: string
description: This header can be used as a data integrity check to verify that the data received is the same data
that was originally sent. This header specifies the base64-e
- name: x-amz-request-payer
in: header
type: string
- name: x-amz-expected-bucket-owner
in: header
type: string
description: The account ID of the expected bucket owner. If the bucket is owned by a different account, the request
fails with the HTTP status code <code>403 Forbidden</cod
- name: x-amz-server-side-encryption-customer-algorithm
in: header
type: string
description: The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only
when the object was created using a checksum algorithm. For
- name: x-amz-server-side-encryption-customer-key
in: header
type: string
description: The server-side encryption (SSE) customer managed key. This parameter is needed only when the object
was created using a checksum algorithm. For more informatio
- name: x-amz-server-side-encryption-customer-key-MD5
in: header
type: string
description: The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object
was created using a checksum algorithm. For more inform
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: listparts
method: GET
description: Amazon S3 - ListParts
inputParameters:
- name: Bucket
in: path
type: string
required: true
description: <p>The name of the bucket to which the parts are being uploaded. </p> <p>When using this action with
an access point, you must direct requests to the access poi
- name: Key
in: path
type: string
required: true
description: Object key for which the multipart upload was initiated.
- name: max-parts
in: query
type: integer
description: Sets the maximum number of parts to return.
- name: part-number-marker
in: query
type: integer
description: Specifies the part after which listing should begin. Only parts with higher part numbers will be listed.
- name: uploadId
in: query
type: string
required: true
description: Upload ID identifying the multipart upload whose parts are being listed.
- name: x-amz-request-payer
in: header
type: string
- name: x-amz-expected-bucket-owner
in: header
type: string
description: The account ID of the expected bucket owner. If the bucket is owned by a different account, the request
fails with the HTTP status code <code>403 Forbidden</cod
- name: x-amz-server-side-encryption-customer-algorithm
in: header
type: string
description: The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only
when the object was created using a checksum algorithm. For
- name: x-amz-server-side-encryption-customer-key
in: header
type: string
description: The server-side encryption (SSE) customer managed key. This parameter is needed only when the object
was created using a checksum algorithm. For more informatio
- name: x-amz-server-side-encryption-customer-key-MD5
in: header
type: string
description: The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object
was created using a checksum algorithm. For more inform
- name: MaxParts
in: query
type: string
description: Pagination limit
- name: PartNumberMarker
in: query
type: string
description: Pagination token
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: bucket-key-x-amz-copy-source
path: /{Bucket}/{Key}#x-amz-copy-source
operations:
- name: copyobject
method: PUT
description: Amazon S3 - CopyObject
inputParameters:
- name: x-amz-acl
in: header
type: string
description: <p>The canned ACL to apply to the object.</p> <p>This action is not supported by Amazon S3 on Outposts.</p>
- name: Bucket
in: path
type: string
required: true
description: <p>The name of the destination bucket.</p> <p>When using this action with an access point, you must
direct requests to the access point hostname. The access poi
- name: Cache-Control
in: header
type: string
description: Specifies caching behavior along the request/reply chain.
- name: x-amz-checksum-algorithm
in: header
type: string
description: Indicates the algorithm you want Amazon S3 to use to create the checksum for the object. For more information,
see <a href="https://docs.aws.amazon.com/AmazonS3
- name: Content-Disposition
in: header
type: string
description: Specifies presentational information for the object.
- name: Content-Encoding
in: header
type: string
description: Specifies what content encodings have been applied to the object and thus what decoding mechanisms
must be applied to obtain the media-type referenced by the Co
- name: Content-Language
in: header
type: string
description: The language the content is in.
- name: Content-Type
in: header
type: string
description: A standard MIME type describing the format of the object data.
- name: x-amz-copy-source
in: header
type: string
required: true
description: <p>Specifies the source object for the copy operation. You specify the value in one of two formats,
depending on whether you want to access the source object th
- name: x-amz-copy-source-if-match
in: header
type: string
description: Copies the object if its entity tag (ETag) matches the specified tag.
- name: x-amz-copy-source-if-modified-since
in: header
type: string
description: Copies the object if it has been modified since the specified time.
- name: x-amz-copy-source-if-none-match
in: header
type: string
description: Copies the object if its entity tag (ETag) is different than the specified ETag.
- name: x-amz-copy-source-if-unmodified-since
in: header
type: string
description: Copies the object if it hasn't been modified since the specified time.
- name: Expires
in: header
type: string
description: The date and time at which the object is no longer cacheable.
- name: x-amz-grant-full-control
in: header
type: string
description: <p>Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.</p> <p>This action is
not supported by Amazon S3 on Outposts.</p>
- name: x-amz-grant-read
in: header
type: string
description: <p>Allows grantee to read the object data and its metadata.</p> <p>This action is not supported by
Amazon S3 on Outposts.</p>
- name: x-amz-grant-read-acp
in: header
type: string
description: <p>Allows grantee to read the object ACL.</p> <p>This action is not supported by Amazon S3 on Outposts.</p>
- name: x-amz-grant-write-acp
in: header
type: string
description: <p>Allows grantee to write the ACL for the applicable object.</p> <p>This action is not supported by
Amazon S3 on Outposts.</p>
- name: Key
in: path
type: string
required: true
description: The key of the destination object.
- name: x-amz-metadata-directive
in: header
type: string
description: Specifies whether the metadata is copied from the source object or replaced with metadata provided
in the request.
- name: x-amz-tagging-directive
in: header
type: string
description: Specifies whether the object tag-set are copied from the source object or replaced with tag-set provided
in the request.
- name: x-amz-server-side-encryption
in: header
type: string
description: The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256,
aws:kms).
- name: x-amz-storage-class
in: header
type: string
description: By default, Amazon S3 uses the STANDARD Storage Class to store newly created objects. The STANDARD
storage class provides high durability and high availability.
- name: x-amz-website-redirect-location
in: header
type: string
description: If the bucket is configured as a website, redirects requests for this object to another object in the
same bucket or to an external URL. Amazon S3 stores the va
- name: x-amz-server-side-encryption-customer-algorithm
in: header
type: string
description: Specifies the algorithm to use to when encrypting the object (for example, AES256).
- name: x-amz-server-side-encryption-customer-key
in: header
type: string
description: 'Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value
is used to store the object and then it is discarded; Amazon '
- name: x-amz-server-side-encryption-customer-key-MD5
in: header
type: string
description: Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header
for a message integrity check to ensure that the encryp
- name: x-amz-server-side-encryption-aws-kms-key-id
in: header
type: string
description: Specifies the Amazon Web Services KMS key ID to use for object encryption. All GET and PUT requests
for an object protected by Amazon Web Services KMS will fail
- name: x-amz-server-side-encryption-context
in: header
type: string
description: Specifies the Amazon Web Services KMS Encryption Context to use for object encryption. The value of
this header is a base64-encoded UTF-8 string holding JSON wi
- name: x-amz-server-side-encryption-bucket-key-enabled
in: header
type: boolean
description: <p>Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption
using AWS KMS (SSE-KMS). Setting this header to <co
- name: x-amz-copy-source-server-side-encryption-customer-algorithm
in: header
type: string
description: Specifies the algorithm to use when decrypting the source object (for example, AES256).
- name: x-amz-copy-source-server-side-encryption-customer-key
in: header
type: string
description: Specifies the customer-provided encryption key for Amazon S3 to use to decrypt the source object. The
encryption key provided in this header must be one that wa
- name: x-amz-copy-source-server-side-encryption-customer-key-MD5
in: header
type: string
description: Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header
for a message integrity check to ensure that the encryp
- name: x-amz-request-payer
in: header
type: string
- name: x-amz-tagging
in: header
type: string
description: 'The tag-set for the object destination object this value must be used in conjunction with the <code>TaggingDirective</code>.
The tag-set must be encoded as URL '
- name: x-amz-object-lock-mode
in: header
type: string
description: The Object Lock mode that you want to apply to the copied object.
- name: x-amz-object-lock-retain-until-date
in: header
type: string
description: The date and time when you want the copied object's Object Lock to expire.
- name: x-amz-object-lock-legal-hold
in: header
type: string
description: Specifies whether you want to apply a legal hold to the copied object.
- name: x-amz-expected-bucket-owner
in: header
type: string
description: 'The account ID of the expected destination bucket owner. If the destination bucket is owned by a different
account, the request fails with the HTTP status code '
- name: x-amz-source-expected-bucket-owner
in: header
type: string
description: 'The account ID of the expected source bucket owner. If the source bucket is owned by a different account,
the request fails with the HTTP status code <code>403 '
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: bucket
path: /{Bucket}
operations:
- name: createbucket
method: PUT
description: Amazon S3 - CreateBucket
inputParameters:
- name: x-amz-acl
in: header
type: string
description: The canned ACL to apply to the bucket.
- name: Bucket
in: path
type: string
required: true
description: The name of the bucket to create.
- name: x-amz-grant-full-control
in: header
type: string
description: Allows grantee the read, write, read ACP, and write ACP permissions on the bucket.
- name: x-amz-grant-read
in: header
type: string
description: Allows grantee to list the objects in the bucket.
- name: x-amz-grant-read-acp
in: header
type: string
description: Allows grantee to read the bucket ACL.
- name: x-amz-grant-write
in: header
type: string
description: <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and object owners of existing
objects, also allows deletions and overwrites of thos
- name: x-amz-grant-write-acp
in: header
type: string
description: Allows grantee to write the ACL for the applicable bucket.
- name: x-amz-bucket-object-lock-enabled
in: header
type: boolean
description: Specifies whether you want S3 Object Lock to be enabled for the new bucket.
- name: x-amz-object-ownership
in: header
type: string
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: deletebucket
method: DELETE
description: Amazon S3 - DeleteBucket
inputParameters:
- name: Bucket
in: path
type: string
required: true
description: Specifies the bucket being deleted.
- name: x-amz-expected-bucket-owner
in: header
type: string
description: The account ID of the expected bucket owner. If the bucket is owned by a different account, the request
fails with the HTTP status code <code>403 Forbidden</cod
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: listobjects
method: GET
description: Amazon S3 - ListObjects
inputParameters:
- name: Bucket
in: path
type: string
required: true
description: <p>The name of the bucket containing the objects.</p> <p>When using this action with an access point,
you must direct requests to the access point hostname. The
- name: delimiter
in: query
type: string
description: A delimiter is a character you use to group keys.
- name: encoding-type
in: query
type: string
- name: marker
in: query
type: string
description: Marker is where you want Amazon S3 to start listing from. Amazon S3 starts listing after this specified
key. Marker can be any key in the bucket.
- name: max-keys
in: query
type: integer
description: Sets the maximum number of keys returned in the response. By default the action returns up to 1,000
key names. The response might contain fewer keys but will ne
- name: prefix
in: query
type: string
description: Limits the response to keys that begin with the specified prefix.
- name: x-amz-request-payer
in: header
type: string
description: Confirms that the requester knows that she or he will be charged for the list objects request. Bucket
owners need not specify this parameter in their requests.
- name: x-amz-expected-bucket-owner
in: header
type: string
description: The account ID of the expected bucket owner. If the bucket is owned by a different account, the request
fails with the HTTP status code <code>403 Forbidden</cod
- name: MaxKeys
in: query
type: string
description: Pagination limit
- name: Marker
in: query
type: string
description: Pagination token
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: bucket-key-uploads
path: /{Bucket}/{Key}#uploads
operations:
- name: createmultipartupload
method: POST
description: Amazon S3 - CreateMultipartUpload
inputParameters:
- name: x-amz-acl
in: header
type: string
description: <p>The canned ACL to apply to the object.</p> <p>This action is not supported by Amazon S3 on Outposts.</p>
- name: Bucket
in: path
type: string
required: true
description: <p>The name of the bucket to which to initiate the upload</p> <p>When using this action with an access
point, you must direct requests to the access point hostn
- name: Cache-Control
in: header
type: string
description: Specifies caching behavior along the request/reply chain.
- name: Content-Disposition
in: header
type: string
description: Specifies presentational information for the object.
- name: Content-Encoding
in: header
type: string
description: Specifies what content encodings have been applied to the object and thus what decoding mechanisms
must be applied to obtain the media-type referenced by the Co
- name: Content-Language
in: header
type: string
description: The language the content is in.
- name: Content-Type
in: header
type: string
description: A standard MIME type describing the format of the object data.
- name: Expires
in: header
type: string
description: The date and time at which the object is no longer cacheable.
- name: x-amz-grant-full-control
in: header
type: string
description: <p>Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.</p> <p>This action is
not supported by Amazon S3 on Outposts.</p>
- name: x-amz-grant-read
in: header
type: string
description: <p>Allows grantee to read the object data and its metadata.</p> <p>This action is not supported by
Amazon S3 on Outposts.</p>
- name: x-amz-grant-read-acp
in: header
type: string
description: <p>Allows grantee to read the object ACL.</p> <p>This action is not supported by Amazon S3 on Outposts.</p>
- name: x-amz-grant-write-acp
in: header
type: string
description: <p>Allows grantee to write the ACL for the applicable object.</p> <p>This action is not supported by
Amazon S3 on Outposts.</p>
- name: Key
in: path
type: string
required: true
description: Object key for which the multipart upload is to be initiated.
- name: x-amz-server-side-encryption
in: header
type: string
description: The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256,
aws:kms).
- name: x-amz-storage-class
in: header
type: string
description: By default, Amazon S3 uses the STANDARD Storage Class to store newly created objects. The STANDARD
storage class provides high durability and high availability.
- name: x-amz-website-redirect-location
in: header
type: string
description: If the bucket is configured as a website, redirects requests for this object to another object in the
same bucket or to an external URL. Amazon S3 stores the va
- name: x-amz-server-side-encryption-customer-algorithm
in: header
type: string
description: Specifies the algorithm to use to when encrypting the object (for example, AES256).
- name: x-amz-server-side-encryption-customer-key
in: header
type: string
description: 'Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value
is used to store the object and then it is discarded; Amazon '
- name: x-amz-server-side-encryption-customer-key-MD5
in: header
type: string
description: Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header
for a message integrity check to ensure that the encryp
- name: x-amz-server-side-encryption-aws-kms-key-id
in: header
type: string
description: Specifies the ID of the symmetric customer managed key to use for object encryption. All GET and PUT
requests for an object protected by Amazon Web Services KMS
- name: x-amz-server-side-encryption-context
in: header
type: string
description: Specifies the Amazon Web Services KMS Encryption Context to use for object encryption. The value of
this header is a base64-encoded UTF-8 string holding JSON wi
- name: x-amz-server-side-encryption-bucket-key-enabled
in: header
type: boolean
description: <p>Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption
using AWS KMS (SSE-KMS). Setting this header to <co
- name: x-amz-request-payer
in: header
type: string
- name: x-amz-tagging
in: header
type: string
description: The tag-set for the object. The tag-set must be encoded as URL Query parameters.
- name: x-amz-object-lock-mode
in: header
type: string
description: Specifies the Object Lock mode that you want to apply to the uploaded object.
- name: x-amz-object-lock-retain-until-date
in: header
type: string
description: Specifies the date and time when you want the Object Lock to expire.
- name: x-amz-object-lock-legal-hold
in: header
type: string
description: Specifies whether you want to apply a legal hold to the uploaded object.
- name: x-amz-expected-bucket-owner
in: header
type: string
description: The account ID of the expected bucket owner. If the bucket is owned by a different account, the request
fails with the HTTP status code <code>403 Forbidden</cod
- name: x-amz-checksum-algorithm
in: header
type: string
description: Indicates the algorithm you want Amazon S3 to use to create the checksum for the object. For more information,
see <a href="https://docs.aws.amazon.com/AmazonS3
- name: uploads
in: query
type: boolean
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: bucket-analytics-id
path: /{Bucket}#analytics&id
operations:
- name: deletebucketanalyticsconfiguration
method: DELETE
description: Amazon S3 - DeleteBucketAnalyticsConfiguration
inputParameters:
- name: Bucket
in: path
type: string
required: true
description: The name of the bucket from which an analytics configuration is deleted.
- name: id
in: query
type: string
required: true
description: The ID that identifies the analytics configuration.
- name: x-amz-expected-bucket-owner
in: header
type: string
description: The account ID of the expected bucket owner. If the bucket is owned by a different account, the request
fails with the HTTP status code <code>403 Forbidden</cod
- name: analytics
in: query
type: boolean
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: getbucketanalyticsconfiguration
method: GET
description: Amazon S3 - GetBucketAnalyticsConfiguration
inputParameters:
- name: Bucket
in: path
type: string
required: true
description: The name of the bucket from which an analytics configuration is retrieved.
- name: id
in: query
type: string
required: true
description: The ID that identifies the analytics configuration.
- name: x-amz-expected-bucket-owner
in: header
type: string
description: The account ID of the expected bucket owner. If the bucket is owned by a different account, the request
fails with the HTTP status code <code>403 Forbidden</cod
- name: analytics
in: query
type: boolean
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: putbucketanalyticsconfiguration
method: PUT
description: Amazon S3 - PutBucketAnalyticsConfiguration
inputParameters:
- name: Bucket
in: path
type: string
required: true
description: The name of the bucket to which an analytics configuration is stored.
- name: id
in: query
type: string
required: true
description: The ID that identifies the analytics configuration.
- name: x-amz-expected-bucket-owner
in: header
type: string
description: The account ID of the expected bucket owner. If the bucket is owned by a different account, the request
fails with the HTTP status code <code>403 Forbidden</cod
- name: analytics
in: query
type: boolean
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: bucket-cors
path: /{Bucket}#cors
operations:
- name: deletebucketcors
method: DELETE
description: Amazon S3 - DeleteBucketCors
inputParameters:
- name: Bucket
in: path
type: string
required: true
description: Specifies the bucket whose <code>cors</code> configuration is being deleted.
- name: x-amz-expected-bucket-owner
in: header
type: string
description: The account ID of the expected bucket owner. If the bucket is owned by a different account, the request
fails with the HTTP status code <code>403 Forbidden</cod
# --- truncated at 32 KB (162 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/aws-s3/refs/heads/main/capabilities/aws-s3-capability.yaml