Object

Data & Analytics > Data Lake Storage > Amazon S3 호환 API 가이드 > Object

DeleteObject

버킷에 저장된 객체를 삭제합니다.

요청

DELETE /{bucket}/{objectKey} HTTP/1.1

요청 헤더

Data Lake Storage API에서 공통으로 사용하는 헤더 정보는 Data Lake Storage API 요청 헤더 가이드를 참고하세요.

요청 파라미터

이름 구분 타입 필수 설명
bucket Path String Y 버킷 이름
objectKey Path String Y 객체 이름

응답

HTTP/1.1 204 No Content

DeleteObjects

하나의 요청으로 여러 객체를 삭제합니다. 한 번의 요청에 최대 1,000개의 객체 키를 지정할 수 있습니다.

요청

POST /{bucket}?delete HTTP/1.1

<?xml version="1.0" encoding="UTF-8"?>
<Delete>
  <Object>
    <ETag>string</ETag>
    <Key>string</Key>
    <LastModifiedTime>timestamp</LastModifiedTime>
    <Size>long</Size>
  </Object>
  ...
  <Quiet>Boolean</Quiet>
</Delete>

요청 헤더

Data Lake Storage API에서 공통으로 사용하는 헤더 정보는 Data Lake Storage API 요청 헤더 가이드를 참고하세요.

요청 파라미터

이름 구분 타입 필수 설명
bucket Path String Y 버킷 이름
Content-MD5 Header String Y 요청 본문의 MD5 해시 값(전송 중 변조 검증용)

요청 본문

이름 타입 필수 설명
Delete Object Y 요청의 루트 요소
Delete.Object Array Y 삭제할 객체 목록. 최대 1,000개
Delete.Object.ETag String N 객체의 ETag 값. 지정한 경우 ETag가 일치하는 객체만 삭제
Delete.Object.Key String Y 삭제할 객체 키
Delete.Object.LastModifiedTime String N 객체의 최종 수정 시간. 지정한 경우 해당 시간과 일치하는 객체만 삭제
Delete.Object.Size Long N 객체의 크기(바이트). 지정한 경우 해당 크기와 일치하는 객체만 삭제
Delete.Quiet Boolean N true로 설정하면 Quiet 모드로 동작하며, 실패한 항목만 응답에 포함. 기본값은 Verbose 모드(전체 결과 반환)

응답

HTTP/1.1 200 OK

<?xml version="1.0" encoding="UTF-8"?>
<DeleteResult>
  <Deleted>
    <Key>String</Key>
  </Deleted>
  ...
  <Error>
    <Key>String</Key>
    <Code>String</Code>
    <Message>String</Message>
  </Error>
  ...
</DeleteResult>

응답 본문

이름 타입 설명
DeleteResult Object 삭제 결과의 루트 요소
DeleteResult.Deleted Array 삭제에 성공한 객체 목록
DeleteResult.Deleted.Key String 삭제된 객체 키
DeleteResult.Error Array 삭제에 실패한 객체 목록
DeleteResult.Error.Key String 삭제에 실패한 객체 키
DeleteResult.Error.Code String 오류 코드
DeleteResult.Error.Message String 오류 메시지

GetObject

버킷에 저장된 객체를 조회합니다.

요청

GET /{bucket}/{objectKey} HTTP/1.1

요청 헤더

Data Lake Storage API에서 공통으로 사용하는 헤더 정보는 Data Lake Storage API 요청 헤더 가이드를 참고하세요.

요청 파라미터

이름 구분 타입 필수 설명
bucket Path String Y 버킷 이름
objectKey Path String Y 객체 이름
Range Header String N 부분 다운로드 범위
x-amz-storage-class Header String N 스토리지 클래스

응답

HTTP/1.1 200 OK
ETag: ETag
x-amz-checksum-crc32: ChecksumCRC32
x-amz-checksum-crc32c: ChecksumCRC32C
x-amz-checksum-crc64nvme: ChecksumCRC64NVME
x-amz-checksum-sha1: ChecksumSHA1
x-amz-checksum-sha256: ChecksumSHA256
x-amz-checksum-sha512: ChecksumSHA512
x-amz-checksum-md5: ChecksumMD5
x-amz-checksum-xxhash64: ChecksumXXHASH64
x-amz-checksum-xxhash3: ChecksumXXHASH3
x-amz-checksum-xxhash128: ChecksumXXHASH128
x-amz-checksum-type: ChecksumType

data

응답 헤더

