title: “S3 Object Operations” created: 2026-07-20 updated: 2026-07-20 type: knowledge tags:
- aws
- s3
- storage
- certification
S3 Object Operations
What It Is
The core CRUD operations you perform on S3 objects: upload (PUT), download (GET), list, copy, and delete.
Why It Matters
Understanding S3 API operations is essential for both the certification exam and day-to-day cloud work. Permissions are granted at the operation level (e.g., s3:PutObject, s3:GetObject).
Key Concepts
Upload (PutObject)
- Via Console: upload wizard (drag-and-drop or file picker)
- Via CLI:
aws s3 cp <local-file> s3://<bucket>/ - Via SDK:
putObject()API call - Single PUT max: 5 GB
- Multipart upload recommended for files > 100 MB (required > 5 GB)
Download (GetObject)
- Via Console: select object → download
- Via CLI:
aws s3 cp s3://<bucket>/<key> <local-path> - Via pre-signed URL for temporary access
Object URL
Each object has a URL: https://<bucket>.s3.<region>.amazonaws.com/<key>
Accessing this URL returns the object only if permissions allow it. By default: Access Denied.
Metadata
- System metadata: Content-Type, Content-Length, Last-Modified, ETag
- User-defined metadata: key-value pairs prefixed with
x-amz-meta- - Metadata is immutable after upload (must re-upload to change)
List (ListObjects)
aws s3 ls s3://<bucket>/— lists objects in a bucket- Returns key, size, last modified date
Gotchas
- Uploading an object with the same key overwrites it (unless versioning is enabled)
- S3 has no native “rename” — you copy to new key and delete the old one
- Large file uploads should always use multipart to handle network failures gracefully
See Also
- [[s3-fundamentals]]
- [[s3-versioning]]
- [[aws-cli-s3-commands]]
- [[s3-bucket-policies]]