S3: Single Usage Event
Supported Aliases: /s3/single
Required Headers
Header | Value |
---|---|
Content-Type | application/json |
X-API-Key | <x-api-key> |
Request Body Content
Like all ingestion endpoints, the S3 endpoint accepts a body containing the description of a single event. The event may be one of the event types enumerated below.
Note that fractional seconds in timestamps are allowed but will be ignored, because S3 event timestamps have a maximum granularity of seconds (see docs). This applies in addition to the timestamp guidelines specified here.
”Object Modification” Event Types
The event type, which in this case is ‘GetObject’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket containing the object.
The key of the downloaded object.
The version ID of the downloaded object, if versioning is enabled.
The size of the object in bytes.
Whether this GetObject
event resulted in outflow of data that meets the
conditions to be charged by the provider. Under certain conditions, such
as the use of CDNs or same-region
instances,
the data downloaded is not be billed. Note that the event incurs API call
charges regardless. If this field is left empty, it defaults to true
.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘PutObject’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket into which the object was uploaded.
The key of the uploaded object.
The version ID of the uploaded object, if versioning is enabled.
The size of the object in bytes.
The category of the object. Can be used as a file type, e.g. “JPG”.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘PostObject’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket into which the object was uploaded.
The key of the uploaded object.
The version ID of the uploaded object, if versioning is enabled.
The size of the object in bytes.
The category of the object. Can be used as a file type, e.g. “JPG”.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘CopyObject’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the destination bucket.
The key of the destination object.
The version ID of the destination object, if versioning is enabled.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘DeleteObject’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket containing the deleted object.
The key of the deleted object.
The version ID of the delete marker that was created in the case that this was a “soft delete” (i.e., the underlying object version was not actually removed). Only applies if versioning is enabled.
The version ID of the “hard deleted” object that was truly removed from the bucket. The version ID may refer to an object with meaningful content, or it may refer to a delete marker. Only applies if versioning is enabled.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘DeleteObjects’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket from which the objects were deleted.
An array of entries: one for each object which was deleted.
The key of the deleted object.
The version ID of the delete marker that was created in the case that this was a “soft delete” (i.e., the underlying object version was not actually removed). Only applies if versioning is enabled.
The version ID of the “hard deleted” object that was truly removed from the bucket. The version ID may refer to an object with meaningful content, or it may refer to a delete marker. Only applies if versioning is enabled.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
”Multipart Upload” Event Types
The event type, which in this case is ‘CreateMultipartUpload’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket to which the object was uploaded.
The key of the object being uploaded in parts.
The unique identifier for the multipart upload.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the multipart upload.
The unique identifier of the client or device that initiated the multipart upload.
The event type, which in this case is ‘CompleteMultipartUpload’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket to which the multipart upload was made.
The key of the uploaded object.
The version ID of the uploaded object, if versioning is enabled.
The unique identifier for the completed multipart upload.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that completed the multipart upload.
The unique identifier of the client or device that completed the multipart upload.
The event type, which in this case is ‘AbortMultipartUpload’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket where the multipart upload was taking place.
The unique identifier for the aborted multipart upload.
The identifier of the customer responsible for triggering the multipart upload.
The identifier of the feature related to the multipart upload.
The type of client or device that initiated the abort action.
The unique identifier of the client or device that initiated the abort action.
The event type, which in this case is ‘UploadPart’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket where the part was uploaded.
The unique identifier for the multipart upload session.
The part number of the uploaded part.
The size of the uploaded part in bytes.
The identifier of the customer responsible for triggering the upload.
The identifier of the feature related to the upload.
The type of client or device that initiated the upload part.
The unique identifier of the client or device that initiated the upload part.
The event type, which in this case is ‘UploadPartCopy’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the destination bucket where the copied part was uploaded.
The unique identifier for the multipart upload session in which the part was copied.
The part number of the uploaded copy.
The identifier of the customer responsible for triggering the upload.
The identifier of the feature related to the upload.
The type of client or device that initiated the upload part copy.
The unique identifier of the client or device that initiated the upload part copy.
The event type, which in this case is ‘ListParts’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket where the multipart upload is taking place.
The unique identifier for the multipart upload session whose parts were listed.
The identifier of the customer responsible for triggering the listing.
The identifier of the feature related to the multipart upload.
The type of client or device that initiated the list parts action.
The unique identifier of the client or device that initiated the list parts action.
The event type, which in this case is ‘ListMultipartUploads’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket in which multipart uploads were listed.
The identifier of the customer responsible for triggering listing of the multipart uploads.
The identifier of the feature related to the multipart uploads.
The type of client or device that initiated the list multipart uploads action.
The unique identifier of the client or device that initiated the list multipart uploads action.
”Global” Event Types
The event type, which in this case is ‘ListBuckets’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
”Per-Bucket” Event Types
The event type, which in this case is ‘DeleteBucket’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket to be deleted.
A boolean indicating whether the deletion was be forced. (This applies to Wasabi only and means that all extant objects in the bucket will be forcibly removed first. For other providers, buckets can only be deleted when they contain no objects.)
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘HeadBucket’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket to be accessed.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘CreateBucket’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket to be created.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘GetBucketAcl’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket for which the ACL (Access Control List) was retrieved.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘GetBucketCors’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket for which the CORS (Cross-Origin Resource Sharing) configuration was retrieved.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘GetBucketEncryption’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket for which the encryption settings are being retrieved.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘GetBucketLocation’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket for which the location information was retrieved.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘GetBucketVersioning’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket for which the versioning information was retrieved.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘PutBucketAcl’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket for which the ACL (Access Control List) was set.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘PutBucketCors’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket for which the CORS (Cross-Origin Resource Sharing) settings were set.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘PutBucketEncryption’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket for which the encryption settings were set.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘DeleteBucketCors’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket for which the CORS (Cross-Origin Resource Sharing) settings were deleted.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘DeleteBucketEncryption’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket for which the encryption settings are being deleted.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘GetObjectLockConfiguration’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket for which the object lock configuration was retrieved.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘PutObjectLockConfiguration’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket for which the object lock configuration was set.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘ListObjectsV2’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket for which objects were listed.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘ListObjectVersions’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket containing the object.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
”Simple Per-Object” Event Types
The event type, which in this case is ‘HeadObject’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket in which the object is stored.
The key of the accessed object.
The version ID of the accessed object, if versioning is enabled.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘GetObjectAcl’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket containing the object.
The key of the object for which the Access Control List (ACL) was retrieved.
The version ID of the object, if versioning is enabled.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘PutObjectAcl’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket containing the object.
The key of the object for which the Access Control List (ACL) was set.
The version ID of the object, if versioning is enabled.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘GetObjectRetention’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket containing the object.
The key of the object for which the retention information was retrieved.
The version ID of the object, if versioning is enabled.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘PutObjectRetention’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket containing the object.
The key of the object for which the retention policy was set.
The version ID of the object, if versioning is enabled.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘GetObjectLegalHold’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket containing the object.
The key of the object for which the legal hold status was retrieved.
The version ID of the object, if versioning is enabled.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.
The event type, which in this case is ‘PutObjectLegalHold’.
The timestamp at which the event took place, as indicated by the Date
header of the S3 HTTP response. ISO 8601 UTC format without fractional
seconds is recommended.
The storage service provider.
The name of the bucket containing the object.
The key of the object for which the legal hold was set.
The version ID of the object, if versioning is enabled.
The identifier of the customer responsible for triggering the event.
The identifier of the feature involved in the event.
The type of client or device that initiated the event.
The unique identifier of the client or device that initiated the event.