필드 설명
ETag 특정 버전의 리소스에 서버가 할당하는 고유 식별자
x-amz-checksum-crc32 객체의 32비트 CRC32 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-crc32c 객체의 32비트 CRC32C 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-crc64nvme 객체의 64비트 CRC64NVME 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-sha1 객체의 160비트 SHA1 다이제스트 값을 Base64로 인코딩한 값
x-amz-checksum-sha256 객체의 256비트 SHA256 다이제스트 값을 Base64로 인코딩한 값
x-amz-checksum-sha512 객체의 512비트 SHA512 다이제스트 값을 Base64로 인코딩한 값
x-amz-checksum-md5 객체의 128비트 MD5 다이제스트 값을 Base64로 인코딩한 값
x-amz-checksum-xxhash64 객체의 64비트 XXHASH64 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-xxhash3 객체의 64비트 XXHASH3 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-xxhash128 객체의 128비트 XXHASH128 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-type 멀티파트 객체의 파트별 체크섬을 결합하여 객체 수준의 체크섬을 생성한 방식. 유효한 값: COMPOSITE \| FULL_OBJECT

HeadObject

버킷에 저장된 객체의 메타데이터를 조회합니다.

요청

HEAD /{bucket}/{objectKey} HTTP/1.1

요청 헤더

Data Lake Storage API에서 공통으로 사용하는 헤더 정보는 Data Lake Storage API 요청 헤더 가이드를 참고하세요.

요청 파라미터

이름 구분 타입 필수 설명
bucket Path String Y 버킷 이름
objectKey Path String Y 객체 이름
x-amz-storage-class Header String N 스토리지 클래스

응답

HTTP/1.1 200 OK
Content-Type: String
Content-Length: Long
ETag: String
Last-Modified: Timestamp
x-amz-storage-class: String
x-amz-meta-{key}: String
x-amz-checksum-crc32: ChecksumCRC32
x-amz-checksum-crc32c: ChecksumCRC32C
x-amz-checksum-crc64nvme: ChecksumCRC64NVME
x-amz-checksum-sha1: ChecksumSHA1
x-amz-checksum-sha256: ChecksumSHA256
x-amz-checksum-sha512: ChecksumSHA512
x-amz-checksum-md5: ChecksumMD5
x-amz-checksum-xxhash64: ChecksumXXHASH64
x-amz-checksum-xxhash3: ChecksumXXHASH3
x-amz-checksum-xxhash128: ChecksumXXHASH128
x-amz-checksum-type: ChecksumType

응답 헤더

필드 설명
Content-Length 응답 본문의 크기(바이트)
Content-Type 객체 데이터의 형식을 나타내는 표준 MIME 타입
ETag 특정 버전의 리소스에 서버가 할당하는 고유 식별자
Last-Modified 객체가 마지막으로 수정된 날짜 및 시간
x-amz-checksum-crc32 객체의 32비트 CRC32 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-crc32c 객체의 32비트 CRC32C 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-crc64nvme 객체의 64비트 CRC64NVME 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-sha1 객체의 160비트 SHA1 다이제스트 값을 Base64로 인코딩한 값
x-amz-checksum-sha256 객체의 256비트 SHA256 다이제스트 값을 Base64로 인코딩한 값
x-amz-checksum-sha512 객체의 512비트 SHA512 다이제스트 값을 Base64로 인코딩한 값
x-amz-checksum-md5 객체의 128비트 MD5 다이제스트 값을 Base64로 인코딩한 값
x-amz-checksum-xxhash64 객체의 64비트 XXHASH64 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-xxhash3 객체의 64비트 XXHASH3 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-xxhash128 객체의 128비트 XXHASH128 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-type 멀티파트 객체의 파트별 체크섬을 결합하여 객체 수준의 체크섬을 생성한 방식. 유효한 값: COMPOSITE \| FULL_OBJECT

ListObjectsV2

버킷에 저장된 객체 목록을 조회합니다.

요청

GET /{bucket}?list-type=2&continuation-token={continuationToken}&delimiter={delimiter}&encoding-type={encodingType}&fetch-owner={fetchOwner}&max-keys={maxKeys}&prefix={prefix}&start-after={startAfter} HTTP/1.1

요청 헤더

Data Lake Storage API에서 공통으로 사용하는 헤더 정보는 Data Lake Storage API 요청 헤더 가이드를 참고하세요.

요청 파라미터

