AWS S3 API List - cloud-barista/cb-spider GitHub Wiki
AWS S3 API ๋ชฉ๋ก
๋ฒํท(Bucket) ๊ด๋ จ API
| API ์ด๋ฆ | HTTP ๋ฉ์๋ | ์ค๋ช | ์๋ํฌ์ธํธ |
|---|---|---|---|
| CreateBucket | PUT | ์๋ก์ด S3 ๋ฒํท ์์ฑ | PUT /{bucket} |
| DeleteBucket | DELETE | ๋น ๋ฒํท ์ญ์ | DELETE /{bucket} |
| ListBuckets | GET | ๊ณ์ ์ ๋ชจ๋ ๋ฒํท ๋ชฉ๋ก ์กฐํ | GET / |
| HeadBucket | HEAD | ๋ฒํท ์กด์ฌ ์ฌ๋ถ ๋ฐ ์ ๊ทผ ๊ถํ ํ์ธ | HEAD /{bucket} |
| GetBucketLocation | GET | ๋ฒํท์ ๋ฆฌ์ ์ ๋ณด ์กฐํ | GET /{bucket}?location |
๊ฐ์ฒด(Object) ๊ด๋ จ API
| API ์ด๋ฆ | HTTP ๋ฉ์๋ | ์ค๋ช | ์๋ํฌ์ธํธ |
|---|---|---|---|
| PutObject | PUT | ๊ฐ์ฒด๋ฅผ ๋ฒํท์ ์ ๋ก๋ | PUT /{bucket}/{key} |
| GetObject | GET | ๋ฒํท์์ ๊ฐ์ฒด ๋ค์ด๋ก๋ | GET /{bucket}/{key} |
| DeleteObject | DELETE | ๋ฒํท์์ ๊ฐ์ฒด ์ญ์ | DELETE /{bucket}/{key} |
| HeadObject | HEAD | ๊ฐ์ฒด ๋ฉํ๋ฐ์ดํฐ ์กฐํ | HEAD /{bucket}/{key} |
| CopyObject | PUT | ๊ฐ์ฒด๋ฅผ ๋ค๋ฅธ ์์น๋ก ๋ณต์ฌ | PUT /{bucket}/{key} |
| ListObjects | GET | ๋ฒํท์ ๊ฐ์ฒด ๋ชฉ๋ก ์กฐํ (v1) | GET /{bucket} |
| ListObjectsV2 | GET | ๋ฒํท์ ๊ฐ์ฒด ๋ชฉ๋ก ์กฐํ (v2) | GET /{bucket}?list-type=2 |
๋ฉํฐํํธ ์ ๋ก๋ ๊ด๋ จ API
| API ์ด๋ฆ | HTTP ๋ฉ์๋ | ์ค๋ช | ์๋ํฌ์ธํธ |
|---|---|---|---|
| CreateMultipartUpload | POST | ๋ฉํฐํํธ ์ ๋ก๋ ์์ | POST /{bucket}/{key}?uploads |
| UploadPart | PUT | ๋ฉํฐํํธ ์ ๋ก๋์ ํํธ ์ ๋ก๋ | PUT /{bucket}/{key}?partNumber={n}&uploadId={id} |
| CompleteMultipartUpload | POST | ๋ฉํฐํํธ ์ ๋ก๋ ์๋ฃ | POST /{bucket}/{key}?uploadId={id} |
| AbortMultipartUpload | DELETE | ๋ฉํฐํํธ ์ ๋ก๋ ์ทจ์ | DELETE /{bucket}/{key}?uploadId={id} |
| ListParts | GET | ์ ๋ก๋๋ ํํธ ๋ชฉ๋ก ์กฐํ | GET /{bucket}/{key}?uploadId={id} |
| ListMultipartUploads | GET | ์งํ ์ค์ธ ๋ฉํฐํํธ ์ ๋ก๋ ๋ชฉ๋ก ์กฐํ | GET /{bucket}?uploads |
๋ฒํท ์ ์ฑ ๋ฐ ACL ๊ด๋ จ API
| API ์ด๋ฆ | HTTP ๋ฉ์๋ | ์ค๋ช | ์๋ํฌ์ธํธ |
|---|---|---|---|
| PutBucketPolicy | PUT | ๋ฒํท ์ ์ฑ ์ค์ | PUT /{bucket}?policy |
| GetBucketPolicy | GET | ๋ฒํท ์ ์ฑ ์กฐํ | GET /{bucket}?policy |
| DeleteBucketPolicy | DELETE | ๋ฒํท ์ ์ฑ ์ญ์ | DELETE /{bucket}?policy |
| PutBucketAcl | PUT | ๋ฒํท ACL ์ค์ | PUT /{bucket}?acl |
| GetBucketAcl | GET | ๋ฒํท ACL ์กฐํ | GET /{bucket}?acl |
| PutObjectAcl | PUT | ๊ฐ์ฒด ACL ์ค์ | PUT /{bucket}/{key}?acl |
| GetObjectAcl | GET | ๊ฐ์ฒด ACL ์กฐํ | GET /{bucket}/{key}?acl |
๋ฒํท ์ค์ ๊ด๋ จ API
| API ์ด๋ฆ | HTTP ๋ฉ์๋ | ์ค๋ช | ์๋ํฌ์ธํธ |
|---|---|---|---|
| PutBucketVersioning | PUT | ๋ฒํท ๋ฒ์ ๋ ์ค์ | PUT /{bucket}?versioning |
| GetBucketVersioning | GET | ๋ฒํท ๋ฒ์ ๋ ์ํ ์กฐํ | GET /{bucket}?versioning |
| PutBucketCors | PUT | CORS ์ค์ | PUT /{bucket}?cors |
| GetBucketCors | GET | CORS ์ค์ ์กฐํ | GET /{bucket}?cors |
| DeleteBucketCors | DELETE | CORS ์ค์ ์ญ์ | DELETE /{bucket}?cors |
| PutBucketLifecycleConfiguration | PUT | ๋ผ์ดํ์ฌ์ดํด ์ ์ฑ ์ค์ | PUT /{bucket}?lifecycle |
| GetBucketLifecycleConfiguration | GET | ๋ผ์ดํ์ฌ์ดํด ์ ์ฑ ์กฐํ | GET /{bucket}?lifecycle |
| DeleteBucketLifecycle | DELETE | ๋ผ์ดํ์ฌ์ดํด ์ ์ฑ ์ญ์ | DELETE /{bucket}?lifecycle |
์น์ฌ์ดํธ ํธ์คํ ๊ด๋ จ API
| API ์ด๋ฆ | HTTP ๋ฉ์๋ | ์ค๋ช | ์๋ํฌ์ธํธ |
|---|---|---|---|
| PutBucketWebsite | PUT | ์น์ฌ์ดํธ ํธ์คํ ์ค์ | PUT /{bucket}?website |
| GetBucketWebsite | GET | ์น์ฌ์ดํธ ํธ์คํ ์ค์ ์กฐํ | GET /{bucket}?website |
| DeleteBucketWebsite | DELETE | ์น์ฌ์ดํธ ํธ์คํ ์ค์ ์ญ์ | DELETE /{bucket}?website |
ํ๊น ๋ฐ ๋ฉํ๋ฐ์ดํฐ ๊ด๋ จ API
| API ์ด๋ฆ | HTTP ๋ฉ์๋ | ์ค๋ช | ์๋ํฌ์ธํธ |
|---|---|---|---|
| PutBucketTagging | PUT | ๋ฒํท ํ๊ทธ ์ค์ | PUT /{bucket}?tagging |
| GetBucketTagging | GET | ๋ฒํท ํ๊ทธ ์กฐํ | GET /{bucket}?tagging |
| DeleteBucketTagging | DELETE | ๋ฒํท ํ๊ทธ ์ญ์ | DELETE /{bucket}?tagging |
| PutObjectTagging | PUT | ๊ฐ์ฒด ํ๊ทธ ์ค์ | PUT /{bucket}/{key}?tagging |
| GetObjectTagging | GET | ๊ฐ์ฒด ํ๊ทธ ์กฐํ | GET /{bucket}/{key}?tagging |
| DeleteObjectTagging | DELETE | ๊ฐ์ฒด ํ๊ทธ ์ญ์ | DELETE /{bucket}/{key}?tagging |
๊ธฐํ ์ ์ฉํ API
| API ์ด๋ฆ | HTTP ๋ฉ์๋ | ์ค๋ช | ์๋ํฌ์ธํธ |
|---|---|---|---|
| SelectObjectContent | POST | S3 Select๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ์ฒด ๋ด์ฉ ์ฟผ๋ฆฌ | POST /{bucket}/{key}?select&select-type=2 |
| RestoreObject | POST | Glacier์์ ๊ฐ์ฒด ๋ณต์ | POST /{bucket}/{key}?restore |
| PutBucketNotificationConfiguration | PUT | ์ด๋ฒคํธ ์๋ฆผ ์ค์ | PUT /{bucket}?notification |
| GetBucketNotificationConfiguration | GET | ์ด๋ฒคํธ ์๋ฆผ ์ค์ ์กฐํ | GET /{bucket}?notification |
์ฐธ๊ณ ์ฌํญ:
- ๋ชจ๋ API๋ AWS Signature Version 4๋ก ์ธ์ฆ์ด ํ์ํฉ๋๋ค
- ์๋ํฌ์ธํธ์ ๊ธฐ๋ณธ URL์
https://s3.{region}.amazonaws.comํ์์ ๋๋ค {bucket},{key},{id}๋ฑ์ ์ค์ ๊ฐ์ผ๋ก ์นํํด์ผ ํฉ๋๋ค- ์ผ๋ถ API๋ ํน์ ๋ฆฌ์ ์์๋ง ์ฌ์ฉ ๊ฐ๋ฅํ ์ ์์ต๋๋ค