이름 구분 타입 필수 설명
bucket Path String Y 버킷 이름
x-amz-storage-class Header String N 스토리지 클래스
list-type Parameter String Y 2 고정(V2 API 구분자)
continuation-token Parameter String N 다음 페이지 조회 식별자
delimiter Parameter String N 키 그룹 구분자(기본: /)
encoding-type Parameter String N 키 인코딩 방식
fetch-owner Parameter Boolean N 소유자 정보 포함 여부
max-keys Parameter Integer N 반환할 최대 객체 수
prefix Parameter String N 객체 이름 접두어
start-after Parameter String N 조회 시작 기준

응답

HTTP/1.1 200 OK

<?xml version="1.0" encoding="UTF-8"?>
<ListBucketResult>
  <Name>String</Name>
  <Prefix>String/</Prefix>
  <StartAfter>String</StartAfter>
  <ContinuationToken>String</ContinuationToken>
  <NextContinuationToken>String</NextContinuationToken>
  <KeyCount>Integer</KeyCount>
  <MaxKeys>Integer</MaxKeys>
  <Delimiter>String</Delimiter>
  <IsTruncated>Boolean</IsTruncated>
  <EncodingType>String</EncodingType>
  <Contents>
    <ChecksumAlgorithm>string</ChecksumAlgorithm>
    ...
    <ChecksumType>string</ChecksumType>
    <Key>String</Key>
    <LastModified>Timestamp</LastModified>
    <ETag>String</ETag>
    <Size>Long</Size>
    <StorageClass>String</StorageClass>
    <Owner>
      <ID>String</ID>
    </Owner>
  </Contents>
  <CommonPrefixes>
    <Prefix>String</Prefix>
  </CommonPrefixes>
</ListBucketResult>

응답 본문

이름 타입 설명
ListBucketResult Object 객체 목록 조회 결과
ListBucketResult.Name String 버킷 이름
ListBucketResult.Prefix String 요청 시 지정한 객체 이름 접두어
ListBucketResult.StartAfter String 요청 시 지정한 조회 시작 기준
ListBucketResult.ContinuationToken String 이번 요청에 사용된 페이지 조회 식별자
ListBucketResult.NextContinuationToken String 다음 페이지 요청 시 사용할 페이지 조회 식별자
ListBucketResult.KeyCount Integer 응답 객체 수
ListBucketResult.MaxKeys Integer 요청 시 지정한 최대 객체 수
ListBucketResult.Delimiter String 요청 시 지정한 키 그룹 구분자
ListBucketResult.IsTruncated Boolean 추가 페이지 존재 여부
ListBucketResult.Contents Array 객체 목록
ListBucketResult.Contents.ChecksumAlgorithm Array 객체의 체크섬 생성에 사용된 알고리즘
ListBucketResult.Contents.ChecksumType String 객체의 체크섬 값을 계산하는 방식
ListBucketResult.Contents.Key String 객체 키
ListBucketResult.Contents.LastModified Timestamp 마지막 수정 일시 (ISO 8601 형식)
ListBucketResult.Contents.ETag String 객체 고유 식별자
ListBucketResult.Contents.Size Long 객체 크기(바이트)
ListBucketResult.Contents.StorageClass String 스토리지 클래스
ListBucketResult.Contents.Owner.ID String 소유자 ID (fetch-owner=true 시 포함)
ListBucketResult.CommonPrefixes Array delimiter 기준으로 그룹화된 공통 prefix 목록
ListBucketResult.CommonPrefixes.Prefix String delimiter 기준으로 그룹화된 경로

PutObject

버킷에 객체를 저장합니다.

요청

PUT /{bucket}/{objectKey} HTTP/1.1
Content-Length: ContentLength
Content-MD5: ContentMD5
x-amz-sdk-checksum-algorithm: ChecksumAlgorithm
x-amz-checksum-crc32: ChecksumCRC32
x-amz-checksum-crc32c: ChecksumCRC32C
x-amz-checksum-crc64nvme: ChecksumCRC64NVME
x-amz-checksum-sha1: ChecksumSHA1
x-amz-checksum-sha256: ChecksumSHA256
x-amz-checksum-sha512: ChecksumSHA512
x-amz-checksum-md5: ChecksumMD5
x-amz-checksum-xxhash64: ChecksumXXHASH64
x-amz-checksum-xxhash3: ChecksumXXHASH3
x-amz-checksum-xxhash128: ChecksumXXHASH128

Body

요청 헤더

Data Lake Storage API에서 공통으로 사용하는 헤더 정보는 Data Lake Storage API 요청 헤더 가이드를 참고하세요.

필드 필수 여부 설명
Content-Length N 요청 본문의 크기(바이트)입니다. 본문의 크기를 자동으로 결정할 수 없는 경우 사용.
Content-MD5 N RFC 1864에 따라 메시지 본문을 128비트 MD5 다이제스트로 계산한 후 Base64로 인코딩한 값. 데이터 무결성 검증을 위해 사용할 수 있으며, 필수는 아니지만 종단 간 무결성 검증 수단으로 사용하는 것을 권장
x-amz-checksum-crc32 N 객체의 32비트 CRC32 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-crc32c N 객체의 32비트 CRC32C 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-crc64nvme N 객체의 64비트 CRC64NVME 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-sha1 N 객체의 160비트 SHA1 다이제스트 값을 Base64로 인코딩한 값
x-amz-checksum-sha256 N 객체의 256비트 SHA256 다이제스트 값을 Base64로 인코딩한 값
x-amz-checksum-sha512 N 객체의 512비트 SHA512 다이제스트 값을 Base64로 인코딩한 값
x-amz-checksum-md5 N 객체의 128비트 MD5 다이제스트 값을 Base64로 인코딩한 값
x-amz-checksum-xxhash64 N 객체의 64비트 XXHASH64 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-xxhash3 N 객체의 64비트 XXHASH3 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-xxhash128 N 객체의 128비트 XXHASH128 체크섬 값을 Base64로 인코딩한 값
x-amz-sdk-checksum-algorithm N SDK를 사용하여 객체의 체크섬을 생성할 때 사용한 알고리즘을 지정. 이 헤더를 전송할 경우 반드시 x-amz-checksum-algorithm 또는 x-amz-trailer 헤더를 함께 전송해야 하며, 그렇지 않을 경우 HTTP 400 오류가 반환됨

요청 파라미터

이름 구분 타입 필수 설명
bucket Path String Y 버킷 이름
objectKey Path String Y 객체 이름
Content-Type Header String N 객체 콘텐츠 타입
Content-Length Header Long Y 객체 크기(바이트)
x-amz-storage-class Header String N 스토리지 클래스
x-amz-meta-* Header String N 사용자 정의 메타데이터

요청 본문

이름 타입 필수 설명
Body Binary Y 객체 데이터

응답

HTTP/1.1 200 OK
ETag: String
x-amz-checksum-crc32: ChecksumCRC32
x-amz-checksum-crc32c: ChecksumCRC32C
x-amz-checksum-crc64nvme: ChecksumCRC64NVME
x-amz-checksum-sha1: ChecksumSHA1
x-amz-checksum-sha256: ChecksumSHA256
x-amz-checksum-sha512: ChecksumSHA512
x-amz-checksum-md5: ChecksumMD5
x-amz-checksum-xxhash64: ChecksumXXHASH64
x-amz-checksum-xxhash3: ChecksumXXHASH3
x-amz-checksum-xxhash128: ChecksumXXHASH128
x-amz-checksum-type: ChecksumType

응답 헤더

필드 설명
ETag 업로드된 객체의 엔티티 태그. ETag가 객체의 MD5 다이제스트인 경우, 객체 업로드 시 계산한 MD5 값과 반환된 ETag를 비교하여 데이터 무결성을 확인 가능
x-amz-checksum-crc32 객체의 32비트 CRC32 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-crc32c 객체의 32비트 CRC32C 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-crc64nvme 객체의 64비트 CRC64NVME 체크섬 값을 Base64로 인코딩한 값. CRC64NVME 알고리즘으로 업로드되었거나, 체크섬 없이 업로드되어 기본 체크섬(CRC64NVME)이 자동으로 추가된 경우에 응답에 포함됩니다.
x-amz-checksum-sha1 객체의 160비트 SHA1 다이제스트 값을 Base64로 인코딩한 값
x-amz-checksum-sha256 객체의 256비트 SHA256 다이제스트 값을 Base64로 인코딩한 값
x-amz-checksum-sha512 객체의 512비트 SHA512 다이제스트 값을 Base64로 인코딩한 값
x-amz-checksum-md5 객체의 128비트 MD5 다이제스트 값을 Base64로 인코딩한 값
x-amz-checksum-xxhash64 객체의 64비트 XXHASH64 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-xxhash3 객체의 64비트 XXHASH3 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-xxhash128 객체의 128비트 XXHASH128 체크섬 값을 Base64로 인코딩한 값
x-amz-checksum-type 멀티파트 객체의 파트별 체크섬을 결합하여 객체 수준의 체크섬을 생성한 방식. PutObject 업로드의 경우 항상 FULL_OBJECT로 반환됨
TOP