

 **이 페이지는 볼트와 2012년부터 원래 REST API를 사용하는 Amazon Glacier 서비스의 기존 고객만 사용할 수 있습니다.**

아카이브 스토리지 솔루션을 찾고 있다면 Amazon S3의 Amazon Glacier 스토리지 클래스, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval 및 S3 Glacier Deep Archive를 사용하는 것이 좋습니다. 이러한 스토리지 옵션에 대한 자세한 내용은 [Amazon Glacier 스토리지 클래스](https://aws.amazon.com/s3/storage-classes/glacier/)를 참조하세요.

Amazon Glacier(기존 독립 실행형 볼트 기반 서비스)는 더 이상 신규 고객을 받지 않습니다. Amazon Glacier는 데이터를 볼트에 저장하고 Amazon S3 및 Amazon S3 Glacier 스토리지 클래스와 구별되는 자체 API를 갖춘 독립 실행형 서비스입니다. 기존 데이터는 Amazon Glacier에서 무기한으로 안전하게 보관되며 액세스 가능합니다. 마이그레이션은 필요하지 않습니다. 저비용 장기 아카이브 스토리지의 경우는 [S3 버킷 기반 API, 전체 가용성, 저렴한 비용 및 서비스 통합을 통해 우수한 고객 경험을 제공하는 Amazon S3 Glacier 스토리지 클래스](https://aws.amazon.com/s3/storage-classes/glacier/)를 AWS 권장합니다. S3 APIs AWS 리전 AWS 향상된 기능을 원하는 경우 [Amazon Glacier 볼트에서 Amazon S3 Glacier 스토리지 클래스로 데이터를 전송하기 위한AWS 솔루션 지침](https://aws.amazon.com/solutions/guidance/data-transfer-from-amazon-s3-glacier-vaults-to-amazon-s3/)을 사용하여 Amazon S3 Glacier 스토리지 클래스로 마이그레이션하는 것이 좋습니다.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Amazon Glacier를 위한 API 참조
<a name="amazon-glacier-api"></a>

Amazon Glacier는 서비스와 상호 작용할 수 있도록 작업 세트, 특히 RESTful API 직접 호출 세트를 지원합니다.

HTTP 요청을 보낼 수 있는 프로그래밍 라이브러리를 사용하여 사용자의 REST 요청을 Amazon Glacier로 전송할 수 있습니다. REST 요청을 Amazon Glacier로 전송할 때는 요청에 서명하여 모든 요청을 인증해야 합니다. 또한 아카이브를 업로드할 때는 페이로드 체크섬까지 계산하여 요청에 추가해야 합니다. 자세한 내용은 [요청에 서명하기](amazon-glacier-signing-requests.md) 섹션을 참조하세요.

오류가 발생할 경우에는 오류를 처리할 있도록 Amazon Glacier가 오류 응답으로 보내는 정보를 알아야 합니다. 이 섹션에서는 직접 REST API를 호출할 수 있도록 REST 작업은 물론이고 이러한 정보까지 모두 살펴보도록 하겠습니다.

REST API 직접 호출을 직접 사용하거나, 래퍼 라이브러리를 제공하는 Amazon SDK를 사용할 수 있습니다. 이 라이브러리는 각각 전송되는 요청에 서명하고 페이로드 체크섬을 계산합니다. 따라서 Amazon SDK를 사용할 때 코딩 작업이 더욱 간편합니다. 이 개발자 안내서에서는 AWS SDK for Java 및 .NET을 사용하는 기본 Amazon Glacier 작업 예시를 제공합니다. 자세한 내용은 [Amazon Glacier에서 AWS SDKs 사용](using-aws-sdk.md) 섹션을 참조하세요.

**Topics**
+ [

# 공통 요청 헤더
](api-common-request-headers.md)
+ [

# 공통 응답 헤더
](api-common-response-headers.md)
+ [

# 요청에 서명하기
](amazon-glacier-signing-requests.md)
+ [

# 체크섬 계산
](checksum-calculations.md)
+ [

# 오류 응답
](api-error-responses.md)
+ [

# 볼트 작업
](vault-operations.md)
+ [

# 아카이브 작업
](archive-operations.md)
+ [

# 멀티파트 업로드 작업
](multipart-archive-operations.md)
+ [

# 작업
](job-operations.md)
+ [

# 작업에서 사용되는 데이터 형식
](api-data-types.md)
+ [

# 데이터 가져오기 작업
](data-retrieval-policy-operations.md)

# 공통 요청 헤더
<a name="api-common-request-headers"></a>

Amazon Glacier(Amazon Glacier) REST 요청에는 요청에 대한 기본 정보가 있는 헤더가 포함됩니다. 다음 표에서는 모든 Amazon Glacier REST 요청에서 사용할 수 있는 헤더를 설명합니다.


| 헤더 이름 | 설명 | 필수 | 
| --- | --- | --- | 
| Authorization |  요청에 서명하는 데 필요한 헤더입니다. Amazon Glacier에는 서명 버전 4가 필요합니다. 자세한 내용은 [요청에 서명하기](amazon-glacier-signing-requests.md) 섹션을 참조하세요. 유형: 문자열  | 예 | 
| Content-Length |  요청 본문(헤더 제외) 길이입니다. 유형: 문자열 조건: [아카이브 업로드(POST archive)](api-archive-post.md) API에만 필요합니다.  | 조건부 | 
| Date |  `Authorization` 헤더에 포함되는 서명을 생성할 때 사용할 수 있는 날짜입니다. 서명할 때 `Date` 헤더를 사용해야 하는 경우에는 ISO 8601 기본 형식에 따라 지정해야 합니다. 이때 `x-amz-date` 헤더는 필요하지 않습니다. `x-amz-date`가 있으면 항상 `Date` 헤더 값보다 우선하기 때문입니다. 서명할 때 Date 헤더가 사용되지 않는 경우 [RFC 2616](http://tools.ietf.org/html/rfc2616#section-3.3) 섹션 3.3에 지정된 전체 날짜 형식 중 하나일 수 있습니다. 예를 들어 다음의 날짜/시간 `Wed, 10 Feb 2017 12:00:00 GMT`는 Amazon Glacier에서 사용할 수 있는 유효한 날짜/시간 헤더입니다. 서명에 `Date` 헤더를 사용할 때는 ISO 8601 기본 `YYYYMMDD'T'HHMMSS'Z'` 형식을 따라야 합니다. 유형: 문자열 조건: `Date`를 지정하면서 ISO 8601 기본 형식을 따르지 않는 경우에는 `x-amz-date` 헤더도 포함해야 합니다. ISO 8601 기본 형식에 따라 `Date`를 지정하는 경우에는 이 헤더만으로도 요청 서명이 가능하므로 `x-amz-date` 헤더가 필요 없습니다. 자세한 정보는 **Amazon Web Services 용어집의 [서명 버전 4의 날짜 처리](https://docs.aws.amazon.com/general/latest/gr/sigv4-date-handling.html) 섹션을 참조하세요.  | 조건부  | 
| Host |  이 헤더는 요청을 전송하는 서비스 엔드포인트를 지정합니다. 헤더 값은 ‘`glacier.region.amazonaws.com`‘ 형식을 따라야 하며, 여기에서 *region*은 `us-west-2`와 같은 AWS 리전 지정으로 치환됩니다. 유형: 문자열  | 예 | 
| x-amz-content-sha256 |  [아카이브 업로드(POST archive)](api-archive-post.md) 또는 [파트 업로드(PUT uploadID)](api-upload-part.md)로 업로드되는 전체 페이로드에 대해 계산된 SHA256 체크섬입니다. 이 헤더는 `x-amz-sha256-tree-hash` 헤더와 같지 않지만 일부 작은 페이로드의 경우에는 값이 동일합니다. `x-amz-content-sha256`이 필요한 경우에는 `x-amz-content-sha256`과 `x-amz-sha256-tree-hash`를 모두 지정해야 합니다. 유형: 문자열 조건: API, [아카이브 업로드(POST archive)](api-archive-post.md) 및 [파트 업로드(PUT uploadID)](api-upload-part.md)를 스트리밍하는 데 필요합니다.  | 조건부 | 
| x-amz-date |  Authorization 헤더에서 서명을 생성할 때 사용하는 날짜입니다. 형식은 ISO 8601 기본 형식(`YYYYMMDD'T'HHMMSS'Z'`)을 따라야 합니다. 예를 들어 다음 날짜/시간 `20170210T120000Z`는 Amazon Glacier에서 사용할 수 있는 유효한 `x-amz-date`입니다. 유형: 문자열 조건: `x-amz-date`는 모든 요청에서 옵션이지만 서명 요청에 사용되는 날짜보다 우선할 때 사용됩니다. `Date` 헤더가 ISO 8601 기본 형식으로 지정되면 `x-amz-date`는 필요하지 않습니다. `x-amz-date`가 있으면 항상 `Date` 헤더 값보다 우선하기 때문입니다. 자세한 정보는 **Amazon Web Services 용어집의 [서명 버전 4의 날짜 처리](https://docs.aws.amazon.com/general/latest/gr/sigv4-date-handling.html) 섹션을 참조하세요.  | 조건부 | 
| x-amz-glacier-version |  사용할 Amazon Glacier API 버전입니다. 현재 버전은 `2012-06-01`입니다. 유형: 문자열  | 예 | 
| x-amz-sha256-tree-hash |  업로드된 아카이브([아카이브 업로드(POST archive)](api-archive-post.md)) 또는 아카이브 파트([파트 업로드(PUT uploadID)](api-upload-part.md))에 대해 계산된 SHA256 트리-해시 체크섬입니다. 이 체크섬 계산에 대한 자세한 내용은 [체크섬 계산](checksum-calculations.md) 섹션을 참조하세요. 유형: 문자열 기본값: 없음 조건: [아카이브 업로드(POST archive)](api-archive-post.md) 및 [파트 업로드(PUT uploadID)](api-upload-part.md)에 필요합니다.  | 조건부 | 

# 공통 응답 헤더
<a name="api-common-response-headers"></a>

다음은 대부분 API 응답에 공통적으로 나타나는 응답 헤더를 설명한 표입니다.


|  이름  |  설명  | 
| --- | --- | 
| Content-Length |  응답 본문의 길이(바이트)입니다. 유형: 문자열  | 
| Date |  Amazon Glacier(Amazon Glacier)가 응답한 날짜 및 시간입니다(예: `Wed, 10 Feb 2017 12:00:00 GMT`). 날짜 형식은 [RFC 2616](https://datatracker.ietf.org/doc/html/rfc2616#section-3.3) 섹션 3.3에 지정된 전체 날짜 형식 중 하나여야 합니다. 반환되는 `Date`는 다른 날짜와 약간 다를 수도 있습니다. 예를 들어 [아카이브 업로드(POST archive)](api-archive-post.md) 요청에서 반환되는 날짜는 아카이브 목적으로 볼트의 인벤토리 목록에 표시되는 날짜와 일치하지 않는 경우도 있습니다. 유형: 문자열  | 
| x-amzn-RequestId |  사용자의 요청을 고유하게 식별하기 위해 Amazon Glacier에서 생성된 값입니다. Amazon Glacier에 문제가 있을 경우 AWS가 이 값을 사용하여 문제를 해결할 수 있습니다. 따라서 이 값을 기록해두는 것이 좋습니다. 유형: 문자열  | 
| x-amz-sha256-tree-hash​ |  아카이브 또는 인벤토리 본문의 SHA256 트리-해시 체크섬입니다. 이 체크섬 계산에 대한 자세한 내용은 [체크섬 계산](checksum-calculations.md) 섹션을 참조하세요. 유형: 문자열  | 

# 요청에 서명하기
<a name="amazon-glacier-signing-requests"></a>

Amazon Glacier는 사용자가 요청에 서명하여, 보낸 모든 요청을 인증하도록 요구합니다. 요청에 서명하려면 암호화 해시 함수를 이용해 디지털 서명을 계산해야 합니다. 암호화 해시는 입력을 근거로 하여 고유 해시 값을 반환하는 함수입니다. 해시 함수에 대한 입력에는 요청 텍스트와 시크릿 액세스 키가 포함됩니다. 해시 함수는 요청에 서명으로 포함하는 해시 값을 반환합니다. 서명은 요청에서 `Authorization` 헤더의 일부입니다.

Amazon Glacier는 요청을 수신한 후 사용자가 요청에 서명할 때 사용한 것과 동일한 해시 함수 및 입력을 사용하여 서명을 재계산합니다. 결과 서명이 요청 서명과 일치할 경우 Amazon Glacier가 요청을 처리합니다. 그렇지 않으면 요청이 거부됩니다.

Amazon Glacier는 [AWS 서명 버전 4](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html)를 사용한 인증을 지원합니다. 서명을 계산하기 위한 프로세스는 다음 세 작업으로 나뉠 수 있습니다.

 
+   [작업 1: 표준 요청 생성](https://docs.aws.amazon.com/general/latest/gr/sigv4-create-canonical-request.html)

  HTTP 요청을 정규 형식으로 재배열합니다. 정규 형식을 사용해야 하는 이유는 Amazon Glacier가 서명을 재계산하여 사용자가 전송한 서명과 비교할 때 동일한 정규 형식을 사용하기 때문입니다.
+   [작업 2: 서명할 문자열 생성](https://docs.aws.amazon.com/general/latest/gr/sigv4-create-string-to-sign.html)

  암호화 해시 함수에 대한 입력 값 중 하나로 사용할 문자열을 만듭니다. *서명할 문자열*이라는 문자열은 해시 알고리즘의 이름, 요청 날짜, *자격 증명 범위* 문자열, 이전 작업에서 정규화된 요청을 연결한 것입니다. *자격 증명 범위* 문자열 자체는 날짜, AWS 리전 및 서비스 정보의 연결입니다.
+   [작업 3: 서명 생성](https://docs.aws.amazon.com/general/latest/gr/sigv4-calculate-signature.html)

  *서명할 문자열*과 *파생된 키*의 두 입력 문자열을 허용하는 암호화 해시 함수를 사용하여 요청에 대한 서명을 만듭니다. *파생된 키*는 시크릿 액세스 키로 시작해서 *자격 증명 범위* 문자열을 사용하여 일련의 해시 기반 메시지 인증 코드(HMAC)를 만들어 계산됩니다. 단, 이 서명 단계에서 사용하는 해시 함수는 데이터 업로드를 위해 Amazon Glacier API에서 사용하는 트리 해시 알고리즘이 아닙니다.

**Topics**
+ [

## 서명 계산 예시
](#example-signature-calculation)
+ [

## 스트리밍 작업을 위한 서명 계산
](#signature-calculation-streaming)

## 서명 계산 예시
<a name="example-signature-calculation"></a>

다음 예시에서는 [볼트 만들기(PUT vault)](api-vault-put.md)에 대해 서명을 생성하는 세부 과정을 안내합니다. 이 예시는 서명 계산 방법을 점검하기 위한 참조로 사용할 수 있습니다. 자세한 내용은 *IAM 사용 설명서*의 [AWS API 요청 서명을](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-signing.html) 참조하세요.

이 예시에서는 다음과 같이 가정합니다.
+ 요청 타임스탬프는 `Fri, 25 May 2012 00:24:53 GMT`입니다.
+ 엔드포인트는 미국 동부(버지니아 북부) 리전인 ` us-east-1`입니다.

일반 요청 구문(JSON 본문 포함)은 다음과 같습니다.

```
PUT /-/vaults/examplevault HTTP/1.1
Host: glacier.us-east-1.amazonaws.com
Date: Fri, 25 May 2012 00:24:53 GMT
Authorization: SignatureToBeCalculated
x-amz-glacier-version: 2012-06-01
```

[작업 1: 표준 요청 생성](#SignatureCalculationTask1)에서 계산되는 요청의 정규 형식은 다음과 같습니다.

 

```
PUT
/-/vaults/examplevault

host:glacier.us-east-1.amazonaws.com
x-amz-date:20120525T002453Z
x-amz-glacier-version:2012-06-01

host;x-amz-date;x-amz-glacier-version
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
```

표준 요청의 마지막 줄은 요청 본문의 해시입니다. 또한 표준 요청에서 비어 있는 세 번째 줄에 주의해야 합니다. 비어 있는 이유는 이 API에 대해 쿼리 파라미터가 없기 때문입니다.

**[작업 2: 서명할 문자열 생성](#SignatureCalculationTask2)에서 서명할 문자열은 다음과 같습니다.

 

```
AWS4-HMAC-SHA256
20120525T002453Z
20120525/us-east-1/glacier/aws4_request
5f1da1a2d0feb614dd03d71e87928b8e449ac87614479332aced3a701f916743
```

 

*서명할 문자열*의 첫째 줄은 알고리즘, 둘째 줄은 타임스탬프, 셋째 줄은 *자격 증명 범위*, 마지막 줄은 [작업 1: 표준 요청 생성](#SignatureCalculationTask1)의 표준 요청에 대한 해시입니다. 자격 증명 범위에서 사용하는 서비스 이름은 `glacier`입니다.

[작업 3: 서명 생성](#SignatureCalculationTask3)에서 *파생된 키*는 다음과 같이 표현할 수 있습니다.

 

```
derived key = HMAC(HMAC(HMAC(HMAC("AWS4" + YourSecretAccessKey,"20120525"),"us-east-1"),"glacier"),"aws4_request")
```

시크릿 액세스 키인 `wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY`를 사용하는 경우, 계산된 서명은 다음과 같습니다.

 

```
3ce5b2f2fffac9262b4da9256f8d086b4aaf42eba5f111c21681a65a127b7c2a
```

 

마지막 단계는 `Authorization` 헤더를 생성하는 것입니다. 데모용 액세스 키 `AKIAIOSFODNN7EXAMPLE`의 경우 헤더는 다음과 같습니다(가독성을 높이기 위해 줄 바꿈을 추가함).

 

```
Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20120525/us-east-1/glacier/aws4_request, 
SignedHeaders=host;x-amz-date;x-amz-glacier-version, 
Signature=3ce5b2f2fffac9262b4da9256f8d086b4aaf42eba5f111c21681a65a127b7c2a
```

 

## 스트리밍 작업을 위한 서명 계산
<a name="signature-calculation-streaming"></a>

[아카이브 업로드(POST archive)](api-archive-post.md)와 [파트 업로드(PUT uploadID)](api-upload-part.md)는 요청을 서명하고 전송할 때 `x-amz-content-sha256` 헤더를 추가해야 하는 스트리밍 작업입니다. 스트리밍 작업의 서명 단계는 스트리밍 헤더를 추가하는 것만 제외하고 다른 작업의 서명 단계와 정확히 일치합니다.

스트리밍 헤더인 `x-amz-content-sha256`의 계산은 업로드할 전체 내용(페이로드)의 SHA256 해시에 따라 달라집니다. 단, 이 계산은 SHA256 트리-해시([체크섬 계산](checksum-calculations.md))와 다릅니다. 일반적인 경우 외에도 페이로드 데이터의 SHA256 해시 값은 페이로드 데이터의 SHA256 트리-해시와 다릅니다.

페이로드 데이터가 바이트 배열로 지정되면 다음 Java 코드 조각을 사용하여 SHA256 해시를 계산할 수 있습니다.

 

```
public static byte[] computePayloadSHA256Hash2(byte[] payload) throws NoSuchAlgorithmException, IOException {
    BufferedInputStream bis = 
       new BufferedInputStream(new ByteArrayInputStream(payload));
    MessageDigest messageDigest = MessageDigest.getInstance("SHA-256");
    byte[] buffer = new byte[4096];
    int bytesRead = -1;
    while ( (bytesRead = bis.read(buffer, 0, buffer.length)) != -1 ) {
        messageDigest.update(buffer, 0, bytesRead);
    }
    return messageDigest.digest();
}
```

마찬가지로 C\$1에서도 다음 코드 조각과 같이 페이로드 데이터의 SHA256 해시를 계산할 수 있습니다.

 

```
public static byte[] CalculateSHA256Hash(byte[] payload)
{
    SHA256 sha256 = System.Security.Cryptography.SHA256.Create();
    byte[] hash = sha256.ComputeHash(payload);

    return hash;
}
```

### 스트리밍 API의 서명 계산 예제
<a name="example-signature-calculation-streaming"></a>

다음은 Amazon Glacier의 두 스트리밍 API 중 하나인 [아카이브 업로드(POST archive)](api-archive-post.md) 작업에 사용할 서명을 생성하기 위한 세부 정보를 설명하는 예시입니다. 이 예시에서는 다음과 같이 가정합니다.
+ 요청 타임스탬프는 `Mon, 07 May 2012 00:00:00 GMT`입니다.
+ 엔드포인트는 미국 동부(버지니아 북부) 리전인 us-east-1입니다.
+ 내용 페이로드는 "Welcome to Amazon Glacier" 문자열입니다.

일반 요청 구문(JSON 본문 포함)은 아래 예제와 같습니다. 예제를 보면 ` x-amz-content-sha256` 헤더가 포함되어 있습니다. 또한 `x-amz-sha256-tree-hash`와 `x-amz-content-sha256`의 값이 동일합니다. 하지만 크기가 1MB를 넘는 아카이브를 업로드할 때는 그렇지 않습니다.

```
POST /-/vaults/examplevault HTTP/1.1
Host: glacier.us-east-1.amazonaws.com
Date: Mon, 07 May 2012 00:00:00 GMT
x-amz-archive-description: my archive
x-amz-sha256-tree-hash: SHA256 tree hash
x-amz-content-sha256: SHA256 payload hash  
Authorization: SignatureToBeCalculated
x-amz-glacier-version: 2012-06-01
```

[작업 1: 표준 요청 생성](#SignatureCalculationTask1)에서 계산되는 요청의 정규 형식은 아래와 같습니다. 예제를 보면 스트리밍 헤더인 `x-amz-content-sha256`에 값이 포함되어 있습니다. 이 말은 페이로드를 읽고 SHA256 해시를 먼저 계산한 후에 서명을 계산해야 한다는 것을 의미합니다.

 

```
POST
/-/vaults/examplevault

host:glacier.us-east-1.amazonaws.com
x-amz-content-sha256:726e392cb4d09924dbad1cc0ba3b00c3643d03d14cb4b823e2f041cff612a628
x-amz-date:20120507T000000Z
x-amz-glacier-version:2012-06-01

host;x-amz-content-sha256;x-amz-date;x-amz-glacier-version
726e392cb4d09924dbad1cc0ba3b00c3643d03d14cb4b823e2f041cff612a628
```

남은 서명 계산은 [서명 계산 예시](#example-signature-calculation)에 간략하게 설명되어 있는 단계를 따릅니다. 시크릿 액세스 키인 `wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY`과 액세스 키인 `AKIAIOSFODNN7EXAMPLE`을 사용하는 `Authorization` 헤더는 아래와 같습니다(가독성을 위해 줄바꿈이 추가됨).

 

```
Authorization=AWS4-HMAC-SHA256 
Credential=AKIAIOSFODNN7EXAMPLE/20120507/us-east-1/glacier/aws4_request, 
SignedHeaders=host;x-amz-content-sha256;x-amz-date;x-amz-glacier-version, 
Signature=b092397439375d59119072764a1e9a144677c43d9906fd98a5742c57a2855de6
```

 

# 체크섬 계산
<a name="checksum-calculations"></a>

아카이브를 업로드할 때는 `x-amz-sha256-tree-hash` 및 `x-amz-content-sha256` 헤더를 모두 포함시켜야 합니다. `x-amz-sha256-tree-hash` 헤더는 요청 본문에서 페이로드 체크섬을 나타냅니다. 이 주제에서는 `x-amz-sha256-tree-hash` 헤더의 계산 방법에 대해서 설명하겠습니다. `x-amz-content-sha256` 헤더는 전체 페이로드의 해시이며, 권한을 부여하는 데 필요합니다. 자세한 내용은 [스트리밍 API의 서명 계산 예제](amazon-glacier-signing-requests.md#example-signature-calculation-streaming) 단원을 참조하십시오.

요청 페이로드는 다음과 같습니다.

 
+ **전체 아카이브**: 아카이브 업로드 API를 사용하여 단일 요청으로 아카이브를 업로드할 때 요청 본문에서 전체 아카이브를 전송합니다. 이때는 전체 아카이브의 체크섬이 본문에 포함되어야 합니다.
+ **아카이브 파트**: 멀티파트 업로드 API를 사용하여 아카이브를 여러 파트로 나누어 업로드할 때는 요청 본문에서 아카이브 파트만 전송합니다. 이때는 아카이브 파트의 체크섬이 본문에 포함되어야 합니다. 모든 파트를 업로드한 후 멀티파트 업로드 완료 요청을 전송할 때는 전체 아카이브의 체크섬이 포함되어야 합니다.

페이로드 체크섬은 SHA256 트리-해시입니다. 트리-해시라고 불리는 이유는 체크섬을 계산하는 과정에서 SHA256 해시 값으로 이루어진 트리를 계산하기 때문입니다. 루트에 존재하는 해시 값이 전체 아카이브의 체크섬입니다.

 

**참고**  
이 섹션에서는 SHA256 트리-해시를 계산하는 방법에 대해서 다루지만 결과만 동일하다면 어떤 절차를 사용해도 상관없습니다.

SHA256 트리-해시의 계산 방법은 다음과 같습니다.

 

1. 1MB 청크 단위마다 페이로드 데이터의 SHA256 해시를 계산합니다. 마지막 청크 데이터는 1MB보다 작을 수 있습니다. 예를 들어 3.2MB 아카이브를 업로드할 경우 처음 1MB 청크 단위 3개에 대해 각각 SHA256 해시 값을 계산한 후 나머지 0.2MB 데이터의 SHA256 해시 값을 계산합니다. 이러한 해시 값들이 트리의 리프 노드를 형성합니다.

1. 트리에서 다음 계층을 만듭니다.

   1. 이어지는 하위 노드 해시 값 2개를 연결하고 연결된 해시 값의 SHA256 해시를 계산합니다. 이렇게 SHA256 해시를 연결 및 생성하여 하위 노드 2개에 대한 상위 노드를 만듭니다.

   1. 하위 노드가 한 개만 남게 되었을 때는 해당 해시 값을 트리의 다음 레벨로 승격합니다.

1. 최종 트리가 루트가 될 때까지 2단계를 반복합니다. 트리의 루트는 전체 아카이브의 해시 값에 해당하며, 그에 따른 하위 트리의 루트는 멀티파트 업로드에서 각 파트의 해시 값에 해당합니다.

**Topics**
+ [

## 트리-해시 예제 1: 아카이브의 단일 요청 업로드
](#checksum-calculations-upload-archive-in-single-payload)
+ [

## 트리-해시 예제 2: 아카이브의 멀티파트 업로드
](#checksum-calculations-upload-archive-using-mpu)
+ [

## 파일의 트리-해시 계산
](#checksum-calculations-examples)
+ [

# 데이터 다운로드 시 체크섬 수신
](checksum-calculations-range.md)

## 트리-해시 예제 1: 아카이브의 단일 요청 업로드
<a name="checksum-calculations-upload-archive-in-single-payload"></a>

아카이브 업로드 API([아카이브 업로드(POST archive)](api-archive-post.md) 참조)를 사용하여 아카이브를 단일 요청으로 업로드할 때는 요청 페이로드에 전체 아카이브가 포함됩니다. 따라서 `x-amz-sha256-tree-hash` 요청 헤더에도 전체 아카이브의 트리-해시가 포함되어야 합니다. 예를 들어 6.5MB 아카이브를 업로드한다고 가정하겠습니다. 다음 다이어그램은 아카이브의 SHA256 해시를 구하는 프로세스입니다. 아카이브를 읽고 1MB 청크씩 SHA256 해시 값을 계산합니다. 나머지 0.5MB 데이터의 해시 값도 계산한 후 이전 절차에서 설명한 대로 트리를 만듭니다.

 

![\[단일 요청으로 아카이브를 업로드하는 트리 해시 예제를 보여주는 다이어그램입니다.\]](http://docs.aws.amazon.com/ko_kr/amazonglacier/latest/dev/images/TreeHash-ArchiveUploadSingleRequest.png)


## 트리-해시 예제 2: 아카이브의 멀티파트 업로드
<a name="checksum-calculations-upload-archive-using-mpu"></a>

멀티파트 업로드를 사용해 아카이브를 업로드할 경우 트리-해시의 계산 과정도 단일 요청으로 아카이브를 업로드할 때와 동일합니다. 멀티파트 업로드는 각 요청([파트 업로드(PUT uploadID)](api-upload-part.md) API 사용)마다 아카이브 파트만 업로드한다는 점만 유일하게 다릅니다. 따라서 각 파트에 해당하는 체크섬만 `x-amz-sha256-tree-hash` 요청 헤더에 입력합니다. 하지만 모든 파트를 업로드한 후에는 `x-amz-sha256-tree-hash` 요청 헤더에 전체 아카이브의 트리-해시를 입력하여 멀티파트 업로드 완료([멀티파트 업로드 완료(POST uploadID)](api-multipart-complete-upload.md) 참조) 요청을 전송해야 합니다.

 

![\[멀티파트 업로드를 사용하여 아카이브를 업로드하는 트리 해시 예제를 보여주는 다이어그램입니다.\]](http://docs.aws.amazon.com/ko_kr/amazonglacier/latest/dev/images/TreeHash-MPU.png)


## 파일의 트리-해시 계산
<a name="checksum-calculations-examples"></a>

여기에서 소개하는 알고리즘은 설명을 목적으로 선택되었습니다. 구현 시나리오에 따라 코드를 알맞게 최적화할 수 있습니다. 예를 들어 Amazon Glacier(Amazon Glacier)에 대해 Amazon SDK를 사용하여 프로그래밍하는 경우에는 트리 해시 계산이 자동으로 이루어지기 때문에 사용자는 파일 참조만 제공하면 됩니다.

**Example 1: Java 예제**  
다음은 Java를 사용하여 파일의 SHA256 트리-해시를 계산하는 방법을 나타낸 예제입니다. 이 예제는 파일 위치를 인수로 입력하여 실행하거나, 혹은 코드에서 `TreeHashExample.computeSHA256TreeHash` 메서드를 직접 사용할 수도 있습니다.  

```
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class TreeHashExample {

static final int ONE_MB = 1024 * 1024;

    /**
     * Compute the Hex representation of the SHA-256 tree hash for the specified
     * File
     * 
     * @param args
     *            args[0]: a file to compute a SHA-256 tree hash for
     */
    public static void main(String[] args) {

        if (args.length < 1) {
            System.err.println("Missing required filename argument");
            System.exit(-1);
        }

        File inputFile = new File(args[0]);
        try {

            byte[] treeHash = computeSHA256TreeHash(inputFile);
            System.out.printf("SHA-256 Tree Hash = %s\n", toHex(treeHash));

        } catch (IOException ioe) {
            System.err.format("Exception when reading from file %s: %s", inputFile,
                    ioe.getMessage());
            System.exit(-1);

        } catch (NoSuchAlgorithmException nsae) {
            System.err.format("Cannot locate MessageDigest algorithm for SHA-256: %s",
                    nsae.getMessage());
            System.exit(-1);
        }
    }

    /**
     * Computes the SHA-256 tree hash for the given file
     * 
     * @param inputFile
     *            a File to compute the SHA-256 tree hash for
     * @return a byte[] containing the SHA-256 tree hash
     * @throws IOException
     *             Thrown if there's an issue reading the input file
     * @throws NoSuchAlgorithmException
     */
    public static byte[] computeSHA256TreeHash(File inputFile) throws IOException,
            NoSuchAlgorithmException {

        byte[][] chunkSHA256Hashes = getChunkSHA256Hashes(inputFile);
        return computeSHA256TreeHash(chunkSHA256Hashes);
    }

    /**
     * Computes a SHA256 checksum for each 1 MB chunk of the input file. This
     * includes the checksum for the last chunk even if it is smaller than 1 MB.
     * 
     * @param file
     *            A file to compute checksums on
     * @return a byte[][] containing the checksums of each 1 MB chunk
     * @throws IOException
     *             Thrown if there's an IOException when reading the file
     * @throws NoSuchAlgorithmException
     *             Thrown if SHA-256 MessageDigest can't be found
     */
    public static byte[][] getChunkSHA256Hashes(File file) throws IOException,
            NoSuchAlgorithmException {

        MessageDigest md = MessageDigest.getInstance("SHA-256");

        long numChunks = file.length() / ONE_MB;
        if (file.length() % ONE_MB > 0) {
            numChunks++;
        }

        if (numChunks == 0) {
            return new byte[][] { md.digest() };
        }

        byte[][] chunkSHA256Hashes = new byte[(int) numChunks][];
        FileInputStream fileStream = null;

        try {
            fileStream = new FileInputStream(file);
            byte[] buff = new byte[ONE_MB];

            int bytesRead;
            int idx = 0;
            int offset = 0;

            while ((bytesRead = fileStream.read(buff, offset, ONE_MB)) > 0) {
                md.reset();
                md.update(buff, 0, bytesRead);
                chunkSHA256Hashes[idx++] = md.digest();
                offset += bytesRead;
            }

            return chunkSHA256Hashes;

        } finally {
            if (fileStream != null) {
                try {
                    fileStream.close();
                } catch (IOException ioe) {
                    System.err.printf("Exception while closing %s.\n %s", file.getName(),
                            ioe.getMessage());
                }
            }
        }
    }

    /**
     * Computes the SHA-256 tree hash for the passed array of 1 MB chunk
     * checksums.
     * 
     * This method uses a pair of arrays to iteratively compute the tree hash
     * level by level. Each iteration takes two adjacent elements from the
     * previous level source array, computes the SHA-256 hash on their
     * concatenated value and places the result in the next level's destination
     * array. At the end of an iteration, the destination array becomes the
     * source array for the next level.
     * 
     * @param chunkSHA256Hashes
     *            An array of SHA-256 checksums
     * @return A byte[] containing the SHA-256 tree hash for the input chunks
     * @throws NoSuchAlgorithmException
     *             Thrown if SHA-256 MessageDigest can't be found
     */
    public static byte[] computeSHA256TreeHash(byte[][] chunkSHA256Hashes)
            throws NoSuchAlgorithmException {

        MessageDigest md = MessageDigest.getInstance("SHA-256");

        byte[][] prevLvlHashes = chunkSHA256Hashes;

        while (prevLvlHashes.length > 1) {

            int len = prevLvlHashes.length / 2;
            if (prevLvlHashes.length % 2 != 0) {
                len++;
            }

            byte[][] currLvlHashes = new byte[len][];

            int j = 0;
            for (int i = 0; i < prevLvlHashes.length; i = i + 2, j++) {

                // If there are at least two elements remaining
                if (prevLvlHashes.length - i > 1) {

                    // Calculate a digest of the concatenated nodes
                    md.reset();
                    md.update(prevLvlHashes[i]);
                    md.update(prevLvlHashes[i + 1]);
                    currLvlHashes[j] = md.digest();

                } else { // Take care of remaining odd chunk
                    currLvlHashes[j] = prevLvlHashes[i];
                }
            }

            prevLvlHashes = currLvlHashes;
        }

        return prevLvlHashes[0];
    }

    /**
     * Returns the hexadecimal representation of the input byte array
     * 
     * @param data
     *            a byte[] to convert to Hex characters
     * @return A String containing Hex characters
     */
    public static String toHex(byte[] data) {
        StringBuilder sb = new StringBuilder(data.length * 2);

        for (int i = 0; i < data.length; i++) {
            String hex = Integer.toHexString(data[i] & 0xFF);

            if (hex.length() == 1) {
                // Append leading zero.
                sb.append("0");
            }
            sb.append(hex);
        }
        return sb.toString().toLowerCase();
    }
}
```

**Example 2: C\$1 .NET 예제**  
다음은 파일의 SHA256 트리-해시를 계산하는 방법을 나타낸 예제입니다. 이 예제는 파일 위치를 인수로 입력하여 실행할 수 있습니다.  

```
using System;
using System.IO;

using System.Security.Cryptography;

namespace ExampleTreeHash
{
    class Program
    {
        static int ONE_MB = 1024 * 1024;

        /**
        * Compute the Hex representation of the SHA-256 tree hash for the
        * specified file
        * 
        * @param args
        *            args[0]: a file to compute a SHA-256 tree hash for
        */
        public static void Main(string[] args)
        {
            if (args.Length < 1)
            {
                Console.WriteLine("Missing required filename argument");
                Environment.Exit(-1);
            }
            FileStream inputFile = File.Open(args[0], FileMode.Open, FileAccess.Read);
            try
            {
                byte[] treeHash = ComputeSHA256TreeHash(inputFile);
                Console.WriteLine("SHA-256 Tree Hash = {0}", BitConverter.ToString(treeHash).Replace("-", "").ToLower());
                Console.ReadLine();
                Environment.Exit(-1);
            }
            catch (IOException ioe)
            {
                Console.WriteLine("Exception when reading from file {0}: {1}",
                    inputFile, ioe.Message);
                Console.ReadLine();
                Environment.Exit(-1);
            }
            catch (Exception e)
            {
                Console.WriteLine("Cannot locate MessageDigest algorithm for SHA-256: {0}",
                    e.Message);
                Console.WriteLine(e.GetType());
                Console.ReadLine();
                Environment.Exit(-1);
            }
            Console.ReadLine();
        }


        /**
         * Computes the SHA-256 tree hash for the given file
         * 
         * @param inputFile
         *            A file to compute the SHA-256 tree hash for
         * @return a byte[] containing the SHA-256 tree hash
         */
        public static byte[] ComputeSHA256TreeHash(FileStream inputFile)
        {
            byte[][] chunkSHA256Hashes = GetChunkSHA256Hashes(inputFile);
            return ComputeSHA256TreeHash(chunkSHA256Hashes);
        }


        /**
         * Computes a SHA256 checksum for each 1 MB chunk of the input file. This
         * includes the checksum for the last chunk even if it is smaller than 1 MB.
         * 
         * @param file
         *            A file to compute checksums on
         * @return a byte[][] containing the checksums of each 1MB chunk
         */
        public static byte[][] GetChunkSHA256Hashes(FileStream file)
        {
            long numChunks = file.Length / ONE_MB;
            if (file.Length % ONE_MB > 0)
            {
                numChunks++;
            }

            if (numChunks == 0)
            {
                return new byte[][] { CalculateSHA256Hash(null, 0) };
            }
            byte[][] chunkSHA256Hashes = new byte[(int)numChunks][];

            try
            {
                byte[] buff = new byte[ONE_MB];

                int bytesRead;
                int idx = 0;

                while ((bytesRead = file.Read(buff, 0, ONE_MB)) > 0)
                {
                    chunkSHA256Hashes[idx++] = CalculateSHA256Hash(buff, bytesRead);
                }
                return chunkSHA256Hashes;
            }
            finally
            {
                if (file != null)
                {
                    try
                    {
                        file.Close();
                    }
                    catch (IOException ioe)
                    {
                        throw ioe;
                    }
                }
            }

        }

        /**
         * Computes the SHA-256 tree hash for the passed array of 1MB chunk
         * checksums.
         * 
         * This method uses a pair of arrays to iteratively compute the tree hash
         * level by level. Each iteration takes two adjacent elements from the
         * previous level source array, computes the SHA-256 hash on their
         * concatenated value and places the result in the next level's destination
         * array. At the end of an iteration, the destination array becomes the
         * source array for the next level.
         * 
         * @param chunkSHA256Hashes
         *            An array of SHA-256 checksums
         * @return A byte[] containing the SHA-256 tree hash for the input chunks
         */
        public static byte[] ComputeSHA256TreeHash(byte[][] chunkSHA256Hashes)
        {
            byte[][] prevLvlHashes = chunkSHA256Hashes;
            while (prevLvlHashes.GetLength(0) > 1)
            {

                int len = prevLvlHashes.GetLength(0) / 2;
                if (prevLvlHashes.GetLength(0) % 2 != 0)
                {
                    len++;
                }

                byte[][] currLvlHashes = new byte[len][];

                int j = 0;
                for (int i = 0; i < prevLvlHashes.GetLength(0); i = i + 2, j++)
                {

                    // If there are at least two elements remaining
                    if (prevLvlHashes.GetLength(0) - i > 1)
                    {

                        // Calculate a digest of the concatenated nodes
                        byte[] firstPart = prevLvlHashes[i];
                        byte[] secondPart = prevLvlHashes[i + 1];
                        byte[] concatenation = new byte[firstPart.Length + secondPart.Length];
                        System.Buffer.BlockCopy(firstPart, 0, concatenation, 0, firstPart.Length);
                        System.Buffer.BlockCopy(secondPart, 0, concatenation, firstPart.Length, secondPart.Length);

                        currLvlHashes[j] = CalculateSHA256Hash(concatenation, concatenation.Length);

                    }
                    else
                    { // Take care of remaining odd chunk
                        currLvlHashes[j] = prevLvlHashes[i];
                    }
                }

                prevLvlHashes = currLvlHashes;
            }

            return prevLvlHashes[0];
        }

        public static byte[] CalculateSHA256Hash(byte[] inputBytes, int count)
        {
            SHA256 sha256 = System.Security.Cryptography.SHA256.Create();
            byte[] hash = sha256.ComputeHash(inputBytes, 0, count);
            return hash;
        }
    }
}
```

# 데이터 다운로드 시 체크섬 수신
<a name="checksum-calculations-range"></a>

작업 시작 API([작업 시작(POST jobs)](api-initiate-job-post.md) 참조)를 사용하여 아카이브를 가져올 때는 옵션으로 아카이브를 가져오는 범위를 지정할 수 있습니다. 마찬가지로 작업 출력 가져오기 API([작업 출력 가져오기(GET output)](api-job-output-get.md) 참조)를 사용하여 데이터를 다운로드할 때도 옵션으로 다운로드할 데이터 범위를 지정할 수 있습니다. 이러한 범위에는 아카이브 데이터를 가져오거나 다운로드할 때 반드시 알고 있어야 할 두 가지 특성이 있습니다. 가져오기 범위는 아카이브에 대해 *메가바이트 정렬*로 이루어져야 합니다. 또한 데이터를 다운로드할 때 체크섬 값을 수신하려면 가져오기 범위와 다운로드 범위 모두 *트리-해시 정렬*로 이루어져야 합니다. 이러한 두 가지 유형의 범위 정렬은 아래와 같이 정의할 수 있습니다.

 
+ 메가바이트 정렬: **StartBytes를 1MB로 나눌 수 있고 **EndBytes에 1을 더한 값을 1MB로 나눌 수 있거나 지정된 아카이브의 끝(아카이브 바이트 크기에서 1을 뺀 값)과 같을 때만 범위[**StartByte, **EndBytes]가 메가바이트(1024\$11024) 로 정렬됩니다. 작업 시작 API에서 사용하는 범위는 지정하는 경우에 한해 메가바이트 정렬로 이루어져야 합니다.
+ 트리-해시 정렬: 범위에서 만들어진 트리-해시의 루트가 전체 아카이브의 트리-해시 노드에 해당할 경우, 그리고 이러한 경우일 때만 아카이브에 대한 범위 [*StartBytes*, *EndBytes*]가 트리-해시로 정렬됩니다. 데이터를 다운로드하면서 체크섬 값을 수신하려면 가져오기 범위와 다운로드 범위 모두 트리-해시 정렬로 이루어져야 합니다. 아카이브 트리-해시에 대한 범위 및 범위 관계 예는 [트리-해시 예제: 트리-해시로 정렬하여 아카이브 범위 가져오기](#checksum-calculations-upload-archive-with-ranges) 섹션을 참조하세요.

  트리-해시로 정렬되는 범위는 메가바이트로도 정렬됩니다. 하지만 메가바이트로 정렬된 범위가 꼭 트리-해시로 정렬될 필요는 없습니다.

다음은 아카이브 데이터를 다운로드하면서 체크섬 값을 수신하는 경우에 대한 설명입니다.

 
+ 작업 시작 요청에서 가져오기 범위를 지정하지 않고 작업 가져오기 요청에서 전체 아카이브를 다운로드하는 경우 
+ 작업 시작 요청에서 가져오기 범위를 지정하지 않고 작업 가져오기 요청에서 다운로드할 트리-해시 정렬 범위를 지정하는 경우
+ 작업 시작 요청에서 가져올 트리-해시 정렬 범위를 지정하고 작업 가져오기 요청에서 전체 범위를 다운로드하는 경우 
+ 작업 시작 요청에서 가져올 트리-해시 정렬 범위를 지정하고 작업 가져오기 요청에서 다운로드할 트리-해시 정렬 범위를 지정하는 경우 

작업 시작 요청에서 트리-해시로 정렬하지 않고 가져올 범위를 지정하더라도 아카이브 데이터를 가져올 수는 있지만 작업 가져오기 요청에서 데이터를 다운로드할 때 체크섬 값은 반환되지 않습니다.

## 트리-해시 예제: 트리-해시로 정렬하여 아카이브 범위 가져오기
<a name="checksum-calculations-upload-archive-with-ranges"></a>

볼트에 6.5MB의 아카이브가 저장되어 있으며 여기에서 2MB를 가져온다고 가정하겠습니다. 이때는 작업 시작하기 요청에서 2MB 범위의 지정 방식에 따라 데이터 다운로드 시 데이터 체크섬 값의 수신 여부가 결정됩니다. 다음은 6.5MB 아카이브에서 다운로드할 수 있는 두 가지 2MB 범위를 설명한 다이어그램입니다. 두 범위 모두 메가바이트로 정렬되지만 하나만 트리-해시로 정렬됩니다.

 

![\[트리 해시가 정렬된 아카이브 범위 가져오기를 보여주는 다이어그램입니다.\]](http://docs.aws.amazon.com/ko_kr/amazonglacier/latest/dev/images/TreeHash-ArchiveWithRanges.png)


## 트리-해시 정렬 범위의 지정
<a name="tree-hash-algorithm"></a>

이 섹션에서는 트리-해시 정렬 범위의 구성 요소를 정확하게 지정할 수 있는 방법에 대해서 설명합니다. 트리-해시 정렬 범위는 아카이브 일부를 다운로드하면서 가져올 데이터 범위와 가져온 데이터에서 다운로드할 범위를 지정할 때 매우 중요합니다. 이 두 범위를 트리-해시로 정렬하는 경우에는 데이터 다운로드 시 체크섬 데이터까지 수신하게 됩니다.

새 트리 해시가 [**A, **B]에서 만들어지고, 해당 범위의 트리 해시의 루트가 전체 아카이브의 트리 해시 노드에 해당할 경우, 그리고 이러한 경우일 때만 아카이브에 대한 범위 [**A, **B]가 **트리 해시로 정렬됩니다. [트리-해시 예제: 트리-해시로 정렬하여 아카이브 범위 가져오기](#checksum-calculations-upload-archive-with-ranges)의 다이어그램에서 이러한 예를 볼 수 있습니다. 이 섹션에서는 트리-해시 정렬을 위한 지정 방법에 대해서 살펴보겠습니다.

이번에는 [*P*, *Q*)가 *N*메가바이트(MB)의 아카이브에 대한 범위 쿼리이고, 여기에서 *P*와 *Q*는 1MB의 승수라고 가정합니다. 이때 실제로 포함되는 범위는 [**PMB, **QMB-1바이트]이지만, 여기에서는 간단명료하게 [**P, **Q)로 나타냈습니다. 이를 감안하여 다음 내용을 살펴보십시오.

 
+ **P가 홀수인 경우 가능한 트리 해시 정렬 범위는 한 가지, 즉 [**P, **P\$11MB)가 유일합니다.
+ **P가 짝수이고 **k가 최대 수인 경우 **P는 2**k\$1**X로 쓸 수 있고, **P로 시작하는 트리 해시 정렬 범위는 최대 **k개 입니다. **X는 0보다 큰 정수입니다. 결과적으로 트리-해시 정렬 범위는 다음 카테고리에 해당합니다.
  + 각 *i*에 대해 (0 <= *i* <= *k*)이고, *P* \$1 2*i* < *N*인 경우, [*P*, *Q* \$1 2*i*)는 트리-해시 정렬 범위에 해당합니다.
  + *P* = 0은 *A* = 2[lgN]\$10인 특수한 경우입니다.

# 오류 응답
<a name="api-error-responses"></a>

오류가 발생할 경우 API는 다음 예외 중 한 가지를 반환합니다.


| 코드 | 설명 | HTTP 상태 코드 | Type | 
| --- | --- | --- | --- | 
| AccessDeniedException |  AWS Identity and Access Management (IAM) 정책에서 허용하지 않는 리소스에 액세스하려는 시도가 있거나 요청 URI에 잘못된 AWS 계정 ID가 사용된 경우 반환됩니다. 자세한 내용은 [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md) 단원을 참조하십시오. | 403 Forbidden | 클라이언트 | 
| BadRequest | 요청을 처리할 수 없는 경우에 반환됩니다. | 400 Bad Request | 클라이언트 | 
| ExpiredTokenException | 요청에서 사용한 보안 토큰이 만료된 경우에 반환됩니다. | 403 Forbidden | 클라이언트 | 
| InsufficientCapacityException | 신속 요청을 처리할 수 있는 용량이 부족한 경우에 반환됩니다. 이 오류는 신속 가져오기에만 적용되며 표준 또는 벌크 가져오기에는 적용되지 않습니다. | 503 Service Unavailable | Server | 
| InvalidParameterValueException | 요청 파라미터가 잘못 지정된 경우에 반환됩니다. | 400 Bad Request | 클라이언트 | 
| InvalidSignatureException | 요청 서명이 잘못된 경우에 반환됩니다. | 403 Forbidden | 클라이언트 | 
| LimitExceededException | 요청 결과가 볼트 제한, 태그 제한 또는 프로비저닝된 용량 제한 중 한 가지를 초과한 경우에 반환됩니다. | 400 Bad Request | 클라이언트 | 
| MissingAuthenticationTokenException | 요청에 대한 인증 데이터를 찾을 수 없는 경우에 반환됩니다. | 400 Bad Request | 클라이언트 | 
| MissingParameterValueException | 필수 헤더 또는 파라미터가 요청에서 누락된 경우에 반환됩니다. | 400 Bad Request | 클라이언트 | 
| PolicyEnforcedException | 가져오기 작업이 현재 데이터 정책의 가져오기 속도 제한을 초과한 경우에 반환됩니다. 데이터 가져오기 정책에 대한 자세한 내용은 [Amazon Glacier 데이터 검색 정책](data-retrieval-policy.md) 섹션을 참조하세요. | 400 Bad Request | 클라이언트 | 
| ResourceNotFoundException | 볼트, 업로드 ID, 작업 ID 등 지정된 리소스가 존재하지 않는 경우에 반환됩니다. | 404 Not Found | 클라이언트 | 
| RequestTimeoutException | 아카이브를 업로드할 때 Amazon Glacier(Amazon Glacier)가 업로드를 수신하는 동안 시간이 초과되는 경우에 반환됩니다. | 408 Request Timeout | 클라이언트 | 
| SerializationException | 요청 본문이 잘못된 경우에 반환됩니다. JSON 페이로드를 포함하는 경우에는 형식이 올바른지 확인해야 합니다. | 400 Bad Request | 클라이언트 | 
| ServiceUnavailableException | 서비스가 요청을 완료할 수 없는 경우에 반환됩니다. | 500 Internal Server Error | Server | 
| ThrottlingException | Amazon Glacier에 대한 요청 비율을 줄여야 하는 경우에 반환됩니다. | 400 Bad Request | 클라이언트 | 
| UnrecognizedClientException | 액세스 키 ID 또는 보안 토큰이 잘못된 경우에 반환됩니다. | 400 Bad Request | 클라이언트 | 

다양한 Amazon Glacier API가 동일한 예외를 반환하지만 예외 메시지가 다르기 때문에 특정 오류 문제를 해결하는 데 효과적입니다.

Amazon Glacier는 오류 정보를 응답 본문에 반환합니다. 다음은 오류 응답 일부를 나타내는 예제입니다.

## 예제 1: 존재하지 않는 작업 ID를 사용한 작업 요청 설명
<a name="bad-request-error-example1"></a>

존재하지 않는 작업에 대해 [작업 설명(GET JobID)](api-describe-job-get.md) 요청을 전송한다고 가정하겠습니다. 즉, 존재하지 않는 작업 ID를 지정합니다.

```
1. GET /-/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVEXAMPLEbadJobID HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

그러면 Amazon Glacier가 다음과 같은 오류 응답을 반환합니다.

```
HTTP/1.1 404 Not Found
x-amzn-RequestId: AAABaZ9N92Iiyv4N7sru3ABEpSQkuFtmH3NP6aAC51ixfjg
Content-Type: application/json
Content-Length: 185
Date: Wed, 10 Feb 2017 12:00:00 GMT
{
  "code": "ResourceNotFoundException",
  "message": "The job ID was not found: HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVEXAMPLEbadJobID",
  "type": "Client"
  }
```

위치:

**코드**  
일반 예외 중 하나입니다.  
*유형*: 문자열

**메시지**  
오류를 반환하는 API에 따른 일반적인 오류 조건 설명입니다.  
*유형*: 문자열

**유형**  
오류 출처입니다. 이 필드는 `Client`, `Server` 또는 `Unknown` 중 한 가지 값을 가질 수 있습니다.  
*유형*: 문자열.

위의 응답에서 다음 사항에 유의할 필요가 있습니다.
+ 오류 응답에서 Amazon Glacier는 상태 코드 값을 `4xx`와 `5xx`로 반환합니다. 이 예제에서 상태 코드는 `404 Not Found`입니다.
+ `Content-Type` 헤더 값인 `application/json`은 본문의 JSON을 나타냅니다.
+ 본문의 JSON은 오류 정보를 제공합니다.

이전 요청에서 잘못된 작업 ID 대신 존재하지 않은 볼트를 지정한다고 가정하겠습니다. 그러면 응답으로 다른 메시지가 반환됩니다.

```
HTTP/1.1 404 Not Found
x-amzn-RequestId: AAABBeC9Zw0rp_5D0L8VfB3FA_WlTupqTKAUehMcPhdgni0
Content-Type: application/json
Content-Length: 154
Date: Wed, 10 Feb 2017 12:00:00 GMT
{
  "code": "ResourceNotFoundException",
  "message": "Vault not found for ARN: arn:aws:glacier:us-west-2:012345678901:vaults/examplevault",
  "type": "Client"
}
```

## 예제 2: 요청 파라미터에 잘못된 값이 포함된 작업 목록 조회 요청
<a name="bad-request-error-example2"></a>

이 예제에서는 [작업 목록 조회(GET jobs)](api-jobs-get.md) 요청을 전송하여 특정 `statuscode`가 있는 볼트 작업을 가져오려고 합니다. 이때 올바른 값인 `InProgress`, `Succeeded` 또는 `Failed` 대신 잘못된 `statuscode` 값인 `finished`를 입력합니다.

```
GET /-/vaults/examplevault/jobs?statuscode=finished HTTP/1.1 
Host: glacier.us-west-2.amazonaws.com 
Date: 20170210T120000Z
x-amz-glacier-version: 2012-06-01
Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

Amazon Glacier는 관련 메시지와 함께 `InvalidParameterValueException`을 반환합니다.

```
HTTP/1.1 400 Bad Request
x-amzn-RequestId: AAABaZ9N92Iiyv4N7sru3ABEpSQkuFtmH3NP6aAC51ixfjg
Content-Type: application/json
Content-Length: 141
Date: Wed, 10 Feb 2017 12:00:00 GMT
{
  "code": "InvalidParameterValueException",
  "message": "The job status code is not valid: finished",
  "type: "Client"
}
```

# 볼트 작업
<a name="vault-operations"></a>

다음은 Amazon Glacier에서 사용할 수 있는 볼트 작업입니다.

**Topics**
+ [

# 볼트 잠금 중단(DELETE lock-policy)
](api-AbortVaultLock.md)
+ [

# 볼트에 태그 추가(POST tags add)
](api-AddTagsToVault.md)
+ [

# 볼트 만들기(PUT vault)
](api-vault-put.md)
+ [

# 볼트 잠금 완료(POST lockId)
](api-CompleteVaultLock.md)
+ [

# 볼트 삭제(DELETE vault)
](api-vault-delete.md)
+ [

# 볼트 액세스 정책 삭제(DELETE access-policy)
](api-DeleteVaultAccessPolicy.md)
+ [

# 볼트 알림 삭제(DELETE notification-configuration)
](api-vault-notifications-delete.md)
+ [

# 볼트 설명(GET vault)
](api-vault-get.md)
+ [

# 볼트 액세스 정책 가져오기(GET access-policy)
](api-GetVaultAccessPolicy.md)
+ [

# 볼트 잠금 가져오기(GET lock-policy)
](api-GetVaultLock.md)
+ [

# 볼트 알림 가져오기(GET notification-configuration)
](api-vault-notifications-get.md)
+ [

# 볼트 잠금 시작(POST lock-policy)
](api-InitiateVaultLock.md)
+ [

# 볼트의 태그 목록 조회(GET tags)
](api-ListTagsForVault.md)
+ [

# 볼트 목록 조회(GET vaults)
](api-vaults-get.md)
+ [

# 볼트에서 태그 삭제(POST tags remove)
](api-RemoveTagsFromVault.md)
+ [

# 볼트 액세스 정책 설정(PUT access-policy)
](api-SetVaultAccessPolicy.md)
+ [

# 볼트 알림 구성 설정(PUT notification-configuration)
](api-vault-notifications-put.md)

# 볼트 잠금 중단(DELETE lock-policy)
<a name="api-AbortVaultLock"></a>

## 설명
<a name="api-AbortVaultLock-description"></a>

이 작업에서는 볼트 잠금이 `Locked` 상태가 아닐 경우 볼트 잠금 프로세스를 중단합니다. 이 작업을 요청할 때 볼트 잠금이 `Locked` 상태일 경우에는 `AccessDeniedException` 오류가 반환됩니다. 볼트 잠금 프로세스를 중단하면 지정된 볼트에서 볼트 잠금 정책도 삭제됩니다.

`InProgress`를 호출하면 볼트 잠금이 [볼트 잠금 시작(POST lock-policy)](api-InitiateVaultLock.md) 상태로 전환됩니다. `Locked`를 호출하면 볼트 잠금이 [볼트 잠금 완료(POST lockId)](api-CompleteVaultLock.md) 상태로 전환됩니다. 볼트 잠금 상태는 [볼트 잠금 가져오기(GET lock-policy)](api-GetVaultLock.md)을 호출하면 알 수 있습니다. 볼트 잠금 프로세스에 대한 자세한 내용은 [Amazon Glacier 볼트 잠금](vault-lock.md) 섹션을 참조하세요. 볼트 잠금 정책에 대한 자세한 내용은 [볼트 잠금 정책](vault-lock-policy.md) 섹션을 참조하세요.

이 작업은 멱등성을 갖습니다. 볼트 잠금이 `InProgress` 상태이거나 볼트에 연결된 정책이 없는 경우에는 이 작업을 여러 번 성공적으로 호출할 수 있습니다.

## 요청
<a name="api-AbortVaultLock-requests"></a>

볼트 잠금 정책을 삭제하려면 HTTP `DELETE` 요청을 볼트의 `lock-policy` 하위 리소스 URI로 전송합니다.

### 구문
<a name="api-AbortVaultLock-requests-syntax"></a>

```
1. DELETE /AccountId/vaults/vaultName/lock-policy HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 AWS 계정 ID입니다. 이 값은 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID와 일치해야 합니다. AWS 계정 ID 또는 선택적으로 하나의 '`-`'(하이픈)을 지정할 수 있습니다. 이 경우에 Amazon Glacier는 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 지정하는 경우 ID에 하이픈('-')을 포함하지 않습니다.

### 요청 파라미터
<a name="api-AbortVaultLock-requests-parameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-AbortVaultLock-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-AbortVaultLock-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-AbortVaultLock-responses"></a>

정책이 성공적으로 삭제되면 Amazon Glacier가 `HTTP 204 No Content` 응답을 반환합니다.

### 구문
<a name="api-AbortVaultLock-responses-syntax"></a>

```
HTTP/1.1 204 No Content
x-amzn-RequestId: x-amzn-RequestId
Date: Date
```

### 응답 헤더
<a name="api-AbortVaultLock-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-AbortVaultLock-responses-elements"></a>

이 작업은 응답 본문을 반환하지 않습니다.

### 오류
<a name="api-AbortVaultLock-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예시
<a name="api-AbortVaultLock-examples"></a>

다음은 볼트 잠금 프로세스를 중단하는 방법을 설명한 예시입니다.

### 요청 예시
<a name="api-AbortVaultLock-example-request"></a>

이 예시에서 `DELETE` 요청은 볼트 이름이 **examplevault**인 `lock-policy` 하위 리소스로 전송됩니다.

```
1. DELETE /-/vaults/examplevault/lock-policy HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
5. x-amz-glacier-version: 2012-06-01
```

### 응답의 예
<a name="api-AbortVaultLock-example-response"></a>

정책이 성공적으로 삭제되면 Amazon Glacier가 다음 예와 같이 `HTTP 204 No Content` 응답을 반환합니다.

```
1. HTTP/1.1 204 No Content
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:00:00 GMT
```

## 관련 섹션
<a name="related-sections-AbortVaultLock"></a>

 
+ [볼트 잠금 완료(POST lockId)](api-CompleteVaultLock.md)

 
+ [볼트 잠금 가져오기(GET lock-policy)](api-GetVaultLock.md)

 
+ [볼트 잠금 시작(POST lock-policy)](api-InitiateVaultLock.md)

## 참고
<a name="api-AbortVaultLock-SeeAlso"></a>

언어 특정 Amazon SDK 중 하나에서 이 API를 사용하는 방법에 대한 자세한 내용은 다음을 참조하세요.
+  [AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/reference/glacier/abort-vault-lock.html) 

# 볼트에 태그 추가(POST tags add)
<a name="api-AddTagsToVault"></a>

이 작업에서는 지정한 태그를 볼트에 추가합니다. 각 태그는 키와 값으로 구성됩니다. 각 볼트는 최대 50개까지 태그를 가질 수 있습니다. 볼트의 태그 제한을 초과하는 요청일 경우에는 `LimitExceededException` 오류가 반환됩니다.

지정한 키 아래의 볼트에 태그가 이미 있는 경우에는 기존 키 값을 덮어쓰게 됩니다. 태그에 대한 자세한 내용은 [Amazon Glacier 리소스에 태그 지정](tagging.md) 섹션을 참조하세요.

## 요청 구문
<a name="api-AddTagsToVault-requestSyntax"></a>

태그를 볼트에 추가하려면 다음 구문 예제와 같이 HTTP POST 요청을 태그 URI로 전송합니다.

```
 1. POST /AccountId/vaults/vaultName/tags?operation=add HTTP/1.1
 2. Host: glacier.Region.amazonaws.com
 3. Date: Date
 4. Authorization: SignatureValue
 5. Content-Length: Length
 6. x-amz-glacier-version: 2012-06-01
 7. 			
 8. {
 9.    "Tags": 
10.       {
11.          "string": "string",
12.          "string": "string"
13.       }        
14. }
```

 

**참고**  
`AccountId` 값은 AWS 계정 ID입니다. 이 값은 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID와 일치해야 합니다. AWS 계정 ID 또는 선택적으로 하나의 '`-`'(하이픈)을 지정할 수 있습니다. 이 경우에 Amazon Glacier는 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 지정하는 경우 ID에 하이픈('-')을 포함하지 않습니다.

## 요청 파라미터
<a name="api-AddTagsToVault-requestParameters"></a>


|  이름  |  설명  |  필수  | 
| --- | --- | --- | 
|  operation=add  |  [볼트에서 태그 삭제(POST tags remove)](api-RemoveTagsFromVault.md)와 구분할 목적으로 `add` 값이 포함된 단일 쿼리 문자열 파라미터 `operation`입니다.  |  예  | 

### 요청 헤더
<a name="api-AddTagsToVault-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-AddTagsToVault-requests-elements"></a>

요청 본문에는 다음의 JSON 필드가 포함됩니다.

 

**태그**  
볼트에 추가할 태그입니다. 각 태그는 키와 값으로 구성됩니다. 값은 빈 문자열일 수도 있습니다.  
 *유형:* 문자열 간 맵   
 *길이 제한:* 최소 길이 1. 최대 길이 10  
 *필수 항목 여부*: 예 

## 응답
<a name="api-AddTagsToVault-responses"></a>

작업 요청이 성공하면 서비스가 HTTP `204 No Content` 응답을 반환합니다.

### 구문
<a name="api-AddTagsToVault-response-syntax"></a>

```
HTTP/1.1 204 No Content
x-amzn-RequestId: x-amzn-RequestId
Date: Date
```

### 응답 헤더
<a name="api-AddTagsToVault-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-AddTagsToVault-responses-elements"></a>

이 작업은 응답 본문을 반환하지 않습니다.

### 오류
<a name="api-AddTagsToVault-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예시
<a name="api-AddTagsToVault-examples"></a>

### 요청 예시
<a name="api-AddTagsToVault-example-request"></a>

다음 예에서는 볼트에 추가할 태그와 함께 HTTP POST 요청을 전송합니다.

```
 1. POST /-/vaults/examplevault/tags?operation=add HTTP/1.1
 2. Host: glacier.us-west-2.amazonaws.com
 3. x-amz-Date: 20170210T120000Z
 4. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
 5. Content-Length: length
 6. x-amz-glacier-version: 2012-06-01
 7. 			
 8. {
 9.   "Tags": 
10.     {
11.        "examplekey1": "examplevalue1",
12.        "examplekey2": "examplevalue2"
13.     }        
14. }
```

### 응답의 예
<a name="api-AddTagsToVault-example-response"></a>

요청이 성공하면 Amazon Glacier가 다음 예제와 같이 `HTTP 204 No Content`를 반환합니다.

```
1. HTTP/1.1 204 No Content
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:02:00 GMT
```

## 관련 섹션
<a name="related-sections-AddTagsToVault"></a>

 
+ [볼트의 태그 목록 조회(GET tags)](api-ListTagsForVault.md)

 
+ [볼트에서 태그 삭제(POST tags remove)](api-RemoveTagsFromVault.md)

## 참고
<a name="api-AddTagsToVault-SeeAlso"></a>

언어 특정 Amazon SDK 중 하나에서 이 API를 사용하는 방법에 대한 자세한 내용은 다음을 참조하세요.
+  [AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/reference/glacier/add-tags-to-vault.html) 

# 볼트 만들기(PUT vault)
<a name="api-vault-put"></a>

## 설명
<a name="api-vault-put-description"></a>

이 작업은 지정한 이름으로 새로운 볼트를 생성합니다.   볼트 이름은 AWS 계정에 속하는 AWS 리전 내에서 반드시 고유해야 합니다. 계정당 최대 1,000개까지 볼트를 생성할 수 있습니다. 더 많은 볼트 생성을 위한 자세한 정보는 [Amazon Glacier 제품 세부 정보 페이지](https://aws.amazon.com/glacier)를 참조하세요.

볼트 이름을 지정할 때는 다음 지침을 따라야 합니다.

 
+  이름에 포함되는 문자 길이는 1\$1255자입니다.
+ 유효한 문자는 A\$1Z, a\$1z, 0\$19, ‘-’(하이픈), ‘\$1’(밑줄), ‘.’(마침표)입니다.

이 작업은 멱등성을 갖기 때문에 동일한 요청을 여러 차례 전송할 수 있으며, Amazon Glacier(Amazon Glacier)가 지정한 볼트를 처음 생성한 이후부터는 추가적인 영향을 미치지 않습니다.

## 요청
<a name="api-vault-put-requests"></a>

### 구문
<a name="api-vault-put-requests-syntax"></a>

볼트 생성을 위해 HTTP PUT 요청을 생성할 볼트의 URI로 전송합니다.

```
1. PUT /AccountId/vaults/VaultName HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. Content-Length: Length
6. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 AWS 계정 ID입니다. 이 값은 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID와 일치해야 합니다. AWS 계정 ID 또는 선택적으로 하나의 '`-`'(하이픈)을 지정할 수 있습니다. 이 경우에 Amazon Glacier는 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 지정하는 경우 ID에 하이픈('-')을 포함하지 않습니다.

### 요청 파라미터
<a name="api-vault-put-requests-parameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-vault-put-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-vault-put-requests-elements"></a>

이 작업의 요청 본문은 비어 있어야 합니다(0바이트).

## 응답
<a name="api-vault-put-responses"></a>

### 구문
<a name="api-vault-putresponse-syntax"></a>

```
HTTP/1.1 201 Created
x-amzn-RequestId: x-amzn-RequestId
Date: Date
Location: Location
```

### 응답 헤더
<a name="api-vault-put-responses-headers"></a>

성공적인 응답에는 모든 작업에 일반적인 응답 헤더 외에 다음 응답 헤더가 포함됩니다. 일반적인 응답 헤더에 대한 자세한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.


|  이름  |  설명 | 
| --- | --- | 
| `Location`  | 생성된 볼트의 상대적 URI 경로입니다. 유형: 문자열 | 

### 응답 본문
<a name="api-vault-put-responses-elements"></a>

이 작업은 응답 본문을 반환하지 않습니다.

### 오류
<a name="api-vault-put-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예시
<a name="api-vault-put-examples"></a>

### 요청 예시
<a name="api-vault-put-example-request"></a>

다음은 HTTP PUT 요청을 전송하여 `examplevault`라는 이름의 볼트를 생성하는 예제입니다.

```
1. PUT /-/vaults/examplevault HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Content-Length: 0
6. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

### 응답의 예
<a name="api-vault-put-example-response"></a>

Amazon Glacier가 볼트를 생성하고, `Location` 헤더에 볼트의 상대적 URI 경로를 반환합니다. 계정 ID는 요청에서 계정 ID 또는 하이픈('`-`') 지정 여부에 상관없이 항상 `Location` 헤더에 표시됩니다.

```
1. HTTP/1.1 201 Created
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:02:00 GMT
4. Location: /111122223333/vaults/examplevault
```

## 관련 섹션
<a name="related-sections-vault-put"></a>

 
+ [볼트 목록 조회(GET vaults)](api-vaults-get.md)
+ [볼트 삭제(DELETE vault)](api-vault-delete.md)
+ [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md)

## 참고
<a name="vault-put-SeeAlso"></a>

언어 특정 Amazon SDK 중 하나에서 이 API를 사용하는 방법에 대한 자세한 내용은 다음을 참조하세요.
+  [AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/reference/glacier/create-vault.html) 

# 볼트 잠금 완료(POST lockId)
<a name="api-CompleteVaultLock"></a>

## 설명
<a name="api-CompleteVaultLock-description"></a>

이번 작업에서는 볼트 잠금 상태를 `InProgress`에서 `Locked`로 전환하여 볼트 잠금 프로세스를 완료합니다. 이렇게 완료된 볼트 잠금 정책은 변경할 수 없습니다. `InProgress`을 호출하면 볼트 잠금이 [볼트 잠금 시작(POST lock-policy)](api-InitiateVaultLock.md) 상태로 전환됩니다. 볼트 잠금 상태는 [볼트 잠금 가져오기(GET lock-policy)](api-GetVaultLock.md)을 호출하면 가져올 수 있습니다. 볼트 잠금 프로세스에 대한 자세한 내용은 [Amazon Glacier 볼트 잠금](vault-lock.md) 섹션을 참조하세요.

이 작업은 멱등성을 갖습니다. 볼트 잠금 상태가 `Locked`이고, 입력한 잠금 ID가 처음에 볼트를 잠글 때 사용한 잠금 ID와 일치하는 경우에는 이 요청이 항상 성공합니다.

볼트 잠금이 `Locked` 상태라고 해도 요청 시 잘못된 잠금 ID를 입력하면 `AccessDeniedException` 오류가 반환됩니다. 볼트 잠금이 `InProgress` 상태일 때 잘못된 잠금 ID를 입력하면 `InvalidParameter` 오류가 발생합니다.

## 요청
<a name="api-CompleteVaultLock-requests"></a>

볼트 잠금 프로세스를 완료하려면 HTTP `POST` 요청을 유효한 잠금 ID와 함께 볼트의 `lock-policy` 하위 리소스 URI로 전송합니다.

### 구문
<a name="api-CompleteVaultLock-requests-syntax"></a>

```
1. POST /AccountId/vaults/vaultName/lock-policy/lockId HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. Content-Length: Length
6. x-amz-glacier-version: 2012-06-01
```

**참고**  
`AccountId` 값은 AWS 계정 ID입니다. 이 값은 요청 서명에 사용된 보안 인증 정보와 연결된 AWS 계정 ID와 반드시 일치해야 합니다. AWS 계정 ID 또는 선택적으로 하나의 '`-`'(하이픈)을 지정할 수 있습니다. 이 경우에 Amazon Glacier는 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 지정하는 경우 ID에 하이픈('-')을 포함하지 않습니다.

 `lockId` 값은 [볼트 잠금 시작(POST lock-policy)](api-InitiateVaultLock.md) 요청에서 가져오는 잠금 ID입니다.

### 요청 파라미터
<a name="api-CompleteVaultLock-requestParameters"></a>

#### 요청 헤더
<a name="api-CompleteVaultLock-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

#### 요청 본문
<a name="api-CompleteVaultLock-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-CompleteVaultLock-responses"></a>

작업 요청이 성공하면 서비스가 HTTP `204 No Content` 응답을 반환합니다.

### 구문
<a name="api-CompleteVaultLock-response-syntax"></a>

```
HTTP/1.1 204 No Content
x-amzn-RequestId: x-amzn-RequestId
Date: Date
```

### 응답 헤더
<a name="api-CompleteVaultLock-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-CompleteVaultLock-responses-elements"></a>

이 작업은 응답 본문을 반환하지 않습니다.

### 오류
<a name="api-CompleteVaultLock-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예시
<a name="api-CompleteVaultLock-examples"></a>

### 요청 예시
<a name="api-CompleteVaultLock-example-request"></a>

다음은 HTTP POST 요청을 잠금 ID와 함께 전송하여 볼트 잠금 프로세스를 완료하는 예제입니다.

```
1. POST /-/vaults/examplevault/lock-policy/AE863rKkWZU53SLW5be4DUcW HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
5. Content-Length: length
6. x-amz-glacier-version: 2012-06-01
```

### 응답의 예
<a name="api-CompleteVaultLock-example-response"></a>

요청이 성공하면 Amazon Glacier(Amazon Glacier)가 다음 예시와 같이 `HTTP 204 No Content` 응답을 반환합니다.

```
1. HTTP/1.1 204 No Content
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:02:00 GMT
```

## 관련 섹션
<a name="related-sections-CompleteVaultLock"></a>

 
+ [볼트 잠금 중단(DELETE lock-policy)](api-AbortVaultLock.md)

 
+ [볼트 잠금 가져오기(GET lock-policy)](api-GetVaultLock.md)

 
+ [볼트 잠금 시작(POST lock-policy)](api-InitiateVaultLock.md)

## 참고
<a name="api-CompleteVaultLock-SeeAlso"></a>

언어 특정 Amazon SDK 중 하나에서 이 API를 사용하는 방법에 대한 자세한 내용은 다음을 참조하세요.
+  [AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/reference/glacier/complete-vault-lock.html) 

# 볼트 삭제(DELETE vault)
<a name="api-vault-delete"></a>

## 설명
<a name="api-vault-delete-description"></a>

이 작업은 볼트를 삭제합니다. Amazon Glacier(Amazon Glacier)는 마지막 인벤토리를 기준으로 볼트에 저장된 아카이브가 없고, 마지막 인벤토리 이후 볼트에 대한 쓰기 작업이 없었던 경우에 한해 볼트를 삭제합니다. 두 조건 중 하나라도 충족되지 않는 경우에는 볼트 삭제가 중단되고(볼트가 삭제되지 않음) Amazon Glacier는 오류를 반환합니다.

볼트에 저장된 아카이브 수 등 볼트 관련 정보를 제공하는 [볼트 설명(GET vault)](api-vault-get.md) 작업을 사용할 수 있지만, 해당 정보는 Amazon Glacier가 마지막으로 생성한 볼트 인벤토리를 기준으로 합니다.

이 작업은 멱등성을 갖습니다.

**참고**  
볼트를 삭제하면 해당 볼트에 연결된 볼트 액세스 정책 역시 삭제됩니다. 볼트 액세스 정책에 대한 자세한 내용은 [볼트 액세스 정책](vault-access-policy.md) 섹션을 참조하세요.

## 요청
<a name="api-vault-delete-requests"></a>

볼트를 삭제하려면 `DELETE` 요청을 볼트의 리소스 URI로 전송합니다.

### 구문
<a name="api-vault-delete-requests-syntax"></a>

```
1. DELETE /AccountId/vaults/VaultName HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID 또는 선택적으로 하나의 '`-`'(하이픈)을 지정할 수 있습니다. 이 경우에 Amazon Glacier는 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

### 요청 파라미터
<a name="api-vault-delete-requests-parameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-vault-delete-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-vault-delete-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-vault-delete-responses"></a>

### 구문
<a name="api-vault-delete-response-syntax"></a>

```
HTTP/1.1 204 No Content
x-amzn-RequestId: x-amzn-RequestId
Date: Date
```

### 응답 헤더
<a name="api-vault-delete-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-vault-delete-responses-elements"></a>

이 작업은 응답 본문을 반환하지 않습니다.

### 오류
<a name="api-vault-delete-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예시
<a name="api-vault-delete-examples"></a>

### 요청 예시
<a name="api-vault-delete-example-request"></a>

다음은 이름이 `examplevault`인 볼트를 삭제하는 예제입니다. 이 예제 요청은 삭제할 리소스(볼트)의 URI에 대한 `DELETE` 요청입니다.

```
1. DELETE /-/vaults/examplevault HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

### 응답의 예
<a name="api-vault-delete-example-response"></a>

```
1. HTTP/1.1 204 No Content
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:02:00 GMT
```

## 관련 섹션
<a name="related-sections-vault-delete"></a>

 
+ [볼트 만들기(PUT vault)](api-vault-put.md)
+ [볼트 목록 조회(GET vaults)](api-vaults-get.md)
+ [작업 시작(POST jobs)](api-initiate-job-post.md)
+ [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md)

## 참고
<a name="api-vault-delete-SeeAlso"></a>

언어 특정 Amazon SDK 중 하나에서 이 API를 사용하는 방법에 대한 자세한 내용은 다음을 참조하세요.
+  [AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/reference/glacier/delete-vault.html) 

# 볼트 액세스 정책 삭제(DELETE access-policy)
<a name="api-DeleteVaultAccessPolicy"></a>

## 설명
<a name="api-DeleteVaultAccessPolicy-description"></a>

이 작업에서는 지정된 볼트에 연결되어 있는 액세스 정책을 삭제합니다. 이 작업은 최종적으로 일관성을 갖습니다. 다시 말해서 Amazon Glacier(Amazon Glacier)가 액세스 정책을 완전히 제거하는 데 약간의 시간이 필요하기 때문에 삭제 요청을 전송한 후에도 짧은 시간 동안 정책이 적용되는 것을 볼 수도 있습니다.

이 작업은 멱등성을 갖습니다. 따라서 볼트에 연결되어 있는 정책이 없더라도 삭제를 여러 차례 호출할 수 있습니다. 볼트 액세스 정책에 대한 자세한 내용은 [볼트 액세스 정책](vault-access-policy.md) 섹션을 참조하세요.

## Requests
<a name="api-DeleteVaultAccessPolicy-requests"></a>

현재 볼트 액세스 정책을 삭제하려면 HTTP `DELETE` 요청을 볼트의 `access-policy` 하위 리소스 URI로 전송합니다.

### 구문
<a name="api-DeleteVaultAccessPolicy-requests-syntax"></a>

```
1. DELETE /AccountId/vaults/vaultName/access-policy HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID를 지정하거나 선택적으로 단일 '`-`'(하이픈)를 지정할 수 있습니다.이 경우 Amazon Glacier는 요청에 서명하는 데 사용되는 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

### 요청 파라미터
<a name="api-DeleteVaultAccessPolicy-requests-parameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-DeleteVaultAccessPolicy-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-DeleteVaultAccessPolicy-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-DeleteVaultAccessPolicy-responses"></a>

정책이 성공적으로 삭제되면 Amazon Glacier가 응답에서 `204 No Content`를 반환합니다.

### 구문
<a name="api-DeleteVaultAccessPolicy-responses-syntax"></a>

```
HTTP/1.1 204 No Content
x-amzn-RequestId: x-amzn-RequestId
Date: Date
```

### 응답 헤더
<a name="api-DeleteVaultAccessPolicy-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-DeleteVaultAccessPolicy-responses-elements"></a>

이 작업은 응답 본문을 반환하지 않습니다.

### 오류
<a name="api-DeleteVaultAccessPolicy-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예제
<a name="api-DeleteVaultAccessPolicy-examples"></a>

다음은 볼트 액세스 정책을 삭제하는 방법을 설명한 예제입니다.

### 요청 예시
<a name="api-DeleteVaultAccessPolicy-example-request"></a>

이 예시에서 `DELETE` 요청은 볼트 이름이 **examplevault**인 `access-policy` 하위 리소스로 전송됩니다.

```
1. DELETE /-/vaults/examplevault/access-policy HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
5. x-amz-glacier-version: 2012-06-01
```

### 응답의 예
<a name="api-DeleteVaultAccessPolicy-example-response"></a>

정책이 성공적으로 삭제되면 Amazon Glacier가 응답에서 다음 예시와 같이 `204 No Content`를 반환합니다.

```
1. HTTP/1.1 204 No Content
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:00:00 GMT
```

## 관련 섹션
<a name="related-sections-DeleteVaultAccessPolicy"></a>

 
+ [볼트 액세스 정책 가져오기(GET access-policy)](api-GetVaultAccessPolicy.md)

 
+ [볼트 액세스 정책 설정(PUT access-policy)](api-SetVaultAccessPolicy.md)

## 참고
<a name="api-DeleteVaultAccessPolicy-SeeAlso"></a>

언어 특정 Amazon SDK 중 하나에서 이 API를 사용하는 방법에 대한 자세한 내용은 다음을 참조하세요.
+  [AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/reference/glacier/delete-vault-access-policy.html) 

# 볼트 알림 삭제(DELETE notification-configuration)
<a name="api-vault-notifications-delete"></a>

## 설명
<a name="api-vault-notifications-delete-description"></a>

이 작업에서는 볼트에 설정된 알림 구성([볼트 알림 구성 설정(PUT notification-configuration)](api-vault-notifications-put.md))을 삭제합니다. 작업은 최종적으로 일관성을 갖습니다. 즉, Amazon Glacier(Amazon Glacier)가 알림을 완전히 비활성화하는 데 약간의 시간이 필요하며, 삭제 요청을 보낸 후 잠시 동안은 알림을 받을 수도 있습니다.

## Requests
<a name="api-vault-notifications-delete-requests"></a>

볼트의 알림 구성을 삭제하려면 `DELETE` 요청을 볼트의 `notification-configuration` 하위 리소스로 전송합니다.

### 구문
<a name="api-vault-notifications-delete-requests-syntax"></a>

```
1. DELETE /AccountId/vaults/VaultName/notification-configuration HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID를 지정하거나 선택적으로 단일 '`-`'(하이픈)를 지정할 수 있습니다.이 경우 Amazon Glacier는 요청에 서명하는 데 사용되는 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

### 요청 파라미터
<a name="api-vault-notifications-delete-requests-parameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-vault-notifications-delete-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-vault-notifications-delete-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-vault-notifications-delete-responses"></a>

### 구문
<a name="api-vault-notifications-delete-responses-syntax"></a>

```
HTTP/1.1 204 No Content
x-amzn-RequestId: x-amzn-RequestId
Date: Date
```

### 응답 헤더
<a name="api-vault-notifications-delete-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-vault-notifications-delete-responses-elements"></a>

이 작업은 응답 본문을 반환하지 않습니다.

### 오류
<a name="api-vault-notifications-delete-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예제
<a name="api-vault-notifications-delete-examples"></a>

다음은 볼트에 설정된 알림 구성을 제거하는 방법을 설명한 예제입니다.

### 요청 예시
<a name="api-vault-notifications-delete-example-request"></a>

이 예시에서 `DELETE` 요청은 볼트 이름이 `examplevault`인 `notification-configuration` 하위 리소스로 전송됩니다.

```
1. DELETE /111122223333/vaults/examplevault/notification-configuration HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z 
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

### 응답의 예
<a name="api-vault-notifications-delete-example-response"></a>

```
1. HTTP/1.1 204 No Content
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:00:00 GMT
```

## 관련 섹션
<a name="related-sections-vault-notifications-delete"></a>

 
+ [볼트 알림 가져오기(GET notification-configuration)](api-vault-notifications-get.md)
+ [볼트 알림 구성 설정(PUT notification-configuration)](api-vault-notifications-put.md)
+ [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md)

## 참고
<a name="api-vault-notifications-delete_SeeAlso"></a>

언어 특정 Amazon SDK 중 하나에서 이 API를 사용하는 방법에 대한 자세한 내용은 다음을 참조하세요.
+  [AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/reference/glacier/delete-vault-notifications.html) 

# 볼트 설명(GET vault)
<a name="api-vault-get"></a>

## 설명
<a name="api-vault-get-description"></a>

이 작업에서는 볼트의 Amazon 리소스 이름(ARN), 볼트 생성 날짜, 볼트에 저장된 아카이브 수, 볼트에 저장된 모든 아카이브의 총 크기 등 볼트에 대한 정보를 반환합니다. 아카이브의 수와 총 크기는 Amazon Glacier(Amazon Glacier)가 마지막으로 생성한 볼트 인벤토리를 기준으로 합니다([Amazon Glacier에서의 볼트 작업](working-with-vaults.md) 참조). Amazon Glacier는 거의 매일 볼트 인벤토리를 생성합니다. 이는 아카이브를 볼트에 추가하거나 삭제한 직후에 볼트 설명 요청을 전송하더라도 응답에 변경 내용이 반영되지 않을 수도 있다는 것을 의미합니다.

## 요청
<a name="api-vault-get-requests"></a>

볼트 정보를 가져오려면 `GET` 요청을 특정 볼트 리소스의 URI로 전송합니다.

### 구문
<a name="api-vault-get-requests-syntax"></a>

```
1. GET /AccountId/vaults/VaultName HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID 또는 선택적으로 하나의 '`-`'(하이픈)을 지정할 수 있습니다. 이 경우에 Amazon Glacier는 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

### 요청 파라미터
<a name="api-vault-get-requests-parameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-vault-get-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-vault-get-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-vault-get-responses"></a>

### 구문
<a name="api-vault-get-responses-syntax"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: x-amzn-RequestId
Date: Date
Content-Type: application/json
Content-Length: Length

{
  "CreationDate" : String,
  "LastInventoryDate" : String,
  "NumberOfArchives" : Number,
  "SizeInBytes" : Number,
  "VaultARN" : String,
  "VaultName" : String
}
```

### 응답 헤더
<a name="api-vault-get-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-vault-get-responses-elements"></a>

JSON 응답 본문에는 다음과 같은 JSON 필드가 포함됩니다.

**CreationDate**  
볼트가 생성된 UTC 날짜입니다.  
**유형: ISO 8601 날짜 형식의 문자열 표현입니다. 예: `2013-03-20T17:03:43.221Z`

**LastInventoryDate**  
Amazon Glacier가 마지막 볼트 인벤토리를 완료한 UTC 날짜입니다. 볼트 인벤토리의 시작에 대한 자세한 내용은 [작업 시작(POST jobs)](api-initiate-job-post.md) 섹션을 참조하세요.  
*유형*: ISO 8601 날짜 형식의 문자열 표현입니다(예: `2013-03-20T17:03:43.221Z`).

**NumberOfArchives**  
마지막 볼트 인벤토리를 기준으로 볼트에 저장된 아카이브 수입니다. 인벤토리가 아직 볼트에서 실행되지 않은 경우, 예를 들어 볼트를 방금 생성한 경우 이 필드는 null 값을 반환합니다.  
*형식*: 숫자

**SizeInBytes**  
마지막 인벤토리 날짜를 기준으로 아카이브별 오버헤드를 포함하여 볼트에 저장된 아카이브의 총 크기(바이트)입니다. 인벤토리가 아직 볼트에서 실행되지 않은 경우, 예를 들어 볼트를 방금 생성한 경우 이 필드는 `null` 값을 반환합니다.  
*형식*: 숫자

**VaultARN**  
볼트의 Amazon 리소스 이름(ARN)입니다.  
*유형*: 문자열

**VaultName**  
생성 시 지정한 볼트 이름입니다. 볼트 이름은 볼트의 ARN에도 포함됩니다.  
*유형*: 문자열

### 오류
<a name="api-vault-get-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예시
<a name="api-vault-get-examples"></a>

### 요청 예시
<a name="api-vault-get-example-request"></a>

다음은 이름이 `examplevault`인 볼트에 대한 정보를 가져오는 방법을 설명한 예제입니다.

```
GET /-/vaults/examplevault HTTP/1.1
Host: glacier.us-west-2.amazonaws.com
x-amz-Date: 20170210T120000Z
x-amz-glacier-version: 2012-06-01
Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

### 응답의 예
<a name="api-vault-get-example-response"></a>

```
 1. HTTP/1.1 200 OK
 2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
 3. Date: Wed, 10 Feb 2017 12:02:00 GMT
 4. Content-Type: application/json
 5. Content-Length: 260
 6. 
 7. {
 8.   "CreationDate" : "2012-02-20T17:01:45.198Z",
 9.   "LastInventoryDate" : "2012-03-20T17:03:43.221Z",
10.   "NumberOfArchives" : 192,
11.   "SizeInBytes" : 78088912,
12.   "VaultARN" : "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault",
13.   "VaultName" : "examplevault"
14. }
```

## 관련 섹션
<a name="related-sections-vault-get"></a>

 
+ [볼트 만들기(PUT vault)](api-vault-put.md)
+ [볼트 목록 조회(GET vaults)](api-vaults-get.md)
+ [볼트 삭제(DELETE vault)](api-vault-delete.md)
+ [작업 시작(POST jobs)](api-initiate-job-post.md)
+ [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md)

## 참고
<a name="api-vault-get_SeeAlso"></a>

언어 특정 Amazon SDK 중 하나에서 이 API를 사용하는 방법에 대한 자세한 내용은 다음을 참조하세요.
+  [AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/reference/glacier/describe-vault.html) 

# 볼트 액세스 정책 가져오기(GET access-policy)
<a name="api-GetVaultAccessPolicy"></a>

## 설명
<a name="api-GetVaultAccessPolicy-description"></a>

이 작업은 볼트에 설정되어 있는 `access-policy` 하위 리소스를 검색합니다. 하위 리소스 설정에 대한 자세한 내용은 [볼트 액세스 정책 설정(PUT access-policy)](api-SetVaultAccessPolicy.md) 섹션을 참조하세요. 볼트에 설정되어 있는 액세스 정책이 없는 경우에는 `404 Not found` 오류가 반환됩니다. 볼트 액세스 정책에 대한 자세한 내용은 [볼트 액세스 정책](vault-access-policy.md) 섹션을 참조하세요.

## Requests
<a name="api-GetVaultAccessPolicy-requests"></a>

현재 볼트 액세스 정책을 반환하려면 HTTP `GET` 요청을 볼트의 `access-policy` 하위 리소스 URI로 전송합니다.

### 구문
<a name="api-GetVaultAccessPolicy-requests-syntax"></a>

```
1. GET /AccountId/vaults/vaultName/access-policy HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID를 지정하거나 선택적으로 단일 '`-`'(하이픈)를 지정할 수 있습니다.이 경우 Amazon Glacier는 요청에 서명하는 데 사용되는 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

### 요청 파라미터
<a name="api-GetVaultAccessPolicy-requests-parameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-GetVaultAccessPolicy-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-GetVaultAccessPolicy-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-GetVaultAccessPolicy-responses"></a>

응답 시, Amazon Glacier(Amazon Glacier)는 응답 본문에서 JSON 형식으로 볼트 액세스 정책을 반환합니다.

### 구문
<a name="api-GetVaultAccessPolicy-responses-syntax"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: x-amzn-RequestId
Date: Date
Content-Type: application/json
Content-Length: length
				
{
  "Policy": "string"
}
```

### 응답 헤더
<a name="api-GetVaultAccessPolicy-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-GetVaultAccessPolicy-responses-elements"></a>

JSON 응답 본문에는 다음과 같은 JSON 필드가 포함됩니다.

 **정책**   
JSON 문자열 형식의 볼트 액세스 정책으로서 "\$1"를 이스케이프 문자로 사용합니다.  
 유형: 문자열

### 오류
<a name="api-GetVaultAccessPolicy-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예제
<a name="api-GetVaultAccessPolicy-examples"></a>

다음은 볼트 액세스 정책을 가져오는 방법을 설명한 예제입니다.

### 요청 예시
<a name="api-GetVaultAccessPolicy-example-request"></a>

이 예제에서는 `GET` 요청이 볼트의 `access-policy` 하위 리소스 URI로 전송됩니다.

```
1. GET /-/vaults/examplevault/access-policy HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

### 응답의 예
<a name="api-GetVaultAccessPolicy-example-response"></a>

요청이 성공하면 Amazon Glacier가 응답 본문에서 볼트 액세스 정책을 JSON 문자열 형식으로 반환합니다. 반환된 JSON 문자열은 [볼트 액세스 정책 설정(PUT access-policy)](api-SetVaultAccessPolicy.md) 예제와 같이 "\$1"를 이스케이프 문자로 사용합니다. 하지만 다음 예제에서는 가독성을 위해 반환된 JSON 문자열에서 이스케이프 문자를 제외합니다.

```
 1. HTTP/1.1 200 OK
 2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
 3. Date: Wed, 10 Feb 2017 12:00:00 GMT
 4. Content-Type: application/json
 5. Content-Length: length
 6. 
 7. {
 8.   "Policy": "
 9.     {
10.       "Version": "2012-10-17",		 	 	 
11.       "Statement": [
12.         {
13.           "Sid": "allow-time-based-deletes",
14.           "Principal": {
15.             "AWS": "999999999999"
16.           },
17.           "Effect": "Allow",
18.           "Action": "glacier:Delete*",
19.           "Resource": [
20.             "arn:aws:glacier:us-west-2:999999999999:vaults/examplevault"
21.           ],
22.           "Condition": {
23.             "DateGreaterThan": {
24.               "aws:CurrentTime": "2018-12-31T00:00:00Z"
25.             }
26.           }
27.         }
28.       ]
29.     }        
30.   "
31. }
```

## 관련 섹션
<a name="related-sections-GetVaultAccessPolicy"></a>

 
+ [볼트 액세스 정책 삭제(DELETE access-policy)](api-DeleteVaultAccessPolicy.md)

 
+ [볼트 액세스 정책 설정(PUT access-policy)](api-SetVaultAccessPolicy.md)

## 참고
<a name="api-GetVaultAccessPolicy_SeeAlso"></a>

언어 특정 Amazon SDK 중 하나에서 이 API를 사용하는 방법에 대한 자세한 내용은 다음을 참조하세요.
+  [AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/reference/glacier/get-vault-access-policy.html) 

# 볼트 잠금 가져오기(GET lock-policy)
<a name="api-GetVaultLock"></a>

## 설명
<a name="api-GetVaultLock-description"></a>

이 작업에서는 지정된 볼트에 설정되어 있는 `lock-policy` 하위 리소스에서 다음과 같은 속성을 가져옵니다.
+ 볼트에 설정되어 있는 볼트 잠금 정책
+ 볼트 잠금 상태(`InProgess` 또는 `Locked`)
+ 잠금 ID의 만료 시점. 잠금 ID는 볼트 잠금 프로세스를 마치는 데 사용됩니다.
+ 볼트 잠금이 시작되어 `InProgress` 상태로 전환된 시점

[볼트 잠금 시작(POST lock-policy)](api-InitiateVaultLock.md)을 호출하면 볼트 잠금이 `InProgress` 상태로 전환됩니다. [볼트 잠금 완료(POST lockId)](api-CompleteVaultLock.md)을 호출하면 볼트 잠금이 `Locked` 상태로 전환됩니다. 또한 [볼트 잠금 중단(DELETE lock-policy)](api-AbortVaultLock.md)을 직접 호출하여 볼트 잠금 프로세스를 중단시킬 수 있습니다. 볼트 잠금 프로세스에 대한 자세한 내용은 [Amazon Glacier 볼트 잠금](vault-lock.md) 섹션을 참조하세요.

볼트에 설정되어 있는 볼트 잠금 정책이 없는 경우에는 `404 Not found` 오류가 반환됩니다. 볼트 잠금 정책에 대한 자세한 내용은 [볼트 잠금 정책](vault-lock-policy.md) 섹션을 참조하세요.

## Requests
<a name="api-GetVaultLock-requests"></a>

현재 볼트 잠금 정책과 기타 속성을 반환하려면 다음 구문 예제와 같이 HTTP `GET` 요청을 볼트의 `lock-policy` 하위 리소스 URI로 전송합니다.

### 구문
<a name="api-GetVaultLock-requests-syntax"></a>

```
1. GET /AccountId/vaults/vaultName/lock-policy HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID를 지정하거나 선택적으로 단일 '`-`'(하이픈)를 지정할 수 있습니다.이 경우 Amazon Glacier는 요청에 서명하는 데 사용되는 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

### 요청 파라미터
<a name="api-GetVaultLock-requests-parameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-GetVaultLock-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-GetVaultLock-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-GetVaultLock-responses"></a>

응답 시, Amazon Glacier(Amazon Glacier)는 응답 본문에서 JSON 형식으로 볼트 액세스 정책을 반환합니다.

### 구문
<a name="api-GetVaultLock-responses-syntax"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: x-amzn-RequestId
Date: Date
Content-Type: application/json
Content-Length: length
				
{
  "Policy": "string",
  "State": "string",
  "ExpirationDate": "string",
  "CreationDate":"string"
}
```

### 응답 헤더
<a name="api-GetVaultLock-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-GetVaultLock-responses-elements"></a>

JSON 응답 본문에는 다음과 같은 JSON 필드가 포함됩니다.

 **정책**   
JSON 문자열 형식의 볼트 잠금 정책으로서 "\$1"를 이스케이프 문자로 사용합니다.  
 유형: 문자열

 **상태**   
볼트 잠금 상태입니다.  
 타입: 문자열  
 유효한 값: `InProgress``|Locked`

 **ExpirationDate**   
잠금 ID가 만료되는 UTC 날짜와 시간입니다. 볼트 잠금이 `null` 상태인 경우 이 값은 `Locked`가 될 수 있습니다.  
**유형: ISO 8601 날짜 형식의 문자열 표현입니다. 예: `2013-03-20T17:03:43.221Z`

 **CreationDate**   
볼트 잠금이 `InProgress` 상태로 전환된 UTC 날짜와 시간입니다.  
**유형: ISO 8601 날짜 형식의 문자열 표현입니다. 예: `2013-03-20T17:03:43.221Z`

### 오류
<a name="api-GetVaultLock-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예제
<a name="api-GetVaultLock-examples"></a>

다음은 볼트 잠금 정책을 가져오는 방법을 설명한 예제입니다.

### 요청 예시
<a name="api-GetVaultLock-example-request"></a>

이 예제에서는 `GET` 요청이 볼트의 `lock-policy` 하위 리소스 URI로 전송됩니다.

```
1. GET /-/vaults/examplevault/lock-policy HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

### 응답의 예
<a name="api-GetVaultLock-example-response"></a>

요청이 성공하면 Amazon Glacier가 응답 본문에서 볼트 액세스 정책을 JSON 문자열 형식으로 반환합니다. 반환된 JSON 문자열은 [볼트 잠금 시작(POST lock-policy)](api-InitiateVaultLock.md) 요청 예제와 같이 "\$1"를 이스케이프 문자로 사용합니다. 하지만 다음 예제에서는 가독성을 위해 반환된 JSON 문자열에서 이스케이프 문자를 제외합니다.

```
 1. HTTP/1.1 200 OK
 2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
 3. Date: Wed, 10 Feb 2017 12:00:00 GMT
 4. Content-Type: application/json
 5. Content-Length: length
 6. 
 7. {
 8.   "Policy": "
 9.     {
10.       "Version": "2012-10-17",		 	 	 
11.       "Statement": [
12.         {
13.           "Sid": "Define-vault-lock",
14.           "Principal": {
15.             "AWS": "arn:aws:iam::999999999999:root"
16.           },
17.           "Effect": "Deny",
18.           "Action": "glacier:DeleteArchive",
19.           "Resource": [
20.             "arn:aws:glacier:us-west-2:999999999999:vaults/examplevault"
21.           ],
22.           "Condition": {
23.             "NumericLessThanEquals": {
24.               "glacier:ArchiveAgeInDays": "365"
25.             }
26.           }
27.         }
28.       ]
29.     }
30.   ",
31.   "State": "InProgress",
32.   "ExpirationDate": "exampledate",
33.   "CreationDate": "exampledate"  
34. }
```

## 관련 섹션
<a name="related-sections-GetVaultLock"></a>

 
+ [볼트 잠금 중단(DELETE lock-policy)](api-AbortVaultLock.md)

 
+ [볼트 잠금 완료(POST lockId)](api-CompleteVaultLock.md)

 
+ [볼트 잠금 시작(POST lock-policy)](api-InitiateVaultLock.md)

## 참고
<a name="api-GetVaultLock_SeeAlso"></a>

언어 특정 Amazon SDK 중 하나에서 이 API를 사용하는 방법에 대한 자세한 내용은 다음을 참조하세요.
+  [AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/reference/glacier/get-vault-lock.html) 

# 볼트 알림 가져오기(GET notification-configuration)
<a name="api-vault-notifications-get"></a>

## 설명
<a name="api-vault-notifications-get-description"></a>

이 작업에서는 볼트에 설정되어 있는 `notification-configuration` 하위 리소스를 가져옵니다([볼트 알림 구성 설정(PUT notification-configuration)](api-vault-notifications-put.md) 참조). 볼트에 알림 구성이 설정되어 있지 않으면 `404 Not Found` 오류가 반환됩니다. 볼트 알림에 대한 자세한 내용은 [Amazon Glacier의 볼트 알림 구성](configuring-notifications.md) 섹션을 참조하세요.

## Requests
<a name="api-vault-notifications-get-requests"></a>

알림 구성 정보를 가져오려면 `GET` 요청을 볼트의 `notification-configuration` 하위 리소스 URI로 전송합니다.

### 구문
<a name="api-vault-notifications-get-requests-syntax"></a>

```
1. GET /AccountId/vaults/VaultName/notification-configuration HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID를 지정하거나 선택적으로 단일 '`-`'(하이픈)를 지정할 수 있습니다.이 경우 Amazon Glacier는 요청에 서명하는 데 사용되는 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

### 요청 파라미터
<a name="api-vault-notifications-get-requests-parameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-vault-notifications-get-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-vault-notifications-get-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-vault-notifications-get-responses"></a>

### 구문
<a name="api-vault-notifications-get-responses-syntax"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: x-amzn-RequestId
Date: Date
Content-Type: application/json
Content-Length: length
{
  "Events": [
    String,
    ...
  ],
  "SNSTopic": String
}
```

### 응답 헤더
<a name="api-vault-notifications-get-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-vault-notifications-get-responses-elements"></a>

JSON 응답 본문에는 다음과 같은 JSON 필드가 포함됩니다.

 

**이벤트**  
Amazon Glacier(Amazon Glacier)가 지정된 Amazon SNS 토픽으로 알림 메시지를 보내게 되는 하나 이상의 이벤트로 이루어진 목록입니다. 알림 메시지를 게시하도록 볼트를 구성할 수 있는 볼트 이벤트에 대한 자세한 내용은 [볼트 알림 구성 설정(PUT notification-configuration)](api-vault-notifications-put.md) 섹션을 참조하세요.  
*유형*: 배열

**SNSTopic**  
Amazon Simple Notification Service(SNS) 토픽의 Amazon 리소스 이름(ARN)입니다. 자세한 내용은 **Amazon Simple Notification Service 시작 가이드의 [Amazon SNS 시작하기](https://docs.aws.amazon.com/sns/latest/gsg/Welcome.html)를 참조하세요.  
*유형*: 문자열

### 오류
<a name="api-vault-notifications-get-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예제
<a name="api-vault-notifications-get-examples"></a>

다음은 볼트에 설정된 알림 구성을 가져오는 방법을 설명한 예제입니다.

### 요청 예시
<a name="api-vault-notifications-get-example-request"></a>

이 예에서는 `GET` 요청이 볼트의 `notification-configuration` 하위 리소스로 전송됩니다.

```
1. GET /-/vaults/examplevault/notification-configuration HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

### 응답의 예
<a name="api-vault-notifications-get-example-response"></a>

응답이 성공적으로 반환되면 감사 로깅 구성 문서가 응답 본문에 JSON 형식으로 표시됩니다. 이번 예시에서는 구성에 따라 두 가지 이벤트(`ArchiveRetrievalCompleted`와 `InventoryRetrievalCompleted`)에 대한 알림 메시지가 Amazon SNS 토픽 `arn:aws:sns:us-west-2:012345678901:mytopic`으로 전송되는 것을 보여줍니다.

```
 1. HTTP/1.1 200 OK
 2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
 3. Date: Wed, 10 Feb 2017 12:00:00 GMT
 4. Content-Type: application/json
 5. Content-Length: 150
 6.   
 7. {
 8.   "Events": [
 9.     "ArchiveRetrievalCompleted",
10.     "InventoryRetrievalCompleted"
11.   ],
12.   "SNSTopic": "arn:aws:sns:us-west-2:012345678901:mytopic"
13. }
```

## 관련 섹션
<a name="related-sections-vault-notifications-get"></a>

 
+ [볼트 알림 삭제(DELETE notification-configuration)](api-vault-notifications-delete.md)
+ [볼트 알림 구성 설정(PUT notification-configuration)](api-vault-notifications-put.md)
+ [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md)

## 참고
<a name="api-vault-notifications-get_SeeAlso"></a>

언어 특정 Amazon SDK 중 하나에서 이 API를 사용하는 방법에 대한 자세한 내용은 다음을 참조하세요.
+  [AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/reference/glacier/get-vault-notifications.html) 

# 볼트 잠금 시작(POST lock-policy)
<a name="api-InitiateVaultLock"></a>

## 설명
<a name="api-InitiateVaultLock-description"></a>

이 작업에서는 다음과 같은 방법으로 볼트 잠금 프로세스를 시작합니다.
+ 지정된 볼트에 볼트 잠금 정책을 설치합니다.
+ 볼트 잠금 상태를 `InProgress`로 설정합니다.
+ 볼트 잠금 프로세스를 마치는 데 사용되는 잠금 ID를 반환합니다.

각 볼트마다 볼트 잠금 정책 1개를 설정할 수 있으며, 정책 크기는 최대 20KB로 제한됩니다. 볼트 잠금 정책에 대한 자세한 내용은 [볼트 잠금 정책](vault-lock-policy.md) 섹션을 참조하세요.

볼트 잠금 상태가 `InProgress`로 전환된 후에는 24시간 이내에 볼트 잠금 프로세스를 마쳐야 합니다. 24시간이 지나면 잠금 ID가 만료되고 볼트가 자동으로 `InProgress` 상태를 종료하고 볼트 잠금 정책이 볼트에서 제거됩니다. [볼트 잠금 완료(POST lockId)](api-CompleteVaultLock.md)을 호출하여 볼트 잠금 프로세스를 마치면 볼트 잠금 상태가 `Locked`로 설정됩니다.

**참고**  
볼트 잠금이 `Locked` 상태로 바뀐 이후에는 동일한 볼트에 대해 새로운 볼트 잠금을 시작할 수 없습니다.

[볼트 잠금 중단(DELETE lock-policy)](api-AbortVaultLock.md)을 직접 호출하여 볼트 잠금 프로세스를 중단할 수 있습니다. 볼트 잠금 상태는 [볼트 잠금 가져오기(GET lock-policy)](api-GetVaultLock.md)을 호출하면 알 수 있습니다. 볼트 잠금 프로세스에 대한 자세한 내용은 [Amazon Glacier 볼트 잠금](vault-lock.md) 섹션을 참조하세요.

볼트 잠금이 `InProgress` 상태일 때 이 작업을 호출하면 `AccessDeniedException` 오류가 반환됩니다. 볼트 잠금이 `InProgress` 상태일 때 새로운 볼트 잠금 정책을 시작하려면 [볼트 잠금 중단(DELETE lock-policy)](api-AbortVaultLock.md)을 먼저 호출해야 합니다.

## 요청
<a name="api-InitiateVaultLock-requests"></a>

볼트 잠금 프로세스를 시작하려면 다음 구문 예제와 같이 HTTP `POST` 요청을 볼트의 `lock-policy` 하위 리소스 URI로 전송합니다.

### 구문
<a name="api-InitiateVaultLock-requests-syntax"></a>

```
 1. POST /AccountId/vaults/vaultName/lock-policy HTTP/1.1
 2. Host: glacier.Region.amazonaws.com
 3. Date: Date
 4. Authorization: SignatureValue
 5. Content-Length: Length
 6. x-amz-glacier-version: 2012-06-01
 7. 			
 8. {
 9.   "Policy": "string"
10. }
```

 

**참고**  
`AccountId` 값은 AWS 계정 ID입니다. 이 값은 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID와 일치해야 합니다. AWS 계정 ID 또는 선택적으로 하나의 '`-`'(하이픈)을 지정할 수 있습니다. 이 경우에 Amazon Glacier는 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 지정하는 경우 ID에 하이픈('-')을 포함하지 않습니다.

### 요청 파라미터
<a name="api-InitiateVaultLock-requests-parameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-InitiateVaultLock-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-InitiateVaultLock-requests-elements"></a>

요청 본문의 JSON에 포함되는 필드는 다음과 같습니다.

 **정책**   
JSON 문자열 형식의 볼트 잠금 정책으로서 "\$1"를 이스케이프 문자로 사용합니다.  
 유형: 문자열   
 필수 항목 여부: 예

## 응답
<a name="api-InitiateVaultLock-responses"></a>

Amazon Glacier(Amazon Glacier)는 정책이 수락되면 `HTTP 201 Created` 응답을 반환합니다.

### 구문
<a name="api-InitiateVaultLock-response-syntax"></a>

```
HTTP/1.1 201 Created
x-amzn-RequestId: x-amzn-RequestId
Date: Date
x-amz-lock-id: lockId
```

### 응답 헤더
<a name="api-InitiateVaultLock-responses-headers"></a>

성공적인 응답에는 모든 작업에 일반적인 응답 헤더 외에 다음 응답 헤더가 포함됩니다. 일반적인 응답 헤더에 대한 자세한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.


|  이름  |  설명  | 
| --- | --- | 
|  x-amz-lock-id  |  볼트 잠금 프로세스를 마치는 데 사용되는 잠금 ID입니다. 유형: 문자열  | 

### 응답 본문
<a name="api-InitiateVaultLock-responses-elements"></a>

이 작업은 응답 본문을 반환하지 않습니다.

### 오류
<a name="api-InitiateVaultLock-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예시
<a name="api-InitiateVaultLock-examples"></a>

### 요청 예시
<a name="api-InitiateVaultLock-example-request"></a>

다음은 HTTP `PUT` 요청을 볼트의 `lock-policy` 하위 리소스 URI로 전송하는 예제입니다. `Policy` JSON 문자열은 이스케이프 문자로 "\$1"를 사용합니다.

```
1. PUT /-/vaults/examplevault/lock-policy HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
5. Content-Length: length
6. x-amz-glacier-version: 2012-06-01
7. 
8. {"Policy":"{\"Version\":\"2012-10-17\",		 	 	 \"Statement\":[{\"Sid\":\"Define-vault-lock\",\"Effect\":\"Deny\",\"Principal\":{\"AWS\":\"arn:aws:iam::999999999999:root\"},\"Action\":\"glacier:DeleteArchive\",\"Resource\":\"arn:aws:glacier:us-west-2:999999999999:vaults/examplevault\",\"Condition\":{\"NumericLessThanEquals\":{\"glacier:ArchiveAgeinDays\":\"365\"}}}]}"}
```

### 응답의 예
<a name="api-InitiateVaultLock-example-response"></a>

요청이 성공하면 Amazon Glacier가 다음 예시와 같이 `HTTP 201 Created` 응답을 반환합니다.

```
1. HTTP/1.1 201 Created
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:02:00 GMT
4. x-amz-lock-id: AE863rKkWZU53SLW5be4DUcW
```

## 관련 섹션
<a name="related-sections-InitiateVaultLock"></a>

 
+ [볼트 잠금 중단(DELETE lock-policy)](api-AbortVaultLock.md)

 
+ [볼트 잠금 완료(POST lockId)](api-CompleteVaultLock.md)

 
+ [볼트 잠금 가져오기(GET lock-policy)](api-GetVaultLock.md)

## 참고
<a name="api-InitiateVaultLock_SeeAlso"></a>

언어 특정 Amazon SDK 중 하나에서 이 API를 사용하는 방법에 대한 자세한 내용은 다음을 참조하세요.
+  [AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/reference/glacier/initiate-vault-lock.html) 

# 볼트의 태그 목록 조회(GET tags)
<a name="api-ListTagsForVault"></a>

이 작업에서는 볼트에 연결되어 있는 모든 태그의 목록을 조회합니다. 태그가 없는 경우에는 비어있는 맵을 반환합니다. 태그에 대한 자세한 내용은 [Amazon Glacier 리소스에 태그 지정](tagging.md) 섹션을 참조하세요.

## 요청 구문
<a name="api-ListTagsForVault-RequestSyntax"></a>

볼트의 태그 목록을 조회하려면 다음 구문 예제와 같이 HTTP GET 요청을 태그 URI로 전송합니다.

```
1. GET /AccountId/vaults/vaultName/tags HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 AWS 계정 ID입니다. 이 값은 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID와 일치해야 합니다. AWS 계정 ID 또는 선택적으로 하나의 '`-`'(하이픈)을 지정할 수 있습니다. 이 경우에 Amazon Glacier는 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 지정하는 경우 ID에 하이픈('-')을 포함하지 않습니다.

## 요청 파라미터
<a name="api-ListTagsForVault-RequestParameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

## 요청 헤더
<a name="api-ListTagsForVault-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

## 요청 본문
<a name="api-ListTagsForVault-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-ListTagsForVault-responses"></a>

작업이 성공하면 서비스가 HTTP `200 OK` 응답을 다시 전송합니다.

### 응답 구문
<a name="api-ListTagsForVault-ResponseSyntax"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: x-amzn-RequestId
Date: Date
Content-Type: application/json
Content-Length: Length
{
   "Tags": 
      {
         "string" : "string",
         "string" : "string"
      }
}
```

### 응답 헤더
<a name="api-ListTagsForVault-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-ListTagsForVault-body"></a>

JSON 응답 본문에는 다음과 같은 JSON 필드가 포함됩니다.

**태그**  <a name="Glacier-ListTagsForVault-response-Tags"></a>
볼트에 연결된 태그입니다. 각 태그는 키와 값으로 구성됩니다.  
 *유형:* 문자열 간 맵   
 *필수 항목 여부*: 예 

### 오류
<a name="api-ListTagsForVault--errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예시
<a name="api-ListTagsForVault-examples"></a>

### 예제: 볼트의 태그 목록 조회
<a name="api-ListTagsForVault-example1"></a>

다음은 볼트의 태그 목록을 조회하는 예제입니다.

#### 요청 예시
<a name="api-ListTagsForVault-example1-request"></a>

이 예제에서는 GET 요청을 전송하여 지정된 볼트의 태그 목록을 가져옵니다.

```
1. GET /-/vaults/examplevault/tags HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

#### 응답의 예
<a name="api-ListTagsForVault-example1-response"></a>

요청이 성공하면 Amazon Glacier(Amazon Glacier)가 다음 예시와 같이 볼트의 태그 목록과 함께 `HTTP 200 OK`를 반환합니다.

```
 1. HTTP/1.1 200 OK
 2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
 3. Date: Wed, 10 Feb 2017 12:02:00 GMT
 4. Content-Type: application/json
 5. Content-Length: length
 6. 
 7. {
 8.    "Tags",
 9.       {
10.          "examplekey1": "examplevalue1",
11.          "examplekey2": "examplevalue2"
12.       }  
13. }
```

## 관련 섹션
<a name="related-sections-ListTagsForVault"></a>

 
+ [볼트에 태그 추가(POST tags add)](api-AddTagsToVault.md)

 
+ [볼트에서 태그 삭제(POST tags remove)](api-RemoveTagsFromVault.md)

## 참고
<a name="api-ListTagsForVault_SeeAlso"></a>

언어 특정 Amazon SDK 중 하나에서 이 API를 사용하는 방법에 대한 자세한 내용은 다음을 참조하세요.
+  [AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/reference/glacier/list-tags-for-vault.html) 

# 볼트 목록 조회(GET vaults)
<a name="api-vaults-get"></a>

## 설명
<a name="api-vaults-get-description"></a>

이 작업에서는 호출 사용자의 계정에 속한 모든 볼트 목록을 조회합니다. 이때 응답으로 반환되는 목록은 볼트 이름을 기준으로 ASCII 정렬 순서를 따릅니다.

기본적으로 이 작업에서 요청 1건당 반환되는 항목 수는 최대 10개입니다. 목록을 조회할 볼트가 더 있는 경우에는 응답 본문의 `marker` 필드에 새로운 볼트 목록 조회 요청과 함께 목록이 계속되는 지점에 볼트의 Amazon 리소스 이름(ARN)이 추가됩니다. 그렇지 않으면 `marker` 필드는 `null` 값을 갖습니다. 다음 볼트 목록 조회 요청에서는 Amazon Glacier(Amazon Glacier)가 이전 볼트 목록 조회 요청에 대한 응답으로 반환한 값으로 `marker` 파라미터를 설정합니다. 또한 요청 시 `limit` 파라미터를 지정하여 응답으로 반환되는 볼트 수를 제한할 수도 있습니다.

## 요청
<a name="api-vaults-get-requests"></a>

볼트 목록을 가져오려면 `GET` 요청을 *볼트* 리소스에 전송합니다.

### 구문
<a name="api-vaults-get-requests-syntax"></a>

```
1. GET /AccountId/vaults HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 AWS 계정 ID입니다. 이 값은 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID와 일치해야 합니다. AWS 계정 ID 또는 선택적으로 하나의 '`-`'(하이픈)을 지정할 수 있습니다. 이 경우에 Amazon Glacier는 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 지정하는 경우 ID에 하이픈('-')을 포함하지 않습니다.

### 요청 파라미터
<a name="api-vaults-get-requests-parameters"></a>

이 작업은 다음 요청 파라미터를 사용합니다.


|  이름  |  설명  |  필수  | 
| --- | --- | --- | 
|  limit  |  반환할 볼트의 최대 수입니다. 기본 제한은 10개입니다. 반환되는 볼트 수가 지정한 제한보다 적을 수 있지만 제한을 초과할 수는 없습니다. 유형: 문자열 제약 조건: 최소 정수 값 1. 최대 정수 값 10  |  아니요  | 
|  marker  |  페이지 매김에 사용되는 문자열입니다. `marker`는 볼트 목록 조회가 시작되는 볼트 ARN을 지정합니다. (`marker`에서 지정하는 볼트는 반환 목록에 포함되지 않습니다.) 이전 볼트 목록 조회 응답에서 `marker` 값을 가져옵니다. `marker`는 이전 볼트 목록 조회 요청에서 시작된 결과에 페이지를 계속해서 매겨야 하는 경우에만 포함해야 합니다. 마커에 대해 빈 값("")을 지정하면 첫 번째 볼트부터 볼트 목록을 반환합니다. 유형: 문자열 제약 조건: 없음  |  아니요  | 

### 요청 헤더
<a name="api-vaults-get-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-vaults-get-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-vaults-get-responses"></a>

### 구문
<a name="api-vaults-get-responses-syntax"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: x-amzn-RequestId
Date: Date
Content-Type: application/json
Content-Length: Length

{
  "Marker": String
  "VaultList": [ 
   {
    "CreationDate": String,
    "LastInventoryDate": String,
    "NumberOfArchives": Number,
    "SizeInBytes": Number,
    "VaultARN": String,
    "VaultName": String
   }, 
   ...
  ]
}
```

### 응답 헤더
<a name="api-vaults-get-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-vaults-get-response-body"></a>

JSON 응답 본문에는 다음과 같은 JSON 필드가 포함됩니다.

 

**CreationDate**  
볼트가 생성된 날짜(UTC)입니다.  
*유형*: 문자열. ISO 8601 날짜 형식의 문자열 표현입니다. 예: `2013-03-20T17:03:43.221Z`

**LastInventoryDate**  
마지막 볼트 인벤토리의 날짜(UTC)입니다. 인벤토리가 아직 볼트에서 실행되지 않은 경우, 예를 들어 볼트를 방금 생성한 경우 이 필드는 null 값을 가질 수 있습니다. 볼트 인벤토리의 시작에 대한 자세한 내용은 [작업 시작(POST jobs)](api-initiate-job-post.md) 섹션을 참조하세요.  
*유형*: ISO 8601 날짜 형식의 문자열 표현입니다. 예: `2013-03-20T17:03:43.221Z`

**마커**  
결과에 페이지를 계속해서 매기는 지점을 나타내는 `vaultARN`입니다. 다른 볼트 목록 조회 요청에서 `marker`를 사용하여 목록에서 추가 볼트를 가져올 수 있습니다. 볼트가 더 없을 경우 이 값은 `null`입니다.  
*유형*: 문자열

**NumberOfArchives**  
마지막 인벤토리 날짜를 기준으로 볼트의 아카이브 수입니다.  
*유형*: 숫자

**SizeInBytes**  
마지막 인벤토리 날짜를 기준으로 아카이브별 오버헤드를 포함하여 볼트에 저장된 모든 아카이브의 총 크기(바이트)입니다.  
*유형*: 숫자

**VaultARN**  
볼트의 Amazon 리소스 이름(ARN)입니다.  
*유형*: 문자열

**VaultList**  
각각 볼트에 대해 설명하는 객체의 배열입니다.  
*유형*: 배열

**VaultName**  
볼트 이름입니다.  
*유형*: 문자열

### 오류
<a name="api-vaults-get-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예시
<a name="api-vaults-get-examples"></a>

### 예제: 모든 볼트 목록 조회
<a name="api-vaults-get-example1"></a>

다음은 볼트 목록을 조회하는 예제입니다. 요청에서 `marker` 파라미터와 `limit` 파라미터를 지정하지 않았기 때문에 최대 10개까지 볼트가 반환됩니다.

#### 요청 예시
<a name="api-vaults-get-example1-request"></a>

```
1. GET /-/vaults HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

#### 응답의 예
<a name="api-vaults-get-example1-response"></a>

`Marker`가 `null` 값을 갖기 때문에 더 이상 목록을 조회할 볼트가 없다는 것을 의미합니다.

```
 1. HTTP/1.1 200 OK
 2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
 3. Date: Wed, 10 Feb 2017 12:02:00 GMT
 4. Content-Type: application/json
 5. Content-Length: 497	
 6. 
 7. {
 8.   "Marker": null,
 9.   "VaultList": [ 
10.    {
11.     "CreationDate": "2012-03-16T22:22:47.214Z",
12.     "LastInventoryDate": "2012-03-21T22:06:51.218Z",
13.     "NumberOfArchives": 2,
14.     "SizeInBytes": 12334,
15.     "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault1",
16.     "VaultName": "examplevault1"
17.    }, 
18.    {
19.     "CreationDate": "2012-03-19T22:06:51.218Z",
20.     "LastInventoryDate": "2012-03-21T22:06:51.218Z",
21.     "NumberOfArchives": 0,
22.     "SizeInBytes": 0,
23.     "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault2",
24.     "VaultName": "examplevault2"
25.    },
26.    {
27.     "CreationDate": "2012-03-19T22:06:51.218Z",
28.     "LastInventoryDate": "2012-03-25T12:14:31.121Z",
29.     "NumberOfArchives": 0,
30.     "SizeInBytes": 0,
31.     "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault3",
32.     "VaultName": "examplevault3"
33.    } 
34.   ]
35. }
```

### 예제: 부분적 볼트 목록 조회
<a name="api-vaults-get-example2"></a>

다음은 `marker`에서 지정한 볼트부터 볼트 2개를 반환하는 예제입니다.

#### 요청 예시
<a name="api-vaults-get-example2-request"></a>

```
1. GET /-/vaults?limit=2&marker=arn:aws:glacier:us-west-2:012345678901:vaults/examplevault1 HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

#### 응답의 예
<a name="api-vaults-get-example2-response"></a>

목록에서 볼트 2개가 반환됩니다. `Marker`에 볼트 ARN이 포함되어 있으므로 다른 볼트 목록 조회 요청에서 페이지 매김이 계속 됩니다.

```
 1. HTTP/1.1 200 OK
 2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
 3. Date: Wed, 10 Feb 2017 12:02:00 GMT
 4. Content-Type: application/json
 5. Content-Length: 497	
 6. 
 7. {
 8.   "Marker": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault3",
 9.   "VaultList": [ 
10.    {
11.     "CreationDate": "2012-03-16T22:22:47.214Z",
12.     "LastInventoryDate": "2012-03-21T22:06:51.218Z",
13.     "NumberOfArchives": 2,
14.     "SizeInBytes": 12334,
15.     "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault1",
16.     "VaultName": "examplevault1"
17.    }, 
18.    {
19.     "CreationDate": "2012-03-19T22:06:51.218Z",
20.     "LastInventoryDate": "2012-03-21T22:06:51.218Z",
21.     "NumberOfArchives": 0,
22.     "SizeInBytes": 0,
23.     "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault2",
24.     "VaultName": "examplevault2"
25.    }
26.   ]
27. }
```

## 관련 섹션
<a name="related-sections-vaults-get"></a>

 
+ [볼트 만들기(PUT vault)](api-vault-put.md)
+ [볼트 삭제(DELETE vault)](api-vault-delete.md)
+ [작업 시작(POST jobs)](api-initiate-job-post.md)
+ [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md)

## 참고
<a name="api-vaults-get_SeeAlso"></a>

언어 특정 Amazon SDK 중 하나에서 이 API를 사용하는 방법에 대한 자세한 내용은 다음을 참조하세요.
+  [AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/reference/glacier/list-vaults.html) 

# 볼트에서 태그 삭제(POST tags remove)
<a name="api-RemoveTagsFromVault"></a>

이 작업에서는 볼트에 연결되어 있는 태그 집합에서 태그를 1개 이상 삭제합니다. 태그에 대한 자세한 내용은 [Amazon Glacier 리소스에 태그 지정](tagging.md) 섹션을 참조하세요.

이 작업은 멱등성을 갖습니다. 볼트에 연결되어 있는 태그가 없더라도 작업은 성공적으로 실행됩니다.

## 요청 구문
<a name="api-RemoveTagsFromVault-RequestSyntax"></a>

볼트에서 태그를 삭제하려면 다음 구문 예제와 같이 HTTP POST 요청을 태그 URI로 전송합니다.

```
POST /AccountId/vaults/vaultName/tags?operation=remove HTTP/1.1
Host: glacier.Region.amazonaws.com
Date: Date
Authorization: SignatureValue
Content-Length: Length
x-amz-glacier-version: 2012-06-01
{
   "TagKeys": [
      "string",
      "string"
   ]
}
```

 

**참고**  
`AccountId` 값은 AWS 계정 ID입니다. 이 값은 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID와 일치해야 합니다. AWS 계정 ID 또는 선택적으로 하나의 '`-`'(하이픈)을 지정할 수 있습니다. 이 경우에 Amazon Glacier는 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 지정하는 경우 ID에 하이픈('-')을 포함하지 않습니다.

## 요청 파라미터
<a name="api-RemoveTagsFromVault-RequestParameters"></a>


|  이름  |  설명  |  필수  | 
| --- | --- | --- | 
|  operation=remove  |  [볼트에 태그 추가(POST tags add)](api-AddTagsToVault.md)와 구분할 목적으로 `remove` 값이 추가된 단일 쿼리 문자열 파라미터 `operation`입니다.  |  예  | 

### 요청 헤더
<a name="api-RemoveTagsFromVault-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-RemoveTagsFromVault-requests-elements"></a>

요청 본문에는 다음과 같은 JSON 필드가 포함됩니다.

 

**TagKeys**  
태그 키 목록입니다. 해당하는 태그가 각각 볼트에서 삭제됩니다.  
 *유형:* 문자열 배열  
 *길이 제한:* 목록의 최소 항목 수 1개. 목록의 최대 항목 수 10개  
 *필수 항목 여부*: 예

## 응답
<a name="api-RemoveTagsFromVault-responses"></a>

작업이 성공하면 서비스가 비어있는 HTTP 본문과 함께 HTTP `204 No Content` 응답을 다시 전송합니다.

### 구문
<a name="api-RemoveTagsFromVault-response-syntax"></a>

```
HTTP/1.1 204 No Content
x-amzn-RequestId: x-amzn-RequestId
Date: Date
```

### 응답 헤더
<a name="api-RemoveTagsFromVault-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-RemoveTagsFromVault-responses-elements"></a>

이 작업은 응답 본문을 반환하지 않습니다.

### 오류
<a name="api-RemoveTagsFromVault-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예시
<a name="api-RemoveTagsFromVault-examples"></a>

### 요청 예시
<a name="api-RemoveTagsFromVault-example-request"></a>

다음은 HTTP POST 요청을 전송하여 지정한 태그를 삭제하는 예제입니다.

```
 1. POST /-/vaults/examplevault/tags?operation=remove HTTP/1.1
 2. Host: glacier.us-west-2.amazonaws.com
 3. x-amz-Date: 20170210T120000Z
 4. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
 5. Content-Length: length
 6. x-amz-glacier-version: 2012-06-01
 7. 			
 8. {
 9.    "TagsKeys": [
10.       "examplekey1",
11.       "examplekey2"
12.    ]        
13. }
```

### 응답의 예
<a name="api-RemoveTagsFromVault-example-response"></a>

요청이 성공하면 Amazon Glacier(Amazon Glacier)가 다음 예시와 같이 `HTTP 204 No Content`를 반환합니다.

```
1. HTTP/1.1 204 No Content
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:02:00 GMT
```

## 관련 섹션
<a name="related-sections-RemoveTagsFromVault"></a>

 
+ [볼트에 태그 추가(POST tags add)](api-AddTagsToVault.md)

 
+ [볼트의 태그 목록 조회(GET tags)](api-ListTagsForVault.md)

## 참고
<a name="api-RemoveTagsFromVault_SeeAlso"></a>

언어 특정 Amazon SDK 중 하나에서 이 API를 사용하는 방법에 대한 자세한 내용은 다음을 참조하세요.
+  [AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/reference/glacier/remove-tags-from-vault.html) 

# 볼트 액세스 정책 설정(PUT access-policy)
<a name="api-SetVaultAccessPolicy"></a>

## 설명
<a name="api-SetVaultAccessPolicy-description"></a>

이 작업에서는 볼트 액세스 정책을 구성하여 기존 정책을 덮어씁니다. 볼트 액세스 정책을 구성하려면 `PUT` 요청을 볼트의 `access-policy` 하위 리소스에 전송합니다. 볼트마다 액세스 정책 1개를 설정할 수 있으며, 정책 크기는 최대 20KB로 제한됩니다. 볼트 액세스 정책에 대한 자세한 내용은 [볼트 액세스 정책](vault-access-policy.md) 섹션을 참조하세요.

## Requests
<a name="api-SetVaultAccessPolicy-requests"></a>

### 구문
<a name="api-SetVaultAccessPolicy-requests-syntax"></a>

볼트 액세스 정책을 설정하려면 다음 구문 예제와 같이 HTTP `PUT` 요청을 볼트의 `access-policy` 하위 리소스 URI로 전송합니다.

```
 1. PUT /AccountId/vaults/vaultName/access-policy HTTP/1.1
 2. Host: glacier.Region.amazonaws.com
 3. Date: Date
 4. Authorization: SignatureValue
 5. Content-Length: Length
 6. x-amz-glacier-version: 2012-06-01
 7. 			
 8. {
 9.   "Policy": "string"
10. }
```

 

**참고**  
`AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID를 지정하거나 선택적으로 단일 '`-`'(하이픈)를 지정할 수 있습니다.이 경우 Amazon Glacier는 요청에 서명하는 데 사용되는 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

### 요청 파라미터
<a name="api-SetVaultAccessPolicy-requests-parameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-SetVaultAccessPolicy-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-SetVaultAccessPolicy-requests-elements"></a>

요청 본문의 JSON에 포함되는 필드는 다음과 같습니다.

 **정책**   
JSON 문자열 형식의 볼트 액세스 정책으로서 "\$1"를 이스케이프 문자로 사용합니다.  
 유형: 문자열   
 필수 항목 여부: 예

## 응답
<a name="api-SetVaultAccessPolicy-responses"></a>

정책이 허용되면 Amazon Glacier가 응답으로 `204 No Content`를 반환합니다.

### 구문
<a name="api-SetVaultAccessPolicy-response-syntax"></a>

```
HTTP/1.1 204 No Content
x-amzn-RequestId: x-amzn-RequestId
Date: Date
```

### 응답 헤더
<a name="api-SetVaultAccessPolicy-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-SetVaultAccessPolicy-responses-elements"></a>

이 작업은 응답 본문을 반환하지 않습니다.

### 오류
<a name="api-SetVaultAccessPolicy-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예제
<a name="api-SetVaultAccessPolicy-examples"></a>

### 요청 예시
<a name="api-SetVaultAccessPolicy-example-request"></a>

다음은 HTTP `PUT` 요청을 볼트의 `access-policy` 하위 리소스 URI로 전송하는 예제입니다. `Policy` JSON 문자열은 이스케이프 문자로 "\$1"를 사용합니다.

```
1. PUT /-/vaults/examplevault/access-policy HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
5. Content-Length: length
6. x-amz-glacier-version: 2012-06-01
7. 
8. {"Policy":"{\"Version\":\"2012-10-17\",		 	 	 \"Statement\":[{\"Sid\":\"Define-owner-access-rights\",\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"arn:aws:iam::999999999999:root\"},\"Action\":\"glacier:DeleteArchive\",\"Resource\":\"arn:aws:glacier:us-west-2:999999999999:vaults/examplevault\"}]}"}
```

### 응답의 예
<a name="api-SetVaultAccessPolicy-example-response"></a>

요청이 성공하면 Amazon Glacier(Amazon Glacier)가 다음 예시와 같이 `HTTP 204 No Content`를 반환합니다.

```
1. HTTP/1.1 204 No Content
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:02:00 GMT
```

## 관련 섹션
<a name="related-sections-SetVaultAccessPolicy"></a>

 
+ [볼트 액세스 정책 삭제(DELETE access-policy)](api-DeleteVaultAccessPolicy.md)

 
+ [볼트 액세스 정책 가져오기(GET access-policy)](api-GetVaultAccessPolicy.md)

## 참고
<a name="api-SetVaultAccessPolicy_SeeAlso"></a>

언어 특정 Amazon SDK 중 하나에서 이 API를 사용하는 방법에 대한 자세한 내용은 다음을 참조하세요.
+  [AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/reference/glacier/set-vault-access-policy.html) 

# 볼트 알림 구성 설정(PUT notification-configuration)
<a name="api-vault-notifications-put"></a>

## 설명
<a name="api-vault-notifications-put-description"></a>

Amazon Glacier(Amazon Glacier)에서 아카이브 및 볼트 인벤토리 가져오기는 비동기식 작업이기 때문에 먼저 작업을 시작하여 완료될 때까지 기다린 후에 작업 출력을 다운로드해야 합니다. 작업이 완료되었을 때 알림 메시지를 Amazon Simple Notification Service(Amazon SNS) 토픽에 게시하도록 볼트를 구성할 수 있습니다. 이 작업을 사용하여 볼트에 대한 알림 구성을 설정할 수 있습니다. 자세한 내용은 [Amazon Glacier의 볼트 알림 구성](configuring-notifications.md) 단원을 참조하십시오.

볼트 알림을 구성하려면 PUT 요청을 볼트의 `notification-configuration` 하위 리소스에 전송합니다. 알림 구성은 볼트에 따라 다르기 때문에 볼트 하위 리소스라고 불리기도 합니다. 요청에는 Amazon Simple Notification Service(Amazon SNS) 토픽을 제공하는 JSON 문서와 Amazon Glacier가 알림 메시지를 토픽에 전송할 이벤트가 포함되어야 합니다.

다음과 같은 볼트 이벤트에 대해 알림 메시지를 게시하도록 볼트를 구성할 수 있습니다.

 
+ **`ArchiveRetrievalCompleted`**: 이 이벤트는 아카이브 가져오기로 시작된 작업이 완료되었을 때 발생합니다([작업 시작(POST jobs)](api-initiate-job-post.md)). 완료된 작업은 상태는 `Succeeded` 또는 `Failed`가 될 수 있습니다. SNS 토픽으로 전송되는 알림 메시지는 [작업 설명(GET JobID)](api-describe-job-get.md)에서 반환되는 출력과 동일합니다.
+ **`InventoryRetrievalCompleted`**: 이 이벤트는 인벤토리 가져오기로 시작된 작업이 완료되었을 때 발생합니다([작업 시작(POST jobs)](api-initiate-job-post.md)). 완료된 작업은 상태는 `Succeeded` 또는 `Failed`가 될 수 있습니다. SNS 토픽으로 전송되는 알림 메시지는 [작업 설명(GET JobID)](api-describe-job-get.md)에서 반환되는 출력과 동일합니다.

Amazon SNS 토픽은 알림 메시지를 해당 토픽 게시할 수 있도록 반드시 볼트에 권한을 부여해야 합니다.

## Requests
<a name="api-vault-notifications-put-requests"></a>

볼트에 대한 알림 구성을 설정하려면 PUT 요청을 볼트의 `notification-configuration` 하위 리소스 URI로 전송합니다. 구성은 요청 본문에서 지정하며, Amazon SNS 토픽 이름을 비롯해 각 토픽으로 알림 메시지를 트리거하는 이벤트들의 배열이 포함됩니다.

### 구문
<a name="api-vault-notifications-put-requests-syntax"></a>

```
 1. PUT /AccountId/vaults/VaultName/notification-configuration HTTP/1.1
 2. Host: glacier.Region.amazonaws.com
 3. Date: Date
 4. Authorization: SignatureValue
 5. x-amz-glacier-version: 2012-06-01
 6. 
 7. {
 8.    "SNSTopic": String,
 9.    "Events":[String, ...] 
10. }
```

 

**참고**  
`AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID를 지정하거나 선택적으로 단일 '`-`'(하이픈)를 지정할 수 있습니다.이 경우 Amazon Glacier는 요청에 서명하는 데 사용되는 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

### 요청 파라미터
<a name="api-vault-notifications-put-requests-parameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-vault-notifications-put-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-vault-notifications-put-requests-elements"></a>

 요청 본문의 JSON에 포함되는 필드는 다음과 같습니다.

**이벤트**  
Amazon Glacier가 알림 메시지를 전송하는 하나 이상의 이벤트의 배열입니다.  
*유효한 값*: `ArchiveRetrievalCompleted` \$1 `InventoryRetrievalCompleted`   
*필수 항목 여부*: 예  
*유형*: 배열

**SNSTopic**  
Amazon SNS 토픽 ARN입니다. 자세한 내용은 **Amazon Simple Notification Service 시작 가이드의 [Amazon SNS 시작하기](https://docs.aws.amazon.com/sns/latest/gsg/Welcome.html)를 참조하세요.  
*필수 항목 여부*: 예  
*유형*: 문자열

## 응답
<a name="api-vault-notifications-put-responses"></a>

알림 구성이 허용되면 Amazon Glacier(Amazon Glacier)가 응답으로 `204 No Content`를 반환합니다.

### 구문
<a name="api-vault-notifications-put-responses-elements"></a>

```
HTTP/1.1 204 No Content
x-amzn-RequestId: x-amzn-RequestId
Date: Date
```

### 응답 헤더
<a name="api-vault-notifications-put-responses-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-vault-notifications-put-responses-body"></a>

이 작업은 응답 본문을 반환하지 않습니다.

### 오류
<a name="api-vault-notifications-put-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예제
<a name="api-vault-notifications-put-examples"></a>

다음은 볼트 알림 구성 방법을 설명한 예제입니다.

### 요청 예시
<a name="api-vault-notifications-put-example-request"></a>

다음 요청은 `examplevault` 알림 구성을 설정하여 두 개의 이벤트(`ArchiveRetrievalCompleted`와 `InventoryRetrievalCompleted`) 알림이 Amazon SNS 토픽 `arn:aws:sns:us-west-2:012345678901:mytopic`으로 전송되게 합니다.

```
 1. PUT /-/vaults/examplevault/notification-policy HTTP/1.1
 2. Host: glacier.us-west-2.amazonaws.com
 3. x-amz-Date: 20170210T120000Z
 4. x-amz-glacier-version: 2012-06-01
 5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
 6. 
 7. { 
 8.    "Events": ["ArchiveRetrievalCompleted", "InventoryRetrievalCompleted"],
 9.    "SNSTopic": "arn:aws:sns:us-west-2:012345678901:mytopic"       
10. }
```

### 응답의 예
<a name="api-vault-notifications-put-example-response"></a>

요청이 성공하면 응답으로 `204 No Content`가 반환됩니다.

```
1. HTTP/1.1 204 No Content
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:00:00 GMT
```

## 관련 섹션
<a name="related-sections-vault-notifications-put"></a>

 
+ [볼트 알림 가져오기(GET notification-configuration)](api-vault-notifications-get.md)
+ [볼트 알림 삭제(DELETE notification-configuration)](api-vault-notifications-delete.md)
+ [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md)

## 참고
<a name="api-vault-notifications-put_SeeAlso"></a>

언어 특정 Amazon SDK 중 하나에서 이 API를 사용하는 방법에 대한 자세한 내용은 다음을 참조하세요.
+  [AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/reference/glacier/set-vault-notifications.html) 

# 아카이브 작업
<a name="archive-operations"></a>

다음은 Amazon Glacier에서 사용할 수 있는 아카이브 작업입니다.

**Topics**
+ [

# 아카이브 삭제(DELETE archive)
](api-archive-delete.md)
+ [

# 아카이브 업로드(POST archive)
](api-archive-post.md)

# 아카이브 삭제(DELETE archive)
<a name="api-archive-delete"></a>

## 설명
<a name="api-archive-delete-description"></a>

이 작업에서는 아카이브를 볼트에서 삭제합니다. 아카이브는 볼트에서 한 번에 하나씩 삭제할 수 있습니다. 아카이브를 삭제하려면 삭제 요청 시 아카이브 ID를 입력해야 합니다. 아카이브 ID는 해당 아카이브가 포함된 볼트에서 볼트 인벤토리를 다운로드하여 가져올 수 있습니다. 볼트 인벤토리 다운로드에 대한 자세한 내용은 [Amazon Glacier에서 볼트 인벤토리 다운로드](vault-inventory.md) 섹션을 참조하세요.

아카이브를 삭제한 후에도 삭제한 아카이브를 가져오는 작업을 시작할 수 있도록 요청하는 것은 가능하지만 아카이브 가져오기 작업이 실행되지는 않습니다.

아카이브를 삭제할 때 아카이브 ID에 대해 진행 중인 아카이브 가져오기는 다음 시나리오에 따라 성공할 수도, 혹은 성공하지 않을 수도 있습니다.

 
+ Amazon Glacier(Amazon Glacier)가 아카이브 삭제 요청을 수신할 때 아카이브 검색 작업이 활성화되어 데이터 다운로드를 준비하고 있다면 아카이브 검색 작업이 중단될 수도 있습니다.
+ Amazon Glacier가 아카이브 삭제 요청을 수신할 때 아카이브 검색 작업이 아카이브 다운로드를 성공적으로 준비한 경우에는 출력을 다운로드할 수 있습니다.

아카이브 가져오기에 대한 자세한 내용은 [Amazon Glacier에서 아카이브 다운로드](downloading-an-archive.md) 섹션을 참조하세요.

이 작업은 멱등성을 갖습니다. 이미 삭제된 아카이브를 삭제하려고 해도 오류가 발생하지는 않습니다.

## 요청
<a name="api-archive-delete-requests"></a>

아카이브를 삭제하려면 `DELETE` 요청을 아카이브 리소스 URI로 전송합니다.

### 구문
<a name="api-archive-delete-requests-syntax"></a>

```
1. DELETE /AccountId/vaults/VaultName/archives/ArchiveID HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. x-amz-Date: Date
4. Authorization: SignatureValue
5. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID 또는 선택적으로 하나의 '`-`'(하이픈)을 지정할 수 있습니다. 이 경우에 Amazon Glacier는 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

### 요청 파라미터
<a name="api-archive-delete-requests-parameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-archive-delete-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-archive-delete-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-archive-delete-responses"></a>

### 구문
<a name="api-archive-delete-responses-syntax"></a>

```
HTTP/1.1 204 No Content
x-amzn-RequestId: x-amzn-RequestId
Date: Date
```

### 응답 헤더
<a name="api-archive-delete-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-archive-delete-responses-elements"></a>

이 작업은 응답 본문을 반환하지 않습니다.

### 오류
<a name="api-archive-delete-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예시
<a name="api-archive-delete-examples"></a>

다음은 이름이 `examplevault`인 볼트에서 아카이브를 삭제하는 방법을 나타낸 예제입니다.

### 요청 예시
<a name="api-archive-delete-example-request"></a>

삭제할 아카이브의 ID는 `archives` 하위 리소스로 지정됩니다.

```
1. DELETE /-/vaults/examplevault/archives/NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

### 응답의 예
<a name="api-archive-delete-example-response"></a>

요청이 성공하면 Amazon Glacier는 아카이브가 삭제되었음을 나타내기 위해 `204 No Content`로 응답합니다.

```
1. HTTP/1.1 204 No Content
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:00:00 GMT
```

## 관련 섹션
<a name="related-sections-archive-delete"></a>

 
+ [멀티파트 업로드 시작(POST multipart-uploads)](api-multipart-initiate-upload.md)
+ [아카이브 업로드(POST archive)](api-archive-post.md)
+ [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md)

# 아카이브 업로드(POST archive)
<a name="api-archive-post"></a>

## 설명
<a name="api-archive-post-description"></a>

이 작업에서는 아카이브를 볼트에 추가합니다. 성공적으로 업로드되면 데이터를 오랜 기간 저장할 수 있습니다. 응답 시, Amazon Glacier(Amazon Glacier)는 응답의 `x-amz-archive-id` 헤더에 아카이브 ID를 반환합니다. 반환되는 아카이브 ID는 나중에 아카이브에 액세스하는 데 필요하므로 저장해야 합니다.

업로드하는 데이터의 SHA256 트리-해시를 제공해야 합니다. SHA256 트리-해시의 계산에 대한 자세한 내용은 [체크섬 계산](checksum-calculations.md) 섹션을 참조하세요.

**참고**  
SHA256 트리 해시는 API를 사용할 때의 아카이브 업로드(POST archive) 작업에만 필요합니다. AWS CLI를 사용할 때는 필요하지 않습니다.

아카이브를 업로드할 때 선택적으로 최대 1,024개의 인쇄 가능한 ASCII 문자의 아카이브 설명을 지정할 수 있습니다. Amazon Glacier는 아카이브를 가져오거나 볼트 인벤토리를 가져올 때 아카이브 설명을 반환합니다. Amazon Glacier는 어떤 방식으로든 설명을 해석하지 않습니다. 아카이브 설명이 고유할 필요는 없습니다. 또한 설명을 사용하여 아카이브 목록을 가져오거나 정렬할 수도 없습니다.

선택적인 아카이브 설명을 제외하고 Amazon Glacier는 아카이브에 대해 추가적인 메타데이터를 지원하지 않습니다. 아카이브 ID는 불투명한 문자열이기 때문에 아카이브의 의미를 추정할 수 없습니다. 대신에 클라이언트 측에서 아카이브 메타데이터를 유지할 수 있습니다. 자세한 내용은 [Amazon Glacier의 아카이브 작업](working-with-archives.md) 섹션을 참조하세요.

아카이브는 변경할 수 없습니다. 아카이브를 업로드한 후에는 해당 아카이브나 설명을 편집할 수 없습니다.

## 요청
<a name="api-archive-post-requests"></a>

아카이브를 업로드하려면 HTTP `POST` 메서드를 사용하여 아카이브를 저장할 볼트의 `archives` 하위 리소스에 요청을 전송합니다. 이때 요청에는 아카이브 페이로드 크기와 체크섬(SHA256 트리-해시)이 포함되어야 하며, 옵션으로 아카이브 설명을 추가할 수도 있습니다.

### 구문
<a name="api-archive-post-requests-syntax"></a>

```
 1. POST /AccountId/vaults/VaultName/archives
 2. Host: glacier.Region.amazonaws.com
 3. x-amz-glacier-version: 2012-06-01
 4. Date: Date
 5. Authorization: SignatureValue
 6. x-amz-archive-description: Description
 7. x-amz-sha256-tree-hash: SHA256 tree hash
 8. x-amz-content-sha256: SHA256 linear hash
 9. Content-Length: Length
10. 
11. <Request body.>
```

 

**참고**  
`AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID 또는 선택적으로 하나의 '`-`'(하이픈)을 지정할 수 있습니다. 이 경우에 Amazon Glacier는 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

### 요청 파라미터
<a name="api-archive-post-requests-parameters"></a>

이 작업 구현에서는 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-archive-post-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더 외에 다음 요청 헤더를 사용합니다. 일반적인 요청 헤더에 대한 자세한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.


|  이름  |  설명  |  필수  | 
| --- | --- | --- | 
| Content-Length  |  객체의 크기(바이트)입니다. 자세한 내용은 [http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html\$1sec14.13](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.13)을 참조하세요. 유형: 숫자 기본값: 없음 제약 조건: 없음  |  예  | 
| x-amz-archive-description  |  옵션으로 업로드하는 아카이브 설명입니다. 평문으로 설명하거나 원하는 식별자를 할당할 수도 있습니다. 아카이브 전체에서 설명이 고유할 필요는 없습니다. 볼트 인벤토리를 가져올 때는([작업 시작(POST jobs)](api-initiate-job-post.md) 참조) 응답으로 반환되는 아카이브마다 이 설명이 포함됩니다. 유형: 문자열 기본값: 없음 제약 조건: 설명은 1,024자보다 작거나 같아야 합니다. 허용되는 문자는 제어 코드를 제외한 7비트 ASCII로 그 중에서도 특히 ASCII 10진수값 32\$1126 또는 16진수값 0x20\$10x7E입니다.  |  아니요  | 
| x-amz-content-sha256  |  페이로드의 SHA256 체크섬(선형 해시)입니다. 이 값은 `x-amz-sha256-tree-hash` 헤더에서 지정하는 값과 다릅니다. 유형: 문자열 기본값: 없음 제약 조건: 없음  |  예  | 
|  x-amz-sha256-tree-hash  |  사용자가 계산하는 페이로드 체크섬, 즉 SHA256 트리-해시입니다. SHA256 트리-해시의 계산에 대한 자세한 내용은 [체크섬 계산](checksum-calculations.md) 섹션을 참조하세요. Amazon Glacier가 다른 페이로드 체크섬을 계산할 경우에는 요청이 거부됩니다. 유형: 문자열 기본값: 없음 제약 조건: 없음  |  예 | 

### 요청 본문
<a name="api-archive-post-requests-elements"></a>

요청 본문에는 업로드할 데이터가 포함됩니다.

## 응답
<a name="api-archive-post-responses"></a>

 응답 시, Amazon Glacier는 아카이브를 오랜 기간 저장하면서 아카이브 ID에 대한 URI 경로를 반환합니다.

### 구문
<a name="api-archive-post-response-syntax"></a>

```
1. HTTP/1.1 201 Created
2. x-amzn-RequestId: x-amzn-RequestId
3. Date: Date
4. x-amz-sha256-tree-hash: ChecksumComputedByAmazonGlacier
5. Location: Location
6. x-amz-archive-id: ArchiveId
```

### 응답 헤더
<a name="api-archive-post-responses-headers"></a>

성공적인 응답에는 모든 작업에 일반적인 응답 헤더 외에 다음 응답 헤더가 포함됩니다. 일반적인 응답 헤더에 대한 자세한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.


|  이름  |  설명  | 
| --- | --- | 
|  Location  |  새롭게 추가된 아카이브 리소스의 상대적 URI 경로입니다. 유형: 문자열  | 
|  x-amz-archive-id  |  아카이브 ID입니다. 이 값은 `Location` 헤더에도 포함됩니다. 유형: 문자열  | 
|  x-amz-sha256-tree-hash​  |  Amazon Glacier에서 계산하는 아카이브 체크섬입니다. 유형: 문자열  | 

### 응답 본문
<a name="api-archive-post-responses-elements"></a>

이 작업은 응답 본문을 반환하지 않습니다.

### 오류
<a name="api-archive-post-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예시
<a name="api-archive-post-examples"></a>

### 요청 예시
<a name="api-archive-post-examples-request"></a>

다음은 아카이브를 업로드하는 요청 예제입니다.

```
 1. POST /-/vaults/examplevault/archives HTTP/1.1
 2. Host: glacier.us-west-2.amazonaws.com
 3. x-amz-Date: 20170210T120000Z
 4. x-amz-sha256-tree-hash: beb0fe31a1c7ca8c6c04d574ea906e3f97b31fdca7571defb5b44dca89b5af60
 5. x-amz-content-sha256: 7f2fe580edb35154041fa3d4b41dd6d3adaef0c85d2ff6309f1d4b520eeecda3
 6. Content-Length: 2097152
 7. x-amz-glacier-version: 2012-06-01
 8. Authorization: Authorization=AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-content-sha256;x-amz-date;x-amz-glacier-version,Signature=16b9a9e220a37e32f2e7be196b4ebb87120ca7974038210199ac5982e792cace
 9. 
10. <Request body (2097152 bytes).>
```

### 응답의 예
<a name="api-archive-post-examples-response"></a>

아래와 같이 성공적인 응답에는 Amazon Glacier가 아카이브에 할당한 ID를 가져올 수 있는 `Location` 헤더가 포함됩니다.

```
1. HTTP/1.1 201 Created
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:00:00 GMT
4. x-amz-sha256-tree-hash: beb0fe31a1c7ca8c6c04d574ea906e3f97b31fdca7571defb5b44dca89b5af60
5. Location: /111122223333/vaults/examplevault/archives/NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId
6. x-amz-archive-id: NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId
```

## 관련 섹션
<a name="related-sections-api-archive-post"></a>

 
+ [Amazon Glacier의 아카이브 작업](working-with-archives.md)
+ [대용량 아카이브를 여러 파트로 나누어 업로드(멀티파트 업로드)](uploading-archive-mpu.md)
+ [아카이브 삭제(DELETE archive)](api-archive-delete.md)
+ [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md)

# 멀티파트 업로드 작업
<a name="multipart-archive-operations"></a>

다음은 Amazon Glacier에서 사용할 수 있는 멀티파트 업로드 작업입니다.

**Topics**
+ [

# 멀티파트 업로드 중단(DELETE uploadID)
](api-multipart-abort-upload.md)
+ [

# 멀티파트 업로드 완료(POST uploadID)
](api-multipart-complete-upload.md)
+ [

# 멀티파트 업로드 시작(POST multipart-uploads)
](api-multipart-initiate-upload.md)
+ [

# 파트 목록 조회(GET uploadID)
](api-multipart-list-parts.md)
+ [

# 멀티파트 업로드 목록 조회(GET multipart-uploads)
](api-multipart-list-uploads.md)
+ [

# 파트 업로드(PUT uploadID)
](api-upload-part.md)

# 멀티파트 업로드 중단(DELETE uploadID)
<a name="api-multipart-abort-upload"></a>

## 설명
<a name="api-multipart-abort-upload-description"></a>

멀티파트 업로드 작업을 위한 본 명령어는 업로드 ID로 식별된 멀티파트 업로드를 중단합니다.

멀티파트 업로드 중단 요청에 성공한 후에는 업로드 ID를 사용하여 추가적인 파트를 업로드하거나 다른 작업을 수행할 수 없습니다. 완료된 멀티파트 업로드는 중단이 불가능합니다. 그러나 이미 중단된 업로드는 일시적으로 중단이 가능합니다.

이 작업은 멱등성을 갖습니다.

멀티파트 업로드에 대한 자세한 내용은 [대용량 아카이브를 여러 파트로 나누어 업로드(멀티파트 업로드)](uploading-archive-mpu.md) 섹션을 참조하세요.

## Requests
<a name="api-multipart-abort-upload-requests"></a>

멀티파트 업로드를 중단하려면 볼트의 `multipart-uploads` 하위 리소스 URI로 HTTP `DELETE` 요청을 보내고 특정 멀티파트 업로드 ID를 URI의 일부분으로 식별하십시오.

### 구문
<a name="api-multipart-abort-upload-requests-syntax"></a>

```
1. DELETE /AccountId/vaults/VaultName/multipart-uploads/uploadID HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID를 지정하거나 선택적으로 단일 '`-`'(하이픈)를 지정할 수 있습니다.이 경우 Amazon Glacier는 요청에 서명하는 데 사용되는 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

### 요청 파라미터
<a name="api-multipart-abort-upload-requests-parameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-multipart-abort-upload-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-multipart-abort-upload-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-multipart-abort-upload-responses"></a>

### 구문
<a name="api-multipart-abort-upload-responses-syntax"></a>

```
HTTP/1.1 204 No Content
x-amzn-RequestId: x-amzn-RequestId
Date: Date
```

### 응답 헤더
<a name="api-multipart-abort-upload-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-multipart-abort-upload-responses-elements"></a>

이 작업은 응답 본문을 반환하지 않습니다.

### 오류
<a name="api-multipart-abort-upload-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예제
<a name="api-multipart-abort-upload-examples"></a>

### 요청 예시
<a name="api-multipart-abort-upload-example-request"></a>

다음의 예시에서는 멀티파트 업로드 ID 리소스의 URI로 `DELETE` 요청이 전송됩니다.

```
1. DELETE /-/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE  HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

### 응답의 예
<a name="api-multipart-abort-upload-example-response"></a>

```
1. HTTP/1.1 204 No Content
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:00:00 GMT
```

## 관련 섹션
<a name="related-sections-multipart-abort-upload"></a>

 
+ [멀티파트 업로드 시작(POST multipart-uploads)](api-multipart-initiate-upload.md)
+ [파트 업로드(PUT uploadID)](api-upload-part.md)
+ [멀티파트 업로드 완료(POST uploadID)](api-multipart-complete-upload.md)
+ [멀티파트 업로드 목록 조회(GET multipart-uploads)](api-multipart-list-uploads.md)
+ [파트 목록 조회(GET uploadID)](api-multipart-list-parts.md)
+ [대용량 아카이브를 여러 파트로 나누어 업로드(멀티파트 업로드)](uploading-archive-mpu.md)
+ [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md)

# 멀티파트 업로드 완료(POST uploadID)
<a name="api-multipart-complete-upload"></a>

## 설명
<a name="api-multipart-complete-upload-description"></a>

이 멀티파트 업로드 작업을 직접 호출하여 모든 아카이브 파트의 업로드를 마쳤으며 이제 업로드된 파트에서 Amazon Glacier가 아카이브를 어셈블링할 수 있음을 Amazon Glacier(Amazon Glacier)에 알립니다.

멀티파트 업로드에 대한 자세한 내용은 [대용량 아카이브를 여러 파트로 나누어 업로드(멀티파트 업로드)](uploading-archive-mpu.md) 섹션을 참조하세요.

아카이브를 어셈블링하여 볼트에 저장하고 나면 Amazon Glacier가 새롭게 생성된 아카이브 리소스의 아카이브 ID를 반환합니다. 아카이브를 업로드하고 나서 나중에 아카이브를 가져오려면 반환된 아카이브 ID를 저장해야 합니다.

요청할 때는 업로드한 전체 아카이브에 대해 계산된 SHA256 트리-해시를 포함시켜야 합니다. SHA256 트리-해시의 계산에 대한 자세한 내용은 [체크섬 계산](checksum-calculations.md) 섹션을 참조하세요. 서버 측에서도 Amazon Glacier는 어셈블링된 아카이브의 SHA256 트리-해시를 구성합니다. 값이 일치하면 Amazon Glacier가 아카이브를 볼트에 저장합니다. 그렇지 않으면 오류를 반환하고 작업이 중단됩니다. [파트 목록 조회(GET uploadID)](api-multipart-list-parts.md) 작업은 특정 멀티파트 업로드에 대해 업로드한 파트 목록을 반환합니다. 여기에는 업로드된 각 파트에서 불량 체크섬 문제를 디버깅하는 데 사용할 수 있는 체크섬 정보가 포함됩니다.

또한 Amazon Glacier는 내용 범위가 누락되지 않았는지 검사합니다. 파트를 업로드할 때는 최종 아카이브 어셈블리에서 각 파트가 위치하는 곳을 찾을 수 있도록 범위 값을 지정합니다. 최종 아카이브를 어셈블링할 때 Amazon Glacier는 누락된 내용 범위의 유무를 검사하며, 누락된 내용 범위가 있는 경우에는 Amazon Glacier가 오류를 반환하고 멀티파트 업로드 완료 작업이 중단됩니다.

멀티파트 업로드 완료 작업은 멱등성 작업입니다. 따라서 첫 번째 멀티파트 업로드를 성공적으로 완료한 후 단기간 내에 해당 작업을 다시 호출하는 경우 작업이 성공적으로 실행되고 동일한 아카이브 ID를 반환합니다. 이는 네트워크 장애로 인해 연결이 중단되거나 500 서버 오류가 발생하는 경우에 유용합니다. 이때는 멀티파트 업로드 완료 요청을 반복하더라도 중복 아카이브를 생성하지 않고 동일한 아카이브 ID가 얻습니다. 단, 멀티파트 업로드 완료 후에는 파트 목록 조회 작업을 호출할 수 없습니다. 따라서 멱등성을 갖는 완료 작업이라고 해도 멀티파트 업로드 목록 조회 응답에 멀티파트 업로드가 표시되지는 않습니다.

## 요청
<a name="api-multipart-complete-upload-requests"></a>

멀티파트 업로드를 완료하려면 멀티파트 업로드 시작 요청에 대한 응답으로 HTTP POST 요청을 Amazon Glacier가 생성한 업로드 ID의 URI로 전송합니다. 이는 파트 업로드 시 사용한 URI와 동일합니다. 이때 필요한 공통 헤더 외에도 전체 아카이브의 SHA256 트리-해시 결과와 아카이브의 총 크기(바이트)를 요청에 포함시켜야 합니다.

### 구문
<a name="api-multipart-complete-upload-requests-syntax"></a>

```
1. POST /AccountId/vaults/VaultName/multipart-uploads/uploadID
2. Host: glacier.Region.amazonaws.com
3. Date: date
4. Authorization: SignatureValue
5. x-amz-sha256-tree-hash: SHA256 tree hash of the archive
6. x-amz-archive-size: ArchiveSize in bytes
7. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID 또는 선택적으로 하나의 '`-`'(하이픈)을 지정할 수 있습니다. 이 경우에 Amazon Glacier는 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

### 요청 파라미터
<a name="api-multipart-complete-upload-requests-parameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-multipart-complete-upload-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더 외에 다음 요청 헤더를 사용합니다. 일반적인 요청 헤더에 대한 자세한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.


|  이름  |  설명  |  필수  | 
| --- | --- | --- | 
| x-amz-archive-size   |  전체 아카이브의 총 크기(바이트)입니다. 이 값은 업로드한 개별 파트 크기의 총합이 되어야 합니다. 유형: 문자열 기본값: 없음 제약 조건: 없음  |  예 | 
|  x-amz-sha256-tree-hash​  |  전체 아카이브의 SHA256 트리-해시입니다. 즉, 개별 파트의 SHA256 트리-해시로 이루어진 트리-해시입니다. 사용자가 요청에서 지정한 값이 Amazon Glacier에서 계산한 최종 어셈블링된 아카이브의 SHA256 트리–해시와 일치하지 않으면 Amazon Glacier가 오류를 반환하고 요청은 중단됩니다. 유형: 문자열 기본값: 없음 제약 조건: 없음  |  예 | 

### 요청 요소
<a name="api-multipart-complete-upload-requests-elements"></a>

이 작업에서는 요청 요소를 사용하지 않습니다.

## 응답
<a name="api-multipart-complete-upload-responses"></a>

Amazon Glacier(Amazon Glacier)는 전체 아카이브의 SHA256 트리-해시를 생성합니다. 해당 값이 요청에서 지정한 전체 아카이브의 SHA256 트리-해시와 일치하는 경우 Amazon Glacier는 아카이브를 볼트에 추가합니다. 또한 응답으로 새롭게 추가된 아카이브 리소스의 URL 경로와 함께 HTTP `Location` 헤더를 반환합니다. 아카이브 크기 또는 요청에서 보낸 SHA256이 일치하지 않으면 Amazon Glacier가 오류를 반환하고 업로드는 미완료 상태를 유지합니다. 하지만 나중에 아카이브를 성공적으로 생성할 수 있는 지점부터 정확한 값으로 멀티파트 업로드 완료 작업을 재시도할 수 있습니다. 멀티파트 업로드가 완료되지 않으면 결국 Amazon Glacier가 업로드 ID를 회수합니다.

### 구문
<a name="api-multipart-complete-upload-responses-syntax"></a>

```
HTTP/1.1 201 Created
x-amzn-RequestId: x-amzn-RequestId
Date: Date
Location: Location
x-amz-archive-id: ArchiveId
```

### 응답 헤더
<a name="api-multipart-complete-upload-responses-headers"></a>

성공적인 응답에는 모든 작업에 일반적인 응답 헤더 외에 다음 응답 헤더가 포함됩니다. 일반적인 응답 헤더에 대한 자세한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.


|  이름  |  설명  | 
| --- | --- | 
|  Location  |  새롭게 생성된 아카이브의 상대적 URI 경로입니다. 이 URL에는 Amazon Glacier에서 생성된 아카이브 ID가 포함됩니다. 유형: 문자열  | 
|  x-amz-archive-id  |  아카이브 ID입니다. 이 값은 `Location` 헤더에도 포함됩니다. 유형: 문자열  | 

### 응답 필드
<a name="api-multipart-complete-upload-responses-elements"></a>

이 작업은 응답 본문을 반환하지 않습니다.

## 예시
<a name="api-multipart-complete-upload-examples"></a>

### 요청 예시
<a name="api-multipart-complete-upload-example-request"></a>

이 예에서는 HTTP POST 요청이 멀티파트 업로드 시작 요청에 의해 반환된 URI로 전송됩니다. 요청에서는 전체 아카이브의 SHA256 트리-해시와 총 아카이브 크기를 모두 지정합니다.

```
1. POST /-/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. z-amz-Date: 20170210T120000Z
4. x-amz-sha256-tree-hash:1ffc0f54dd5fdd66b62da70d25edacd0
5. x-amz-archive-size:8388608
6. x-amz-glacier-version: 2012-06-01
7. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

### 응답의 예
<a name="api-multipart-complete-upload-example-response"></a>

다음 응답 예에서는 Amazon Glacier가 업로드된 파트에서 아카이브를 성공적으로 생성했음을 보여줍니다. 이 응답에는 완료 경로와 함께 아카이브 ID가 포함됩니다.

```
1. HTTP/1.1 201 Created
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:00:00 GMT
4. Location: /111122223333/vaults/examplevault/archives/NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId
5. x-amz-archive-id: NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId
```

이제 HTTP 요청을 새롭게 추가된 리소스/아카이브의 URI로 전송할 수 있습니다. 예를 들어 GET 요청을 전송하여 아카이브를 가져올 수 있습니다.

## 관련 섹션
<a name="related-sections-complete-mpu"></a>

 
+ [멀티파트 업로드 시작(POST multipart-uploads)](api-multipart-initiate-upload.md)
+ [파트 업로드(PUT uploadID)](api-upload-part.md)
+ [멀티파트 업로드 중단(DELETE uploadID)](api-multipart-abort-upload.md)
+ [멀티파트 업로드 목록 조회(GET multipart-uploads)](api-multipart-list-uploads.md)
+ [파트 목록 조회(GET uploadID)](api-multipart-list-parts.md)
+ [대용량 아카이브를 여러 파트로 나누어 업로드(멀티파트 업로드)](uploading-archive-mpu.md)
+  [아카이브 삭제(DELETE archive)](api-archive-delete.md)
+ [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md)

# 멀티파트 업로드 시작(POST multipart-uploads)
<a name="api-multipart-initiate-upload"></a>

## 설명
<a name="api-multipart-initiate-upload-description"></a>

이 작업으로 멀티파트 업로드가 시작됩니다([대용량 아카이브를 여러 파트로 나누어 업로드(멀티파트 업로드)](uploading-archive-mpu.md) 섹션 참조). Amazon Glacier(Amazon Glacier)는 멀티파트 업로드 리소스를 생성하고 응답에서 해당 ID를 반환합니다. 업로드 ID는 이후 멀티파트 업로드 작업에서 사용됩니다.

멀티파트 업로드를 시작할 때는 파트 크기(바이트 수)를 지정합니다. 부품 크기는 2의 제곱이 곱해진 메비바이트(MiB)(1024키비바이트 [KiB]) 값이어야 합니다. 예를 들어 1048576(1MiB), 2097152(2MiB), 4194304(4MiB), 8388608(8MiB) 등과 같습니다. 최소 허용 파트 크기는 1MiB이고, 최대 크기는 4기비바이트(GiB)입니다.

마지막 파트를 제외하고 현재 업로드 ID를 사용해 업로드하는 파트는 모두 크기가 같아야 합니다. 마지막 파트는 크기가 같거나 작을 수 있습니다. 예를 들어 16.2MiB 파일을 업로드한다고 가정하겠습니다. 파트 크기를 4MiB씩 나누어 멀티파트 업로드를 시작한다면 각각 4MiB의 파트 네 개와 0.2MiB의 파트 한 개를 업로드하게 됩니다.

 

**참고**  
Amazon Glacier에서는 전체 아카이브 크기를 지정할 필요가 없기 때문에 멀티파트 업로드를 시작할 때 아카이브의 크기를 몰라도 상관없습니다.

멀티파트 업로드를 완료한 후 Amazon Glacier는 ID가 참조한 멀티파트 업로드 리소스를 제거합니다. 사용자가 멀티파트 업로드를 취소하면 Amazon Glacier가 멀티파트 업로드 리소스를 제거하며, 24시간 동안 활동이 없어도 리소스가 제거될 수 있습니다. ID는 24시간 이후에도 사용할 수 있지만 애플리케이션은 이러한 사용을 예상하지 못합니다.

## Requests
<a name="api-multipart-initiate-upload-requests"></a>

멀티파트 업로드를 시작하려면 HTTP `POST` 요청을 아카이브를 저장할 볼트의 `multipart-uploads` 하위 리소스 URI로 전송합니다. 이때 요청에는 파트 크기가 포함되어야 하며, 옵션으로 아카이브 설명을 추가할 수도 있습니다.

### 구문
<a name="api-multipart-initiate-upload-requests-syntax"></a>

```
1. POST /AccountId/vaults/VaultName/multipart-uploads 
2. Host: glacier.us-west-2.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. x-amz-glacier-version: 2012-06-01
6. x-amz-archive-description: ArchiveDescription
7. x-amz-part-size: PartSize
```

 

**참고**  
`AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID를 지정하거나 선택적으로 단일 '`-`'(하이픈)를 지정할 수 있습니다.이 경우 Amazon Glacier는 요청에 서명하는 데 사용되는 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

### 요청 파라미터
<a name="api-archive-post-requests-parameters1"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-archive-post-requests-headers1"></a>

이 작업은 모든 작업에 일반적인 요청 헤더 외에 다음 요청 헤더를 사용합니다. 일반적인 요청 헤더에 대한 자세한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.


|  이름  |  설명  |  필수  | 
| --- | --- | --- | 
|  x-amz-part-size  |  마지막 파트를 제외한 각 파트의 크기(바이트)입니다. 마지막 파트는 이 파트 크기보다 작을 수 있습니다. 유형: 문자열 기본값: None 제약 조건: 부품 크기는 2의 제곱이 곱해진 메비바이트(1024KiB) 값이어야 합니다. 예를 들어 1048576(1MiB), 2097152(2MiB), 4194304(4MiB), 8388608(8MiB) 등과 같습니다. 최소 허용 파트 크기는 1MiB이고, 최대 크기는 4GiB(4096MiB)입니다.  |  예 | 
| x-amz-archive-description  |  여러 파트로 나누어 업로드하는 아카이브 설명입니다. 평문으로 설명하거나 원하는 고유 식별자를 할당할 수도 있습니다. 볼트 인벤토리를 가져올 때는([작업 시작(POST jobs)](api-initiate-job-post.md) 참조) 응답으로 반환되는 아카이브마다 이 설명이 인벤토리에 포함됩니다. 아카이브 설명에서 선행 스페이스는 제거됩니다. 유형: 문자열 기본값: None 제약 조건: 설명은 1,024바이트보다 작거나 같아야 합니다. 허용되는 문자는 제어 코드를 제외한 7비트 ASCII 중에서도 특히 ASCII 값 32\$1126 십진수 또는 0x20\$10x7E 16진수입니다.  |  아니요  | 

### 요청 본문
<a name="api-multipart-initiate-upload-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-multipart-initiate-upload-responses"></a>

응답 시, Amazon Glacier는 ID로 식별된 멀티파트 업로드 리소스를 생성한 후 멀티파트 업로드 ID의 상대적 URI 경로를 반환합니다.

### 구문
<a name="api-multipart-initiate-upload-response-syntax"></a>

```
1. HTTP/1.1 201 Created
2. x-amzn-RequestId: x-amzn-RequestId
3. Date: Date
4. Location: Location
5. x-amz-multipart-upload-id: multiPartUploadId
```

### 응답 헤더
<a name="api-archive-post-responses-headers2"></a>

성공적인 응답에는 모든 작업에 일반적인 응답 헤더 외에 다음 응답 헤더가 포함됩니다. 일반적인 응답 헤더에 대한 자세한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.


|  이름  |  설명  | 
| --- | --- | 
|  Location  |  Amazon Glacier가 생성한 멀티파트 업로드 ID의 상대적 URI 경로입니다. 이 URI 경로를 통해 파트를 업로드하거나 멀티파트 업로드를 완료하는 요청을 전송합니다. 유형: 문자열  | 
|  x-amz-multipart-upload-id  |  멀티파트 업로드 ID입니다. 이 값은 `Location` 헤더에도 포함됩니다. 유형: 문자열  | 

### 응답 본문
<a name="api-archive-post-responses-elements1"></a>

이 작업은 응답 본문을 반환하지 않습니다.

### 오류
<a name="api-archive-post-responses-errors1"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예제
<a name="initiate-mpu-api-example"></a>

### 요청 예시
<a name="api-multipart-initiate-upload-example-request"></a>

다음은 HTTP `POST` 요청을 이름이 `examplevault`인 볼트의 `multipart-uploads` 하위 리소스 URI로 전송하여 멀티파트 업로드를 시작하는 예제입니다. 여기에는 4MiB(4194304바이트)의 파트 크기를 지정하는 헤더와 아카이브 설명(옵션)이 포함되어 있습니다.

```
1. POST /-/vaults/examplevault/multipart-uploads 
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-archive-description: MyArchive-101
5. x-amz-part-size: 4194304
6. x-amz-glacier-version: 2012-06-01
7. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

### 응답의 예
<a name="api-multipart-initiate-upload-example-response"></a>

Amazon Glacier는 멀티파트 업로드 리소스를 생성한 후 볼트의 `multipart-uploads` 하위 리소스에 추가합니다. `Location` 응답 헤더에는 멀티파트 업로드 ID에 대한 상대적 URI 경로가 포함되어 있습니다.

```
1. HTTP/1.1 201 Created
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:00:00 GMT
4. Location: /111122223333/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE
5. x-amz-multipart-upload-id: OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE
```

개별 파트 업로드에 대한 자세한 내용은 [파트 업로드(PUT uploadID)](api-upload-part.md) 섹션을 참조하세요.

## 관련 섹션
<a name="related-sections-initiate-mpu"></a>

 
+ [파트 업로드(PUT uploadID)](api-upload-part.md)
+ [멀티파트 업로드 완료(POST uploadID)](api-multipart-complete-upload.md)
+ [멀티파트 업로드 중단(DELETE uploadID)](api-multipart-abort-upload.md)
+ [멀티파트 업로드 목록 조회(GET multipart-uploads)](api-multipart-list-uploads.md)
+ [파트 목록 조회(GET uploadID)](api-multipart-list-parts.md)
+ [아카이브 삭제(DELETE archive)](api-archive-delete.md)
+ [대용량 아카이브를 여러 파트로 나누어 업로드(멀티파트 업로드)](uploading-archive-mpu.md)
+ [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md)

# 파트 목록 조회(GET uploadID)
<a name="api-multipart-list-parts"></a>

## 설명
<a name="api-multipart-list-partsDescription"></a>

이 멀티파트 업로드 작업에서는 업로드 ID로 식별되는 특정 멀티파트 업로드에서 업로드된 아카이브의 파트 목록을 조회합니다. 멀티파트 업로드에 대한 자세한 내용은 [대용량 아카이브를 여러 파트로 나누어 업로드(멀티파트 업로드)](uploading-archive-mpu.md) 섹션을 참조하세요.

이 요청은 멀티파트 업로드를 완료하기 전에 멀티파트 업로드가 진행 중이라면 언제든지 가능합니다. Amazon Glacier는 각 파트 업로드에서 사용자가 지정한 범위를 기준으로 정렬된 파트 목록을 반환합니다. 멀티파트 업로드가 완료된 후에 파트 목록 조회 요청을 보내면 Amazon Glacier(Amazon Glacier)가 오류를 반환합니다.

파트 목록 조회 작업은 페이지 매김을 지원합니다. 응답 본문의 `Marker` 필드는 항상 확인하여 목록을 계속 이어가는 마커가 있는지 살펴야 합니다. 항목이 더 이상 없는 경우에는 `marker` 필드가 `null` 값을 갖습니다. `marker`가 null 값이 아닌 경우 다음 파트 세트를 가져오려면 Amazon Glacier가 이전 파트 목록 조회 요청에 대한 응답으로 반환한 마커 값으로 설정된 `marker` 요청 파라미터로 파트 목록 조회 요청을 한 번 더 전송합니다.

또한 요청 시 `limit` 파라미터를 지정하여 응답으로 반환되는 파트 수를 제한할 수도 있습니다.

## Requests
<a name="api-multipart-list-parts-requests"></a>

### 구문
<a name="api-multipart-list-parts-requests-syntax"></a>

진행 중인 멀티파트 업로드의 파트 목록을 조회하려면 `GET` 요청을 멀티파트 업로드 ID의 리소스 URI로 전송합니다. 멀티파트 업로드 ID는 멀티파트 업로드를 시작할 때([멀티파트 업로드 시작(POST multipart-uploads)](api-multipart-initiate-upload.md)) 반환됩니다. 옵션으로 `marker` 및 `limit` 파라미터를 지정할 수 있습니다.

```
1. GET /AccountId/vaults/VaultName/multipart-uploads/uploadID HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID를 지정하거나 선택적으로 단일 '`-`'(하이픈)를 지정할 수 있습니다.이 경우 Amazon Glacier는 요청에 서명하는 데 사용되는 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

### 요청 파라미터
<a name="api-multipart-list-parts-requests-parameters"></a>


|  이름  |  설명  |  필수  | 
| --- | --- | --- | 
| limit  |  반환할 파트의 최대 수입니다. 기본 제한은 50개입니다. 반환되는 파트 수가 지정한 제한보다 적을 수 있지만 제한을 초과할 수는 없습니다. 유형: 문자열 제약 조건: 최소 정수 값 `1`. 최대 정수 값 `50`  |  아니요  | 
|  marker  |  페이지 매김에 사용되는 불투명한 문자열입니다. `marker`는 파트 목록 조회가 시작되는 파트를 지정합니다. 이전 파트 목록 조회 응답에서 `marker` 값을 가져옵니다. `marker`는 이전 파트 목록 조회 요청에서 시작된 결과에 페이지를 계속해서 매겨야 하는 경우에만 포함해야 합니다. 유형: 문자열 제약 조건: 없음  |  아니요 | 

### 요청 헤더
<a name="api-multipart-list-parts-requests-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-multipart-list-parts-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-multipart-list-parts-responses"></a>

### 구문
<a name="api-multipart-list-parts-responses-syntax"></a>

```
 1. HTTP/1.1 200 OK
 2. x-amzn-RequestId: x-amzn-RequestId
 3. Date: Date
 4. Content-Type: application/json
 5. Content-Length: Length
 6. 
 7. {
 8.     "ArchiveDescription" : String,
 9.     "CreationDate" : String,
10.     "Marker": String,
11.     "MultipartUploadId" : String,
12.     "PartSizeInBytes" : Number,
13.     "Parts" : 
14.     [ {
15.       "RangeInBytes" : String,
16.       "SHA256TreeHash" : String
17.       },
18.       ...
19.      ],
20.     "VaultARN" : String
21. }
```

### 응답 헤더
<a name="api-multipart-list-parts-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-multipart-list-parts-responses-elements"></a>

JSON 응답 본문에는 다음과 같은 JSON 필드가 포함됩니다.

**ArchiveDescription**  
멀티파트 업로드 시작 요청에서 지정한 아카이브 설명입니다. 멀티파트 업로드 시작 작업에서 아카이브 설명을 지정하지 않은 경우 이 필드는 `null` 값을 갖습니다.  
*유형*: 문자열

**CreationDate**  
멀티파트 업로드가 시작된 UTC 시간입니다.  
*유형*: 문자열. ISO 8601 날짜 형식의 문자열 표현입니다. 예: `2013-03-20T17:03:43.221Z`

**마커**  
결과에 페이지를 계속해서 매기는 지점을 나타내는 불투명한 문자열입니다. 새 파트 목록 조회 요청에서 `marker`를 사용하여 목록의 작업을 추가로 가져옵니다. 파트가 더 없을 경우 이 값은 `null`입니다.  
*유형*: 문자열

**MultipartUploadId**  
파트가 연결되는 업로드의 ID입니다.  
*유형*: 문자열

**PartSizeInBytes**  
파트 크기(바이트)입니다. 이 크기는 멀티파트 업로드 시작 요청에서 지정한 값과 동일합니다.  
*형식*: 숫자

**파트**  
멀티파트 업로드의 파트 크기 목록입니다. 배열의 각 객체는 `RangeBytes` 및 `sha256-tree-hash` 이름/값 페어로 구성됩니다.  
*유형*: 배열

**RangeInBytes**  
파트의 바이트 범위(범위 상한값 포함)입니다.  
*유형*: 문자열

**SHA256TreeHash**   
Amazon Glacier가 파트에 대해 계산한 SHA256 트리-해시 값입니다. 이 필드는 절대 `null` 값을 가질 수 없습니다.  
*유형*: 문자열

**VaultARN**  
멀티파트 업로드가 시작되는 볼트의 Amazon 리소스 이름(ARN)입니다.  
*유형*: 문자열

### 오류
<a name="api-multipart-list-parts-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예제
<a name="api-multipart-list-parts-examples"></a>

### 예제: 멀티파트 업로드의 파트 목록 조회
<a name="api-multipart-list-parts-examples-one"></a>

다음은 업로드하는 모든 파트의 목록을 조회하는 예제입니다. 아래 예제는 HTTP `GET` 요청을 진행 중인 멀티파트 업로드의 특정 멀티파트 업로드 ID URI로 전송하고 최대 1,000개까지 파트를 반환합니다.

#### 요청 예시
<a name="api-multipart-list-parts-example-request"></a>

```
1. GET /-/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

#### 응답의 예
<a name="api-multipart-list-parts-example-response"></a>

응답 시, Amazon Glacier가 지정된 멀티파트 업로드 ID와 연결되어 업로드된 파트 목록을 반환합니다. 이 예제에서는 파트가 2개뿐입니다. 반환되는 `Marker` 필드가 `null` 값을 갖기 때문에 멀티파트 업로드에 남아있는 파트가 더 없다는 것을 의미합니다.

```
 1. HTTP/1.1 200 OK
 2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
 3. Date: Wed, 10 Feb 2017 12:00:00 GMT
 4. Content-Type: application/json
 5. Content-Length: 412
 6.       
 7. {
 8.     "ArchiveDescription" : "archive description",
 9.     "CreationDate" : "2012-03-20T17:03:43.221Z",
10.     "Marker": null,
11.     "MultipartUploadId" : "OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE",
12.     "PartSizeInBytes" : 4194304,
13.     "Parts" : 
14.     [ {
15.       "RangeInBytes" : "0-4194303",
16.       "SHA256TreeHash" : "01d34dabf7be316472c93b1ef80721f5d4"
17.       },
18.       {
19.       "RangeInBytes" : "4194304-8388607",
20.       "SHA256TreeHash" : "0195875365afda349fc21c84c099987164"
21.       }],
22.     "VaultARN" : "arn:aws:glacier:us-west-2:012345678901:vaults/demo1-vault"
23. }
```

### 예제: 멀티파트 업로드의 파트 목록 조회(Marker 및 Limit Request 파라미터 지정)
<a name="api-multipart-list-parts-examples-two"></a>

다음은 페이지 매김을 사용해 결과 수를 제한하는 방법을 나타낸 예제입니다. 아래 예제는 HTTP `GET` 요청을 진행 중인 멀티파트 업로드의 특정 멀티파트 업로드 ID URI로 전송하고 파트 1개를 반환합니다. 파트 목록을 시작할 파트에서 첫 번째 `marker` 파라미터가 지정됩니다. 이전 파트 목록 조회 요청의 응답에서 `marker` 값을 가져올 수 있습니다. 또한 이 예제에서는 `limit` 파라미터가 1로 설정되어 파트를 1개 반환합니다. `Marker` 필드가 `null` 값이 아니기 때문에 가져올 파트가 적어도 1개 이상이란 것을 의미합니다.

#### 요청 예시
<a name="api-multipart-list-parts-example-request-two"></a>

```
1. GET /-/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE?marker=1001&limit=1 HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

#### 응답의 예
<a name="api-multipart-list-parts-example-response-two"></a>

응답 시, Amazon Glacier가 지정된 진행 중인 멀티파트 업로드 ID와 연결되어 업로드된 파트 목록을 반환합니다.

```
 1. HTTP/1.1 200 OK
 2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
 3. Date: Wed, 10 Feb 2017 12:00:00 GMT
 4. Content-Type: text/json
 5. Content-Length: 412
 6.       
 7. {
 8.     "ArchiveDescription" : "archive description 1",
 9.     "CreationDate" : "2012-03-20T17:03:43.221Z",
10.     "Marker": "MfgsKHVjbQ6EldVl72bn3_n5h2TaGZQUO-Qb3B9j3TITf7WajQ",
11.     "MultipartUploadId" : "OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE",
12.     "PartSizeInBytes" : 4194304,
13.     "Parts" : 
14.     [ {
15.       "RangeInBytes" : "4194304-8388607",
16.       "SHA256TreeHash" : "01d34dabf7be316472c93b1ef80721f5d4"
17.       }],
18.     "VaultARN" : "arn:aws:glacier:us-west-2:012345678901:vaults/demo1-vault"
19. }
```

## 관련 섹션
<a name="related-sections-api-multipart-list-parts"></a>

 
+ [멀티파트 업로드 시작(POST multipart-uploads)](api-multipart-initiate-upload.md)
+ [파트 업로드(PUT uploadID)](api-upload-part.md)
+ [멀티파트 업로드 완료(POST uploadID)](api-multipart-complete-upload.md)
+ [멀티파트 업로드 중단(DELETE uploadID)](api-multipart-abort-upload.md)
+ [멀티파트 업로드 목록 조회(GET multipart-uploads)](api-multipart-list-uploads.md)
+ [대용량 아카이브를 여러 파트로 나누어 업로드(멀티파트 업로드)](uploading-archive-mpu.md)
+ [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md)

# 멀티파트 업로드 목록 조회(GET multipart-uploads)
<a name="api-multipart-list-uploads"></a>

## 설명
<a name="api-multipart-list-uploads-description"></a>

이 멀티파트 업로드 작업에서는 특정 볼트에서 진행 중인 멀티파트 업로드 목록을 표시합니다. 진행 중인 멀티파트 업로드란 [멀티파트 업로드 시작(POST multipart-uploads)](api-multipart-initiate-upload.md) 요청으로 시작되었지만 아직 완료되거나 중단되지 않은 멀티파트 업로드를 말합니다. 멀티파트 업로드 목록 조회에 대한 응답으로 반환되는 목록은 정해진 순서가 없습니다.

멀티파트 업로드 목록 조회 작업은 페이지 매김을 지원합니다. 기본적으로 이 작업에서 반환되는 멀티파트 업로드 수는 최대 50개입니다. 응답 본문의 `marker` 필드는 항상 확인하여 목록을 계속 이어가는 마커가 있는지 살펴야 합니다. 항목이 더 이상 없는 경우에는 `marker` 필드가 `null` 값을 갖습니다.

`marker`가 null 값이 아닌 경우 다음 멀티파트 업로드 세트를 가져오려면 Amazon Glacier(Amazon Glacier)가 이전 멀티파트 업로드 목록 조회 요청에 대한 응답으로 반환한 마커 값으로 설정된 `marker` 요청 파라미터로 멀티파트 업로드 목록 조회 요청을 한 번 더 전송합니다.

이 작업과 [파트 목록 조회(GET uploadID)](api-multipart-list-parts.md) 작업의 차이점에 대해서 알아둘 필요가 있습니다. 멀티파트 업로드 목록 조회 작업은 볼트 1개의 멀티파트 업로드 목록을 모두 조회합니다. 하지만 파트 목록 조회 작업은 업로드 ID로 식별되는 특정 멀티파트 업로드의 파트를 반환합니다.

멀티파트 업로드에 대한 자세한 내용은 [대용량 아카이브를 여러 파트로 나누어 업로드(멀티파트 업로드)](uploading-archive-mpu.md) 섹션을 참조하세요.

## Requests
<a name="api-multipart-list-uploads-requests"></a>

### 구문
<a name="api-multipart-list-uploads-requests-syntax"></a>

멀티파트 업로드 목록을 조회하려면 `GET` 요청을 볼트의 `multipart-uploads` 하위 리소스 URI로 전송합니다. 옵션으로 `marker` 및 `limit` 파라미터를 지정할 수 있습니다.

```
1. GET /AccountId/vaults/VaultName/multipart-uploads HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID를 지정하거나 선택적으로 단일 '`-`'(하이픈)를 지정할 수 있습니다.이 경우 Amazon Glacier는 요청에 서명하는 데 사용되는 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

### 요청 파라미터
<a name="api-multipart-list-uploads-requests-parameters"></a>


|  이름  |  설명  |  필수  | 
| --- | --- | --- | 
|  limit  |  응답 본문으로 반환되는 최대 업로드 수를 지정합니다. 이 파라미터를 지정하지 않으면 업로드 목록 조회 작업이 최대 50개까지 업로드를 반환합니다. 유형: 문자열 제약 조건: 최소 정수 값 `1`. 최대 정수 값 `50`  |  아니요 | 
| marker  |  페이지 매김에 사용되는 불투명한 문자열입니다. `marker`는 업로드 목록 조회가 시작되는 업로드를 지정합니다. 이전 업로드 목록 조회 응답에서 `marker` 값을 가져옵니다. `marker`는 이전 업로드 목록 조회 요청에서 시작된 결과에 페이지를 계속해서 매겨야 하는 경우에만 포함해야 합니다. 유형: 문자열 제약 조건: 없음  |  아니요  | 

### 요청 헤더
<a name="api-multipart-list-uploads-requests-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-multipart-list-uploads-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-multipart-list-uploads-responses"></a>

### 구문
<a name="api-multipart-list-uploads-responses-syntax"></a>

```
 1. HTTP/1.1 200 OK
 2. x-amzn-RequestId: x-amzn-RequestId
 3. Date: Date
 4. Content-Type: application/json
 5. Content-Length: Length
 6. 
 7. {
 8.   "Marker": String,
 9.   "UploadsList" : [ 
10.     {
11.       "ArchiveDescription": String,
12.       "CreationDate": String,
13.       "MultipartUploadId": String,
14.       "PartSizeInBytes": Number,
15.       "VaultARN": String
16.     }, 
17.    ...
18.   ]
19. }
```

### 응답 헤더
<a name="api-multipart-list-uploads-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-multipart-list-uploads-responses-elements"></a>

JSON 응답 본문에는 다음과 같은 JSON 필드가 포함됩니다.

**ArchiveDescription**  
멀티파트 업로드 시작 요청에서 지정한 아카이브 설명입니다. 멀티파트 업로드 시작 작업에서 아카이브 설명을 지정하지 않은 경우 이 필드는 `null` 값을 갖습니다.  
*유형*: 문자열

**CreationDate**  
멀티파트 업로드가 시작된 UTC 시간입니다.  
*유형*: 문자열. ISO 8601 날짜 형식의 문자열 표현입니다. 예: `2013-03-20T17:03:43.221Z`

**마커**  
결과에 페이지를 계속해서 매기는 지점을 나타내는 불투명한 문자열입니다. 새 멀티파트 업로드 목록 조회 요청에서 `marker`를 사용하여 목록의 업로드를 추가로 가져옵니다. 업로드가 더 없을 경우 이 값은 `null`입니다.  
*유형*: 문자열

**PartSizeInBytes**  
[멀티파트 업로드 시작(POST multipart-uploads)](api-multipart-initiate-upload.md) 요청에서 지정된 파트 크기입니다. 마지막 파트를 제외하고 업로드되는 파트의 총 크기이기 때문에 이 크기보다 작을 수도 있습니다.  
*형식*: 숫자

**MultipartUploadId**  
멀티파트 업로드 ID입니다.  
*유형*: 문자열

**UploadsList**  
멀티파트 업로드 객체에 대한 메타데이터 목록입니다. 이 목록의 각 항목은 `ArchiveDescription`, `CreationDate`, `MultipartUploadId`, `PartSizeInBytes`, `VaultARN` 등을 포함하여 해당하는 업로드의 이름-값 페어 집합으로 구성됩니다.  
*유형*: 배열

**VaultARN**  
아카이브가 저장되는 볼트의 Amazon 리소스 이름(ARN)입니다.  
*유형*: 문자열

### 오류
<a name="api-multipart-list-uploads-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예제
<a name="api-multipart-list-uploads-examples"></a>

### 예제: 모든 멀티파트 업로드 목록 조회
<a name="api-multipart-list-uploads-examples-one"></a>

다음은 볼트에서 진행 중인 모든 멀티파트 업로드 목록을 조회하는 예제입니다. 이 예제에서는 HTTP `GET` 요청이 지정된 볼트의 `multipart-uploads` 하위 리소스 URI로 전송됩니다. 요청에서 `marker` 파라미터와 `limit` 파라미터를 지정하지 않았기 때문에 최대 1,000개까지 진행 중인 멀티파트 업로드가 반환됩니다.

#### 요청 예시
<a name="api-multipart-list-uploads-example-request"></a>

```
1. GET /-/vaults/examplevault/multipart-uploads HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

#### 응답의 예
<a name="api-multipart-list-uploads-example-response"></a>

응답 시, Amazon Glacier는 지정된 볼트에서 진행 중인 모든 멀티파트 업로드의 목록을 반환합니다. `marker` 필드가 `null` 값이므로 더 이상 목록을 조회할 업로드가 없다는 것을 의미합니다.

```
 1. HTTP/1.1 200 OK
 2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
 3. Date: Wed, 10 Feb 2017 12:00:00 GMT
 4. Content-Type: application/json
 5. Content-Length: 1054
 6.       
 7. {
 8.   "Marker": null, 
 9.   "UploadsList": [ 
10.     {
11.       "ArchiveDescription": "archive 1",
12.       "CreationDate": "2012-03-19T23:20:59.130Z",
13.       "MultipartUploadId": "xsQdFIRsfJr20CW2AbZBKpRZAFTZSJIMtL2hYf8mvp8dM0m4RUzlaqoEye6g3h3ecqB_zqwB7zLDMeSWhwo65re4C4Ev",
14.       "PartSizeInBytes": 4194304,
15.       "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault"
16.     }, 
17.     {
18.       "ArchiveDescription": "archive 2",
19.       "CreationDate": "2012-04-01T15:00:00.000Z",
20.       "MultipartUploadId": "nPyGOnyFcx67qqX7E-0tSGiRi88hHMOwOxR-_jNyM6RjVMFfV29lFqZ3rNsSaWBugg6OP92pRtufeHdQH7ClIpSF6uJc",
21.       "PartSizeInBytes": 4194304,
22.       "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault"
23.     },
24.     {
25.       "ArchiveDescription": "archive 3",
26.       "CreationDate": "2012-03-20T17:03:43.221Z",
27.       "MultipartUploadId": "qt-RBst_7yO8gVIonIBsAxr2t-db0pE4s8MNeGjKjGdNpuU-cdSAcqG62guwV9r5jh5mLyFPzFEitTpNE7iQfHiu1XoV",
28.       "PartSizeInBytes": 4194304,
29.       "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault"
30.     } 
31.   ]
32. }
```

### 예제: 부분적 멀티파트 업로드 목록 조회
<a name="api-multipart-list-uploads-examples-two"></a>

다음은 페이지 매김을 사용해 결과 수를 제한하는 방법을 나타낸 예제입니다. 이 예제에서는 HTTP `GET` 요청이 지정된 볼트의 `multipart-uploads` 하위 리소스 URI로 전송됩니다. 또한 `limit` 파라미터가 1로 설정되어 있습니다. 이는 목록에서 반환되는 업로드 수가 1개로 제한된다는 것을 의미하며, `marker` 파라미터는 반환 목록이 시작되는 멀티파트 업로드 ID를 나타냅니다.

#### 요청 예시
<a name="api-multipart-list-uploads-example-request-two"></a>

```
1. GET /-/vaults/examplevault/multipart-uploads?limit=1&marker=xsQdFIRsfJr20CW2AbZBKpRZAFTZSJIMtL2hYf8mvp8dM0m4RUzlaqoEye6g3h3ecqB_zqwB7zLDMeSWhwo65re4C4Ev HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

#### 응답의 예
<a name="api-multipart-list-uploads-example-response-two"></a>

응답 시, Amazon Glacier(Amazon Glacier)는 지정된 볼트에서 진행 중인 두 개 이하의 멀티파트 업로드 목록을 반환하는데, 지정된 마커부터 시작하여 두 개의 결과를 반환합니다.

```
 1. HTTP/1.1 200 OK
 2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
 3. Date: Wed, 10 Feb 2017 12:00:00 GMT
 4. Content-Type: application/json
 5. Content-Length: 470
 6. 
 7. {
 8.   "Marker": "qt-RBst_7yO8gVIonIBsAxr2t-db0pE4s8MNeGjKjGdNpuU-cdSAcqG62guwV9r5jh5mLyFPzFEitTpNE7iQfHiu1XoV",
 9.   "UploadsList" : [ 
10.     {
11.       "ArchiveDescription": "archive 2",
12.       "CreationDate": "2012-04-01T15:00:00.000Z",
13.       "MultipartUploadId": "nPyGOnyFcx67qqX7E-0tSGiRi88hHMOwOxR-_jNyM6RjVMFfV29lFqZ3rNsSaWBugg6OP92pRtufeHdQH7ClIpSF6uJc",
14.       "PartSizeInBytes": 4194304,
15.       "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault"
16.     }
17.   ]
18. }
```

## 관련 섹션
<a name="related-sections-multipart-list-uploads"></a>

 
+ [멀티파트 업로드 시작(POST multipart-uploads)](api-multipart-initiate-upload.md)
+ [파트 업로드(PUT uploadID)](api-upload-part.md)
+ [멀티파트 업로드 완료(POST uploadID)](api-multipart-complete-upload.md)
+ [멀티파트 업로드 중단(DELETE uploadID)](api-multipart-abort-upload.md)
+ [파트 목록 조회(GET uploadID)](api-multipart-list-parts.md)
+ [대용량 아카이브를 여러 파트로 나누어 업로드(멀티파트 업로드)](uploading-archive-mpu.md)
+ [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md)

# 파트 업로드(PUT uploadID)
<a name="api-upload-part"></a>

## 설명
<a name="api-job-get-description"></a>

이 멀티파트 업로드 작업에서는 아카이브 파트를 업로드합니다. 파트 업로드 요청에서 업로드되는 아카이브 어셈블의 바이트 범위를 지정하기 때문에 아카이브 파트는 순서에 상관없이 업로드할 수 있습니다. 또한 병렬 방식으로 파트를 업로드하는 것도 가능합니다. 멀티파트 업로드에서 업로드할 수 있는 파트 수는 최대 10,000개입니다.

멀티파트 업로드에 대한 자세한 내용은 [대용량 아카이브를 여러 파트로 나누어 업로드(멀티파트 업로드)](uploading-archive-mpu.md) 섹션을 참조하세요.

 

다음 조건 중 한 가지라도 사실인 경우에는 Amazon Glacier(Amazon Glacier)가 사용자의 파트 업로드 요청을 거부합니다.

 
+ **SHA256 트리-해시가 일치하지 않습니다:** 파트 데이터가 전송 중 손상되지 않도록 하려면 파트의 SHA256 트리 해시를 계산하여 요청에 추가해야 합니다. Amazon Glacier가 파트 데이터 수신과 함께 SHA256 트리 해시를 계산합니다. 이때 두 해시 값이 일치하지 않으면 작업이 오류로 중단됩니다. SHA256 트리-해시의 계산에 대한 자세한 내용은 [체크섬 계산](checksum-calculations.md) 섹션을 참조하세요.
+ **SHA256 선형 해시가 일치하지 않습니다:** 권한 부여에 필요하기 때문에 업로드된 전체 페이로드의 SHA256 선형 해시를 계산한 후 요청에 추가합니다. SHA256 선형 해시의 계산에 대한 자세한 내용은 [체크섬 계산](checksum-calculations.md) 섹션을 참조하세요.
+ **파트 크기가 일치하지 않습니다:** 마지막 파트를 제외하고 각 파트의 크기는 해당하는 [멀티파트 업로드 시작(POST multipart-uploads)](api-multipart-initiate-upload.md) 요청에서 지정한 크기와 반드시 일치해야 합니다. 마지막 파트의 크기는 지정된 크기보다 작거나 같아야 합니다.
**참고**  
멀티파트 업로드 시작 요청에서 지정한 파트 크기보다 작으면서 동시에 마지막 파트가 아닌 파트를 업로드하는 경우에도 파트 업로드 요청은 성공적으로 실행됩니다. 하지만 이후 멀티파트 업로드 완료 요청이 실행되지 않습니다.
+ **범위가 맞지 않습니다:** 요청의 바이트 범위 값이 해당하는 시작 요청에서 지정한 파트 크기와 맞지 않습니다. 예를 들어 크기가 4194304바이트(4MB)인 파트를 지정한다면 유효한 파트 범위는 0\$14194303바이트(4MB-1)와 4194304(4MB)\$18388607바이트(8MB-1)입니다. 하지만 범위 값을 2\$16MB로 설정하면 범위와 파트 크기가 맞지 않아 업로드가 오류로 중단되고 맙니다.

이 작업은 멱등성을 갖습니다. 따라서 동일한 파트를 여러 차례 업로드할 경우 가장 최근 요청에서 입력했던 데이터가 이전에 업로드했던 데이터를 덮어씁니다.

## 요청
<a name="api-job-get-requests"></a>

이 HTTP `PUT` 요청을 멀티파트 업로드 시작 요청에서 반환된 업로드 ID의 URI로 전송합니다. Amazon Glacier는 업로드 ID를 사용하여 파트 업로드와 특정 멀티파트 업로드를 연결합니다. 요청할 때는 파트 데이터의 SHA256 트리-해시(`x-amz-SHA256-tree-hash` 헤더), 전체 페이로드의 SHA256 선형 해시(`x-amz-content-sha256` 헤더), 바이트 범위(`Content-Range` 헤더), 그리고 바이트 단위의 파트 길이(`Content-Length` 헤더)가 포함되어야 합니다.

### 구문
<a name="api-job-get-requests-syntax"></a>

```
 1. PUT /AccountId/vaults/VaultName/multipart-uploads/uploadID HTTP/1.1
 2. Host: glacier.Region.amazonaws.com
 3. Date: Date
 4. Authorization: SignatureValue
 5. Content-Range: ContentRange
 6. Content-Length: PayloadSize
 7. Content-Type: application/octet-stream
 8. x-amz-sha256-tree-hash: Checksum of the part
 9. x-amz-content-sha256: Checksum of the entire payload			
10. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID 또는 선택적으로 하나의 '`-`'(하이픈)을 지정할 수 있습니다. 이 경우에 Amazon Glacier는 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

### 요청 파라미터
<a name="api-upload-part-requests-parameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-upload-part-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더 외에 다음 요청 헤더를 사용합니다. 일반적인 요청 헤더에 대한 자세한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.


|  이름  |  설명  |  필수  | 
| --- | --- | --- | 
| Content-Length  |  파트 길이(바이트)를 식별합니다. 유형: 문자열 기본값: 없음 제약 조건: 없음  |  아니요 | 
| Content-Range  |  이 파트에 업로드될 어셈블링된 아카이브의 바이트 범위를 식별합니다. Amazon Glacier는 이 정보를 사용하여 아카이브를 적절한 순서로 어셈블링합니다. 이 헤더의 형식은 [RFC 2616](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.16)을 따릅니다. 헤더 예를 들면 `Content-Range:bytes 0-4194303/*`과 같습니다. 유형: 문자열 기본값: 없음 제약 조건: 범위는 멀티파트 업로드를 시작할 때 지정한 파트 크기보다 클 수 없습니다.  |  예 | 
|  x-amz-content-sha256  |  업로드되는 페이로드의 SHA256 체크섬(선형 해시)입니다. 이 값은 `x-amz-sha256-tree-hash` 헤더에서 지정하는 값과 다릅니다. 유형: 문자열 기본값: 없음 제약 조건: 없음  |  예 | 
|  x-amz-sha256-tree-hash​  |  업로드되는 데이터의 SHA256 트리-해시를 지정합니다. SHA256 트리-해시의 계산에 대한 자세한 내용은 [체크섬 계산](checksum-calculations.md) 섹션을 참조하세요. 유형: 문자열 기본값: 없음 제약 조건: 없음  |  예 | 

### 요청 본문
<a name="api-job-get-requests-elements"></a>

 요청 본문에는 업로드할 데이터가 포함됩니다.

## 응답
<a name="api-job-get-responses"></a>

파트 업로드가 성공하면 Amazon Glacier가 `204 No Content` 응답을 반환합니다.

### 구문
<a name="api-job-get-response-syntax"></a>

```
1. HTTP/1.1 204 No Content
2. x-amzn-RequestId: x-amzn-RequestId
3. Date: Date
4. x-amz-sha256-tree-hash: ChecksumComputedByAmazonGlacier
```

### 응답 헤더
<a name="api-job-get-responses-headers"></a>

성공적인 응답에는 모든 작업에 일반적인 응답 헤더 외에 다음 응답 헤더가 포함됩니다. 일반적인 응답 헤더에 대한 자세한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.


|  이름  |  설명  | 
| --- | --- | 
|  x-amz-sha256-tree-hash​  |  Amazon Glacier가 업로드된 파트에 대해 계산한 SHA256 트리 해시입니다. 유형: 문자열  | 

### 응답 본문
<a name="api-job-get-responses-elements"></a>

이 작업은 응답 본문을 반환하지 않습니다.

## 예시
<a name="api-job-get-examples"></a>

다음은 4MB 파트를 업로드하는 요청입니다. 이 요청은 아카이브에서 4MB 파트가 첫 번째 파트가 되도록 바이트 범위를 설정합니다.

### 요청 예시
<a name="api-job-get-examples-sample-request"></a>

다음은 HTTP `PUT` 요청을 전송하여 4MB 파트를 업로드하는 예제입니다. 이 요청은 멀티파트 업로드 시작 요청에서 반환된 업로드 ID의 URI로 전송됩니다. `Content-Range` 헤더는 아카이브에서 첫 번째 4MB 데이터 파트를 업로드할 파트로 식별합니다.

```
1. PUT /-/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. Date: Wed, 10 Feb 2017 12:00:00 GMT
4. Content-Range:bytes 0-4194303/*
5. x-amz-sha256-tree-hash:c06f7cd4baacb087002a99a5f48bf953
6. x-amz-content-sha256:726e392cb4d09924dbad1cc0ba3b00c3643d03d14cb4b823e2f041cff612a628
7. Content-Length: 4194304
8. Authorization: Authorization=AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-content-sha256;x-amz-date;x-amz-glacier-version,Signature=16b9a9e220a37e32f2e7be196b4ebb87120ca7974038210199ac5982e792cace
```

다음 파트를 업로드할 때도 절차는 같습니다. 하지만 업로드할 파트의 SHA256 트리-해시를 새롭게 계산해야 합니다. 또한 파트가 최종 어셈블리에서 포함되는 위치를 알 수 있도록 새로운 바이트 범위도 지정해야 합니다. 다음은 동일한 업로드 ID를 사용하여 다른 파트를 업로드하는 요청입니다. 이 요청에서는 이전 요청과 4MB 파트 크기 다음에 이어지는 4MB 아카이브를 지정합니다.

```
1. PUT /-/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. Date: Wed, 10 Feb 2017 12:00:00 GMT
4. Content-Range:bytes 4194304-8388607/*
5. Content-Length: 4194304
6. x-amz-sha256-tree-hash:f10e02544d651e2c3ce90a4307427493
7. x-amz-content-sha256:726e392cb4d09924dbad1cc0ba3b00c3643d03d14cb4b823e2f041cff612a628
8. x-amz-glacier-version: 2012-06-01
9. Authorization: Authorization=AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20120525/us-west-2/glacier/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date;x-amz-glacier-version, Signature=16b9a9e220a37e32f2e7be196b4ebb87120ca7974038210199ac5982e792cace
```

어떤 순서로든 파트를 업로드할 수 있지만 Amazon Glacier가 각 파트의 범위 사양을 사용하여 어셈블링 순서를 결정합니다.

### 응답의 예
<a name="api-job-get-examples-sample-response"></a>

```
1. HTTP/1.1 204 No Content
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. x-amz-sha256-tree-hash: c06f7cd4baacb087002a99a5f48bf953
4. Date: Wed, 10 Feb 2017 12:00:00 GMT
```

## 관련 섹션
<a name="related-sections-upload-part"></a>

 
+ [멀티파트 업로드 시작(POST multipart-uploads)](api-multipart-initiate-upload.md)
+ [파트 업로드(PUT uploadID)](#api-upload-part)
+ [멀티파트 업로드 완료(POST uploadID)](api-multipart-complete-upload.md)
+ [멀티파트 업로드 중단(DELETE uploadID)](api-multipart-abort-upload.md)
+ [멀티파트 업로드 목록 조회(GET multipart-uploads)](api-multipart-list-uploads.md)
+ [파트 목록 조회(GET uploadID)](api-multipart-list-parts.md)
+ [대용량 아카이브를 여러 파트로 나누어 업로드(멀티파트 업로드)](uploading-archive-mpu.md)
+ [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md)

# 작업
<a name="job-operations"></a>

다음은 Amazon Glacier에서 사용할 수 있는 작업입니다.

**Topics**
+ [

# 작업 설명(GET JobID)
](api-describe-job-get.md)
+ [

# 작업 출력 가져오기(GET output)
](api-job-output-get.md)
+ [

# 작업 시작(POST jobs)
](api-initiate-job-post.md)
+ [

# 작업 목록 조회(GET jobs)
](api-jobs-get.md)

# 작업 설명(GET JobID)
<a name="api-describe-job-get"></a>

## 설명
<a name="api-describe-job-get-description"></a>

이 작업은 작업 시작 날짜, 작업을 시작한 사용자, 작업 상태 코드/메시지, 그리고 Amazon Glacier(Amazon Glacier)가 작업을 완료한 후 알림을 보낼 Amazon Simple Notification Service(Amazon SNS) 토픽 등 이전에 시작한 작업에 대한 정보를 반환합니다. 작업 시작에 대한 자세한 내용은 [작업 시작(POST jobs)](api-initiate-job-post.md) 섹션을 참조하세요.

 

**참고**  
이 작업을 통해 작업 상태를 확인할 수 있습니다. 하지만 Amazon Glacier가 작업 완료 후 토픽에 알림을 보낼 수 있도록 작업 시작 요청에서 Amazon SNS 토픽을 설정 및 지정하는 것을 적극 권장합니다.

작업 ID는 Amazon Glacier가 작업을 완료한 후 최소 24시간 동안 만료되지 않습니다.

## Requests
<a name="api-describe-job-get-requests"></a>

### 구문
<a name="api-describe-job-get-requests-syntax"></a>

작업에 대한 정보를 가져오려면 HTTP `GET` 메서드를 사용하여 요청을 원하는 작업까지 전송합니다. 이때 상대 URI 경로는 작업 시작 시 Amazon Glacier가 반환하는 경로와 동일합니다.

```
1. GET /AccountID/vaults/VaultName/jobs/JobID HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: date
4. Authorization: signatureValue
5. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID를 지정하거나 선택적으로 단일 '`-`'(하이픈)를 지정할 수 있습니다.이 경우 Amazon Glacier는 요청에 서명하는 데 사용되는 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

 

**참고**  
요청에서 `JobID`를 생략하는 경우에는 응답이 특정 볼트에서 현재 활성화되어 있는 모든 작업의 목록을 반환합니다. 작업 목록 조회에 대한 자세한 내용은 [작업 목록 조회(GET jobs)](api-jobs-get.md) 섹션을 참조하세요.

### 요청 파라미터
<a name="api-describe-job-get-requests-parameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-describe-job-get-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-describe-job-get-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-describe-job-get-responses"></a>

### 구문
<a name="api-describe-job-get-response-syntax"></a>

```
HTTP/1.1 201 Created
x-amzn-RequestId: x-amzn-RequestId
Date: Date
Content-Type: application/json
Content-Length: Length

{
    "Action": "string",
    "ArchiveId": "string",
    "ArchiveSHA256TreeHash": "string",
    "ArchiveSizeInBytes": number,
    "Completed": boolean,
    "CompletionDate": "string",
    "CreationDate": "string",
    "InventoryRetrievalParameters": {
        "EndDate": "string",
        "Format": "string",
        "Limit": "string",
        "Marker": "string",
        "StartDate": "string"
    },
    "InventorySizeInBytes": number,
    "JobDescription": "string",
    "JobId": "string",
    "JobOutputPath": "string",
    "OutputLocation": {
        "S3": {
            "AccessControlList": [
                {
                    "Grantee": {
                        "DisplayName": "string",
                        "EmailAddress": "string",
                        "ID": "string",
                        "Type": "string",
                        "URI": "string"
                    },
                    "Permission": "string"
                }
            ],
            "BucketName": "string",
            "CannedACL": "string",
            "Encryption": {
                "EncryptionType": "string",
                "KMSContext": "string",
                "KMSKeyId": "string"
            },
            "Prefix": "string",
            "StorageClass": "string",
            "Tagging": {
                "string": "string"
            },
            "UserMetadata": {
                "string": "string"
            }
        }
    },
    "RetrievalByteRange": "string",
    "SelectParameters": {
        "Expression": "string",
        "ExpressionType": "string",
        "InputSerialization": {
            "csv": {
                "Comments": "string",
                "FieldDelimiter": "string",
                "FileHeaderInfo": "string",
                "QuoteCharacter": "string",
                "QuoteEscapeCharacter": "string",
                "RecordDelimiter": "string"
            }
        },
        "OutputSerialization": {
            "csv": {
                "FieldDelimiter": "string",
                "QuoteCharacter": "string",
                "QuoteEscapeCharacter": "string",
                "QuoteFields": "string",
                "RecordDelimiter": "string"
            }
        }
    },
    "SHA256TreeHash": "string",
    "SNSTopic": "string",
    "StatusCode": "string",
    "StatusMessage": "string",
    "Tier": "string",
    "VaultARN": "string"
}
```

### 응답 헤더
<a name="api-describe-job-get-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-describe-job-get-responses-elements"></a>

응답 본문에는 다음과 같은 JSON 필드가 포함됩니다.

**작업**  
작업 유형입니다. `ArchiveRetrieval`, `InventoryRetrieval` 또는 `Select`입니다.  
*유형*: 문자열

**ArchiveId**  
선택 또는 아카이브 가져오기 작업을 위해 요청된 아카이브 ID입니다. 그렇지 않으면 이 필드는 `null` 값을 갖습니다.  
*유형*: 문자열

**ArchiveSHA256TreeHash**  
아카이브 가져오기 작업에서 전체 아카이브의 SHA256 트리-해시입니다. 인벤토리 가져오기 작업일 때는 이 필드가 `null` 값을 갖습니다.  
*유형*: 문자열

**ArchiveSizeInBytes**  
`ArchiveRetrieval` 작업일 경우 이 값은 다운로드를 요청하는 아카이브의 크기(바이트)입니다. `InventoryRetrieval` 작업일 경우 이 값은 `null`입니다.  
*형식*: 숫자

**Completed**  
작업 상태입니다. 아카이브 또는 인벤토리 가져오기 작업이 완료되면 [작업 출력 가져오기(GET output)](api-job-output-get.md)을 사용하여 작업의 출력을 가져올 수 있습니다.  
*유형*: 부울

**CompletionDate**  
작업 요청이 완료된 협정 세계시(UTC) 시간입니다. 작업이 진행 중일 때는 null 값을 갖습니다.  
*유형*: 문자열

**CreationDate**  
작업이 생성된 UTC 시간입니다.  
*유형*: ISO 8601 날짜 형식의 문자열 표현입니다(예: `2013-03-20T17:03:43.221Z`).

**InventoryRetrievalParameters**  
범위가 지정된 인벤토리 가져오기에 사용되는 입력 파라미터입니다.  
*유형*: [InventoryRetrievalJobInput](api-InventoryRetrievalJobInput.md) 객체

**InventorySizeInBytes**  
`InventoryRetrieval` 작업일 경우 이 값은 다운로드를 요청하는 인벤토리의 크기(바이트)입니다. `ArchiveRetrieval` 또는 `Select` 작업의 경우 이 값은 `null`입니다.  
*형식*: 숫자

**JobDescription**  
작업을 시작할 때 입력한 작업 설명입니다.  
*유형*: 문자열

**JobId**  
Amazon Glacier에서 작업을 식별하는 ID입니다.  
*유형*: 문자열

**JobOutputPath**  
작업 출력 위치가 포함되어 있습니다.  
*유형*: 문자열

**OutputLocation**  
 선택 작업 결과와 오류가 저장되는 위치에 관한 정보가 포함된 객체입니다.  
*유형*: [OutputLocation](api-OutputLocation.md) 객체

**RetrievalByteRange**  
아카이브 가져오기 작업에 대해 가져온 바이트 범위이며, 형식은 "*StartByteValue*-*EndByteValue*"를 따릅니다. 아카이브 가져오기에서 범위를 지정하지 않으면 전체 아카이브를 가져옵니다. 또한 *StartByteValue*의 값은 0이고, *EndByteValue*의 값은 아카이브 크기에서 1을 뺀 값입니다. 인벤토리 가져오기 또는 선택 작업일 때는 이 필드가 `null` 값을 갖습니다.  
*유형*: 문자열

**SelectParameters**  
선택에 사용되는 파라미터에 관한 정보를 포함하는 객체입니다.  
*유형*: [SelectParameters](api-SelectParameters.md) 객체

**SHA256TreeHash**  
요청하는 아카이브 범위에 대한 SHA256 트리-해시 값입니다. 아카이브에 대한 [작업 시작(POST jobs)](api-initiate-job-post.md) 요청에서 트리-해시 정렬 범위를 지정한 경우 이 필드가 값을 반환합니다. 아카이브 범위 가져오기에서 트리-해시 정렬에 대한 자세한 내용은 [데이터 다운로드 시 체크섬 수신](checksum-calculations-range.md) 섹션을 참조하세요.  
전체 아카이브를 가져오는 명확한 경우에는 이 값이 `ArchiveSHA256TreeHash` 값과 동일합니다.  
이 필드는 다음 상황에서 `null` 값을 갖습니다.  
+ 아카이브 가져오기 작업에서 트리-해시로 정렬되지 않은 범위를 지정할 때
+ 아카이브 작업에서 전체 아카이브와 같은 범위를 지정하고, 작업 상태가 `InProgress`일 때 
+ 인벤토리 작업일 때
+ 작업을 선택합니다.
*유형*: 문자열

**SNSTopic**  
알림을 받는 Amazon SNS 토픽입니다.  
*유형*: 문자열

**StatusCode**  
작업 상태를 나타내는 코드입니다.  
*유효한 값*: `InProgress` \$1 `Succeeded` \$1 `Failed`  
*유형*: 문자열

**StatusMessage**  
쉽게 이해할 수 있도록 작업 상태를 설명하는 메시지입니다.  
*유형*: 문자열

**계층**  
선택 또는 아카이브 가져오기에 사용할 데이터 액세스 계층입니다.  
*유효한 값*: `Bulk` \$1 `Expedited` \$1 `Standard`  
*유형*: 문자열

**VaultARN**  
작업이 하위 리소스인 볼트의 Amazon 리소스 이름(ARN)입니다.  
*유형*: 문자열

### 오류
<a name="api-describe-job-get-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예제
<a name="api-describe-job-get-examples"></a>

다음은 아카이브 가져오기 작업을 요청하는 예제입니다.

### 요청 예제: 작업 설명 가져오기
<a name="api-describe-job-get-example-request"></a>

```
1. GET /-/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

### 응답의 예
<a name="api-describe-job-get-example-response"></a>

응답 본문에는 지정한 작업을 설명하는 JSON이 포함됩니다. 이때 인벤토리 가져오기 작업 및 아카이브 가져오기 작업의 경우 JSON 필드는 동일합니다. 하지만 필드가 작업 유형에 적용되지 않을 때는 `null` 값을 갖습니다. 다음은 아카이브 가져오기 작업의 응답 예제입니다. 다음 사항에 유의하세요.

 
+ `Action` 필드 값은 `ArchiveRetrieval`입니다.
+ `ArchiveSizeInBytes` 필드는 아카이브 가져오기 작업에서 요청하는 아카이브의 크기를 나타냅니다.
+ `ArchiveSHA256TreeHash` 필드는 전체 아카이브에 대한 SHA256 트리-해시를 나타냅니다.
+ `RetrievalByteRange` 필드는 작업 시작 요청에서 요청하는 범위를 나타냅니다. 이 예제에서는 전체 아카이브를 요청합니다.
+ `SHA256TreeHash` 필드는 작업 시작 요청에서 요청하는 범위에 대한 SHA256 트리-해시를 나타냅니다. 이 예제에서는 `ArchiveSHA256TreeHash` 필드와 동일하며, 이는 전체 아카이브를 요청했다는 것을 의미합니다.
+ `InventorySizeInBytes` 필드는 아카이브 가져오기 작업에 적용되지 않기 때문에 `null` 값을 갖습니다.

```
 1. HTTP/1.1 200 OK
 2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
 3. Date: Wed, 10 Feb 2017 12:00:00 GMT
 4. Content-Type: application/json
 5. Content-Length: 419
 6. {
 7.   "Action": "ArchiveRetrieval",
 8.   "ArchiveId": "NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId",
 9.   "ArchiveSizeInBytes": 16777216,
10.   "ArchiveSHA256TreeHash": "beb0fe31a1c7ca8c6c04d574ea906e3f97b31fdca7571defb5b44dca89b5af60",
11.   "Completed": false,
12.   "CompletionDate": null,
13.   "CreationDate": "2012-05-15T17:21:39.339Z",
14.   "InventorySizeInBytes": null,
15.   "JobDescription": "My ArchiveRetrieval Job",
16.   "JobId": "HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID",
17.   "RetrievalByteRange": "0-16777215",
18.   "SHA256TreeHash": "beb0fe31a1c7ca8c6c04d574ea906e3f97b31fdca7571defb5b44dca89b5af60",
19.   "SNSTopic": "arn:aws:sns:us-west-2:012345678901:mytopic",
20.   "StatusCode": "InProgress",
21.   "StatusMessage": "Operation in progress.",
22.   "Tier": "Bulk",
23.   "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault"
24. }
```

다음은 인벤토리 가져오기 작업의 응답 예제입니다. 다음 사항에 유의하세요.

 
+ `Action` 필드 값은 `InventoryRetrieval`입니다.
+ `ArchiveSizeInBytes`, `ArchiveSHA256TreeHash` 및 `RetrievalByteRange` 필드는 인벤토리 가져오기 작업에 적용되지 않기 때문에 null 값을 갖습니다.
+ 작업이 여전히 진행 중이고 다운로드할 인벤토리가 완전히 준비되지 않았기 때문에 `InventorySizeInBytes` 필드 값은 `null`입니다. 하지만 작업 설명 요청 전에 작업이 완료되었다면 이 필드에서 출력 크기가 반환됩니다.

```
{
   "Action": "InventoryRetrieval",
   "ArchiveId": null,
   "ArchiveSizeInBytes": null,
   "ArchiveSHA256TreeHash": null,
   "Completed": false,
   "CompletionDate": null,
   "CreationDate": "2012-05-15T23:18:13.224Z",
   "InventorySizeInBytes": null,
   "JobDescription": "Inventory Description",
   "JobId": "HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID",
   "RetrievalByteRange": null,
   "SHA256TreeHash": null,
   "SNSTopic": "arn:aws:sns:us-west-2:012345678901:mytopic",
   "StatusCode": "InProgress",
   "StatusMessage": "Operation in progress.",
   "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault"
}
```

다음은 볼트 인벤토리 가져오기의 페이지 매김을 계속하는 데 사용되는 마커를 포함하는 완료된 인벤토리 가져오기 작업의 응답 예제입니다.

```
{ 
    "Action": "InventoryRetrieval", 
    "ArchiveId": null, 
    "ArchiveSHA256TreeHash": null, 
    "ArchiveSizeInBytes": null, 
    "Completed": true, 
    "CompletionDate": "2013-12-05T21:51:13.591Z", 
    "CreationDate": "2013-12-05T21:51:12.281Z", 
    "InventorySizeInBytes": 777062, 
    "JobDescription": null, 
    "JobId": "sCC2RZNBF2nildYD_roe0J9bHRdPQUbDRkmTdg-mXi2u3lc49uW6TcEhDF2D9pB2phx-BN30JaBru7PMyOlfXHdStzu8", 
    "NextInventoryRetrievalMarker": null, 
    "RetrievalByteRange": null, 
    "SHA256TreeHash": null, 
    "SNSTopic": null, 
    "StatusCode": "Succeeded", 
    "StatusMessage": "Succeeded", 
    "Tier": "Bulk",
    "VaultARN": "arn:aws:glacier-devo:us-west-2:836579025725:vaults/inventory-icecube-2", 
    "InventoryRetrievalParameters": {
        "StartDate": "2013-11-12T13:43:12Z",
        "EndDate": "2013-11-20T08:12:45Z", 
        "Limit": "120000",
        "Format": "JSON",
        "Marker": "vyS0t2jHQe5qbcDggIeD50chS1SXwYMrkVKo0KHiTUjEYxBGCqRLKaiySzdN7QXGVVV5XZpNVG67pCZ_uykQXFMLaxOSu2hO_-5C0AtWMDrfo7LgVOyfnveDRuOSecUo3Ueq7K0"
    },   
}
```

## 관련 섹션
<a name="related-sections-describe-job-get"></a>

 
+ [작업 출력 가져오기(GET output)](api-job-output-get.md)
+ [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md)

# 작업 출력 가져오기(GET output)
<a name="api-job-output-get"></a>

## 설명
<a name="api-job-output-get-description"></a>

이 작업에서는 [작업 시작(POST jobs)](api-initiate-job-post.md)를 사용하여 시작한 작업의 출력을 다운로드합니다. 작업을 시작할 때 지정한 작업 유형에 따라서 출력 내용은 아카이브 또는 볼트 인벤토리가 될 수 있습니다.

모든 작업 출력을 다운로드하거나, 바이트 범위를 지정하여 출력 일부를 다운로드할 수도 있습니다. 아카이브 가져오기 작업과 인벤토리 가져오기 작업 모두 다운로드 크기를 **작업 출력 가져오기** 응답에서 헤더로 반환되는 크기와 비교하여 맞는지 확인해야 합니다.

아카이브 가져오기 작업일 때는 다운로드 크기가 예상되는 크기와 맞는지도 확인해야 합니다. 출력 일부만 다운로드하는 경우에는 예상되는 크기가 지정한 바이트 범위에 따라 달라집니다. 예를 들어 범위를 `bytes=0-1048575`로 지정하는 경우에는 다운로드 크기가 1,048,576바이트이어야 합니다. 전체 아카이브를 다운로드하는 경우 예상 크기는 Amazon Glacier(Amazon Glacier)에 아카이브를 업로드했을 때의 크기입니다. 예상되는 크기는 **작업 출력 가져오기** 응답에서 헤더로도 반환됩니다.

아카이브 가져오기 작업의 경우, 지정하는 바이트 범위에 따라서 Amazon Glacier가 데이터 부분에 대한 체크섬을 반환합니다. 다운로드한 부분이 정확한 데이터인지 확인하려면 클라이언트에서 체크섬을 계산하여 값이 일치하는지, 그리고 예상한 크기가 맞는지도 함께 확인합니다.

작업 ID는 Amazon Glacier가 작업을 완료한 후 최소 24시간 동안 만료되지 않습니다. 다시 말해서 Amazon Glacier가 작업을 완료한 후 24시간 안에는 언제든지 작업 출력을 다운로드할 수 있습니다.

## Requests
<a name="api-job-output-get-requests"></a>

### 구문
<a name="api-job-output-get-requests-syntax"></a>

작업 출력을 가져오려면 HTTP `GET` 요청을 특정 작업의 `output` URI로 전송합니다.

```
1. GET /AccountId/vaults/VaultName/jobs/JobID/output HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. Range: ByteRangeToRetrieve
6. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID를 지정하거나 선택적으로 단일 '`-`'(하이픈)를 지정할 수 있습니다.이 경우 Amazon Glacier는 요청에 서명하는 데 사용되는 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

### 요청 파라미터
<a name="api-job-output-get-requests-parameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-job-output-get-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더 외에 다음 요청 헤더를 사용합니다. 일반적인 요청 헤더에 대한 자세한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.


|  이름  |  설명  |  필수  | 
| --- | --- | --- | 
| Range  |  출력에서 가져올 바이트 범위입니다. 예를 들어 첫 번째 1,048,576바이트를 다운로드하려면 범위를 `bytes=0-1048575`로 지정합니다. 자세한 내용은 [Range 헤더 필드 정의](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35) 섹션을 참조하세요. 범위는 작업 시작 요청에서 지정하는 범위에 비례합니다. 기본적으로 이 작업에서는 전체 출력을 다운로드합니다. 작업 출력 크기가 큰 경우에는 `Range` 요청 헤더를 사용하여 출력 중 일부를 가져올 수 있습니다. 이 경우 전체 출력을 작은 바이트 청크로 나누어 다운로드할 수 있습니다. 예를 들어 1GB의 작업 출력을 한 번에 128MB씩 데이터 청크로 나누어 다운로드하여 작업 출력 가져오기 요청을 총 8번 전송한다고 가정하겠습니다. 이때는 다음 프로세스에 따라 작업 출력을 다운로드합니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/amazonglacier/latest/dev/api-job-output-get.html) 유형: 문자열 기본값: None 제약 조건: 없음  |  아니요  | 

### 요청 본문
<a name="api-job-output-get-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-job-output-get-responses"></a>

### 구문
<a name="api-job-output-get-response-syntax"></a>

모든 작업 데이터를 반환하는 가져오기 요청이 전송되면 작업 출력 응답으로 `200 OK` 응답 코드가 반환됩니다. 내용을 부분적으로 요청할 때, 예를 들어 요청에서 `Range` 헤더를 지정하면 응답 코드로 `206 Partial Content`가 반환됩니다.

```
1. HTTP/1.1 200 OK
2. x-amzn-RequestId: x-amzn-RequestId
3. Date: Date
4. Content-Type: ContentType
5. Content-Length: Length
6. x-amz-sha256-tree-hash: ChecksumComputedByAmazonGlacier
7. 
8. [Body containing job output.]
```

### 응답 헤더
<a name="api-job-output-get-responses-headers"></a>


|  헤더  |  설명  | 
| --- | --- | 
| Content-Range  |  Amazon Glacier가 반환하는 바이트 범위입니다. 부분적 출력만 다운로드하는 경우에는 응답에서 Amazon Glacier가 반환한 바이트 범위를 보여줍니다. 예를 들어 `bytes 0-1048575/8388608`는 8MB에서 첫 번째 1MB를 반환합니다. `Content-Range` 헤더에 대한 자세한 내용은 [Content-Range 헤더 필드 정의](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.16) 섹션을 참조하세요. 유형: 문자열  | 
| Content-Type  |  Content-Type은 작업 출력이 아카이브인지 또는 볼트 인벤토리인지에 따라 달라집니다.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/amazonglacier/latest/dev/api-job-output-get.html) 유형: 문자열  | 
| x-amz-sha256-tree-hash​ |  응답으로 반환되는 데이터 체크섬입니다. 이 헤더는 아카이브 가져오기 작업에 대한 출력을 가져올 때만 반환됩니다. 또한 이 헤더는 작업 시작 요청에서 요청한 데이터 범위가 트리-해시로 정렬되고, 작업 출력 가져오기에서 다운로드되는 범위 또한 트리-해시로 정렬될 경우에 표시됩니다. 트리-해시 정렬 범위에 대한 자세한 내용은 [데이터 다운로드 시 체크섬 수신](checksum-calculations-range.md) 섹션을 참조하세요. 예를 들어 작업 시작 요청에서 가져올 트리-해시 정렬 범위(전체 아카이브 포함)를 지정한 경우에는 다음 조건 하에서 다운로드하는 데이터의 체크섬이 수신됩니다.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/amazonglacier/latest/dev/api-job-output-get.html) 유형: 문자열  | 

### 응답 본문
<a name="api-job-output-get-responses-elements"></a>

Amazon Glacier는 작업 출력을 응답 본문에 반환합니다. 이때 출력은 작업 유형에 따라 아카이브 내용 또는 볼트 인벤토리가 될 수 있습니다. 볼트 인벤토리의 경우에는 기본적으로 인벤토리 목록이 아래와 같은 JSON 본문으로 반환됩니다.

 

```
 1. {
 2.  "VaultARN": String,
 3.  "InventoryDate": String,
 4.  "ArchiveList": [
 5.       {"ArchiveId": String,
 6.        "ArchiveDescription": String,
 7.        "CreationDate": String,
 8.        "Size": Number,
 9.        "SHA256TreeHash": String
10.       },
11.       ...
12.     ]
13. }
```

볼트 인벤토리 작업을 시작할 때 CSV(쉼표로 구분된 값) 출력 형식을 요청한 경우 볼트 인벤토리가 본문에서 CSV 형식으로 반환됩니다. CSV 형식에는 "ArchiveId", "ArchiveDescription", "CreationDate", "Size", "SHA256TreeHash" 등 열이 5개 있으며, 각 열의 정의는 해당하는 JSON 필드와 같습니다.

**참고**  
반환된 CSV 형식에서는 전체 필드가 큰따옴표로 묶여서 반환될 수 있습니다. 쉼표 또는 큰따옴표가 포함된 필드는 항상 큰따옴표로 묶여서 반환됩니다. 예를 들어 `my archive description,1`은 `"my archive description,1"`로 반환됩니다. 큰따옴표로 묶여서 반환되는 필드에 포함된 큰따옴표 문자는 앞에 백슬래시 문자와 함께 *이스케이프 처리됩니다*. 예를 들어 `my archive description,1"2`는 `"my archive description,1\"2"`로, 그리고 `my archive description,1\"2`는 `"my archive description,1\\"2"`로 반환됩니다. 백슬래시 문자는 이스케이프 처리되지 않습니다.

JSON 응답 본문에는 다음과 같은 JSON 필드가 포함됩니다.

**ArchiveDescription**  
아카이브에 대한 설명입니다.  
*유형*: 문자열

**ArchiveId**  
아카이브 ID입니다.  
*유형*: 문자열

**ArchiveList**  
아카이브 메타데이터의 배열입니다. 이 배열을 구성하는 객체는 각각 볼트에 저장된 아카이브 1개의 메타데이터를 나타냅니다.  
*유형*: 배열

**CreationDate**  
아카이브가 생성된 UTC 날짜와 시간입니다.  
*유형*: ISO 8601 날짜 형식의 문자열 표현입니다. 예: `2013-03-20T17:03:43.221Z`

**InventoryDate**  
볼트 변경 이후 마지막으로 작성된 볼트 인벤토리의 UTC 날짜와 시간입니다. Amazon Glacier가 하루에 한 번 볼트 인벤토리를 준비하지만, 마지막 인벤토리 이후 볼트에 아카이브 추가 또는 삭제가 있는 경우에만 인벤토리 날짜가 업데이트됩니다.  
*유형*: ISO 8601 날짜 형식의 문자열 표현입니다. 예: `2013-03-20T17:03:43.221Z`

**SHA256TreeHash**  
아카이브의 트리-해시입니다.  
*유형*: 문자열

**Size**:  
아카이브 크기(바이트)입니다.  
*형식*: 숫자

**VaultARN**  
아카이브 가져오기가 요청된 Amazon 리소스 이름(ARN) 리소스입니다.  
*유형*: 문자열

### 오류
<a name="api-job-output-get-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예제
<a name="api-job-output-get-examples"></a>

다음은 아카이브 가져오기 작업을 요청하는 예제입니다.

### 예제 1: 출력 다운로드
<a name="api-job-output-get-examplesEx1"></a>

이 예는 아카이브 가져오기 작업 시작 요청에 대한 응답으로 Amazon Glacier가 준비한 데이터를 가져옵니다.

#### 요청 예시
<a name="api-job-output-get-example-request"></a>

```
1. GET /-/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID/output HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

#### 응답의 예
<a name="api-job-output-get-example-response"></a>

다음은 아카이브 가져오기 작업의 응답 예제입니다. 예제를 보면 `Content-Type` 헤더가 `application/octet-stream`이고, `x-amz-sha256-tree-hash` 헤더가 응답에 포함되어 있습니다. 이 말은 모든 작업 데이터가 반환된다는 것을 의미합니다.

```
1. HTTP/1.1 200 OK
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. x-amz-sha256-tree-hash: beb0fe31a1c7ca8c6c04d574ea906e3f97b31fdca7571defb5b44dca89b5af60
4. Date: Wed, 10 Feb 2017 12:00:00 GMT
5. Content-Type: application/octet-stream
6. Content-Length: 1048576
7. 
8. [Archive data.]
```

다음은 인벤토리 가져오기 작업의 응답 예제입니다. 예제를 보면 `Content-Type` 헤더가 `application/json`입니다. 또한 응답에 `x-amz-sha256-tree-hash` 헤더가 포함되어 있지 않습니다.

```
 1. HTTP/1.1 200 OK
 2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
 3. Date: Wed, 10 Feb 2017 12:00:00 GMT
 4. Content-Type: application/json
 5. Content-Length: 906
 6. 
 7. {
 8.  "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault",
 9.  "InventoryDate": "2011-12-12T14:19:01Z",
10.  "ArchiveList": [
11.    {
12.      "ArchiveId": "DMTmICA2n5Tdqq5BV2z7og-A20xnpAPKt3UXwWxdWsn_D6auTUrW6kwy5Qyj9xd1MCE1mBYvMQ63LWaT8yTMzMaCxB_9VBWrW4Jw4zsvg5kehAPDVKcppUD1X7b24JukOr4mMAq-oA",
13.      "ArchiveDescription": "my archive1",
14.      "CreationDate": "2012-05-15T17:19:46.700Z",
15.      "Size": 2140123,
16.      "SHA256TreeHash": "6b9d4cf8697bd3af6aa1b590a0b27b337da5b18988dbcc619a3e608a554a1e62"
17.    },
18.    {
19.      "ArchiveId": "2lHzwhKhgF2JHyvCS-ZRuF08IQLuyB4265Hs3AXj9MoAIhz7tbXAvcFeHusgU_hViO1WeCBe0N5lsYYHRyZ7rrmRkNRuYrXUs_sjl2K8ume_7mKO_0i7C-uHE1oHqaW9d37pabXrSA",
20.      "ArchiveDescription": "my archive2",
21.      "CreationDate": "2012-05-15T17:21:39.339Z",
22.      "Size": 2140123,
23.      "SHA256TreeHash": "7f2fe580edb35154041fa3d4b41dd6d3adaef0c85d2ff6309f1d4b520eeecda3"
24.    }
25.   ]
26. }
```

### 예제 2: 부분 출력 다운로드
<a name="api-job-output-get-examples2"></a>

이 예는 아카이브 가져오기 작업 시작 요청에 대한 응답으로 Amazon Glacier가 준비한 아카이브의 일부만 가져옵니다. 요청에서는 옵션 `Range` 헤더를 사용하여 첫 번째 1,024바이트만 가져옵니다.

#### 요청 예시
<a name="api-job-output-get-example-request2"></a>

```
1. GET /-/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID/output HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. Range: bytes=0-1023	
5. x-amz-glacier-version: 2012-06-01
6. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

#### 응답의 예
<a name="api-job-output-get-example-response2"></a>

다음 성공적인 응답에서는 `206 Partial Content` 응답을 보여줍니다. 이 경우 Amazon Glacier가 반환하는 바이트 범위를 지정하는 `Content-Range` 헤더도 응답에 포함됩니다.

```
1. HTTP/1.1 206 Partial Content
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:00:00 GMT
4. Content-Range: bytes 0-1023/8388608
5. Content-Type: application/octet-stream
6. Content-Length: 1024
7. 
8. [Archive data.]
```

## 관련 섹션
<a name="related-sections-job-output-archive-retrieval"></a>

 
+ [작업 설명(GET JobID)](api-describe-job-get.md)
+ [작업 시작(POST jobs)](api-initiate-job-post.md)
+ [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md)

# 작업 시작(POST jobs)
<a name="api-initiate-job-post"></a>

이 작업은 다음 유형의 Amazon Glacier(Amazon Glacier) 작업을 시작합니다.
+ `archive-retrieval`: 아카이브 가져오기
+ `inventory-retrieval`: 볼트 인벤토리 작성

**Topics**
+ [

## 아카이브 또는 볼트 인벤토리 가져오기 작업 시작
](#api-initiate-job-post-description)
+ [

## Requests
](#api-initiate-job-post-requests)
+ [

## 응답
](#api-initiate-job-post-responses)
+ [

## 예제
](#api-initiate-job-post-examples)
+ [

## 관련 섹션
](#more-info-api-initiate-job-post)

## 아카이브 또는 볼트 인벤토리 가져오기 작업 시작
<a name="api-initiate-job-post-description"></a>

아카이브 또는 볼트 인벤토리 가져오기는 비동기식 작업이기 때문에 먼저 작업을 시작해야 합니다. 일단 시작되면 작업을 취소할 수 없습니다. 가져오기 작업은 2단계 프로세스로 구성됩니다.

1. [작업 시작(POST jobs)](#api-initiate-job-post) 작업을 사용하여 가져오기 작업을 시작합니다.
**중요**  
데이터 가져오기 정책으로 인해 가져오기 작업 시작 요청이 `PolicyEnforcedException`과 함께 실패할 수 있습니다. 데이터 가져오기 정책에 대한 자세한 내용은 [Amazon Glacier 데이터 검색 정책](data-retrieval-policy.md) 섹션을 참조하세요. `PolicyEnforcedException` 예외에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

1. 작업이 완료된 후 [작업 출력 가져오기(GET output)](api-job-output-get.md) 작업을 사용하여 바이트를 다운로드합니다.

가져오기 요청은 비동기식으로 실행됩니다. 가져오기 작업을 시작하면 Amazon Glacier가 작업을 생성한 후 응답으로 작업 ID를 반환합니다. Amazon Glacier가 작업을 완료하면 작업 출력(아카이브 또는 인벤토리 데이터)을 가져올 수 있습니다. 작업 출력 가져오기에 대한 자세한 내용은 [작업 출력 가져오기(GET output)](api-job-output-get.md) 작업을 참조하세요.

작업 출력을 가져오려면 먼저 작업을 완료해야 합니다. 작업 완료 시기는 다음과 같은 옵션으로 알 수 있습니다.

 
+ **Amazon SNS 알림 사용**: 작업이 완료된 후 사용자는 Amazon Glacier가 알림 메시지를 게시할 수 있는 Amazon SNS 토픽을 지정할 수 있습니다. 작업 요청 1건당 SNS 토픽 1개를 지정할 수 있습니다. 알림 메시지는 Amazon Glacier가 작업을 마친 후에만 전송됩니다. 작업 요청 1건당 SNS 토픽을 1개 지정하는 것 외에도 모든 가져오기 작업에서 작업 알림 메시지를 전송할 수 있도록 볼트 알림을 구성할 수 있습니다. 자세한 내용은 [볼트 알림 구성 설정(PUT notification-configuration)](api-vault-notifications-put.md) 단원을 참조하십시오.
+ **작업 세부 정보 가져오기**: 작업이 진행 중일 때 [작업 설명(GET JobID)](api-describe-job-get.md) 요청을 통해 작업 상태 정보를 가져올 수 있습니다. 그러나 Amazon SNS 알림을 사용하여 작업 완료 시점을 확인하는 방법이 더욱 효율적입니다.

 

**참고**  
알림 메시지를 통해 가져오는 정보는 [작업 설명(GET JobID)](api-describe-job-get.md)을 호출하여 가져오는 정보와 동일합니다.

특정 이벤트에 대해 볼트에 알림 구성을 추가하고 작업 시작을 요청할 때 SNS 토픽을 지정하면 Amazon Glacier는 두 알림 메시지를 모두 전송합니다. 자세한 내용은 [볼트 알림 구성 설정(PUT notification-configuration)](api-vault-notifications-put.md) 단원을 참조하십시오.

### 볼트 인벤토리
<a name="api-initiate-job-post-about-the-vault-inventory"></a>

Amazon Glacier는 아카이브를 볼트에 처음 업데이트한 날짜부터 대략 하루에 한 번씩 볼트 인벤토리를 업데이트합니다. 마지막 인벤토리 이후 볼트에 대한 아카이브 추가 또는 삭제가 없는 경우에는 인벤토리 데이터가 업데이트되지 않습니다. 볼트 인벤토리 작업이 시작되면 Amazon Glacier는 마지막으로 생성한 인벤토리, 즉 실시간 데이터가 아닌 특정 시점 스냅샷을 반환합니다.

Amazon Glacier가 볼트를 위한 첫 번째 인벤토리를 생성한 뒤, 인벤토리 가져오기가 가능해지기까지는 일반적으로 반나절에서 하루가 걸립니다.

아카이브를 업로드할 때마다 볼트 인벤토리를 가져오는 것이 불필요하다고 생각할 수도 있습니다. 그러나 Amazon Glacier에 업로드하는 아카이브에 대한 메타데이터를 연결하여 클라이언트 측에서 데이터베이스를 관리한다고 가정해보겠습니다. 볼트 인벤토리가 필요에 따라 데이터베이스 정보와 실제 볼트 인벤토리를 서로 조정하는 데 얼마나 유용한지 알게 될 것입니다. 인벤토리 작업 출력으로 반환되는 데이터 필드에 대한 자세한 내용은 [응답 본문](api-job-output-get.md#api-job-output-get-responses-elements) 섹션을 참조하세요.

### 범위가 지정된 인벤토리 가져오기
<a name="api-initiate-job-post-vault-inventory-list-filtering"></a>

 아카이브 생성 날짜를 기준으로 필터링하거나 제한을 설정하여 가져오는 인벤토리 항목 수를 제한할 수 있습니다.

**아카이브 생성 날짜에 따른 필터링**  
아카이브가 `StartDate`와 `EndDate` 사이에서 생성되었을 때 **작업 시작** 요청에서 두 파라미터 값을 지정하여 인벤토리 항목을 가져올 수 있습니다. 그러면 `StartDate` 당일 또는 이후 및 `EndDate` 이전에 생성된 아카이브가 반환됩니다. `EndDate` 없이 `StartDate`만 입력하면 `StartDate` 당일 또는 이후에 생성된 모든 아카이브의 인벤토리를 가져옵니다. 반대로 `StartDate` 없이 `EndDate`만 입력하면 `EndDate` 이전에 생성된 모든 아카이브의 인벤토리를 다시 가져옵니다.

**가져오기 1건당 인벤토리 항목 수 제한**  
 **작업 시작** 요청에서 `Limit` 파라미터를 설정하여 반환되는 인벤토리 항목 수를 제한할 수 있습니다. 그러면 지정된 `Limit`까지의 인벤토리 항목이 인벤토리 작업 출력에 포함됩니다. 인벤토리 항목이 더 있는 경우에는 결과에 페이지가 매겨집니다. 작업을 마친 후 [작업 설명(GET JobID)](api-describe-job-get.md) 작업을 통해 후속 **작업 시작** 요청에서 사용하는 마커를 확인할 수 있습니다. 마커는 다음 인벤토리 항목 집합을 가져오는 시작점을 나타냅니다. 이전 **작업 설명** 출력의 마커로 **작업 시작** 요청을 반복 생성해 전체 인벤토리를 페이지별로 살펴볼 수 있습니다. null을 반환하는 **작업 설명** 마커를 얻을 때까지 이를 계속합니다. null은 사용할 수 있는 인벤토리 항목이 더 이상 없음을 나타냅니다.

`Limit` 파라미터는 날짜 범위 파라미터와 함께 사용할 수 있습니다.

### 범위가 지정된 아카이브 가져오기
<a name="api-initiate-job-post-"></a>

아카이브 가져오기는 아카이브 전체 또는 범위로 시작할 수 있습니다. 범위를 지정하여 아카이브를 가져올 때는 반환할 바이트 범위 또는 전체 아카이브를 지정합니다. 지정하는 범위는 메가바이트(MB)로 정렬되어야 합니다. 다시 말해 범위의 시작 값이 1MB로 나누어져야 하고, 범위의 종료 값 \$1 1이 1MB로 나누어지거나 아카이브의 끝과 같아야 합니다. 범위가 지정된 아카이브 가져오기가 메가바이트 정렬을 따르지 않으면 `400` 응답이 반환됩니다. 그 밖에 **작업 출력 가져오기**([작업 출력 가져오기(GET output)](api-job-output-get.md))를 사용해 다운로드하는 데이터의 체크섬 값을 가져오려면 범위가 트리-해시로 정렬되어야 합니다. 트리-해시 정렬 범위에 대한 자세한 내용은 [데이터 다운로드 시 체크섬 수신](checksum-calculations-range.md) 섹션을 참조하세요.

### 신속, 표준, 벌크 계층
<a name="api-initiate-job-expedited-bulk"></a>

아카이브 검색 작업을 시작할 때 요청 본문의 `Tier` 필드에서 다음 옵션 중 하나를 지정할 수 있습니다.
+ **`Expedited`**: 신속 계층을 사용하면 아카이브 복원에 대한 긴급 요청이 필요한 경우, 빠르게 데이터에 액세스할 수 있습니다. 가장 큰 아카이브(250MB\$1)를 제외한 모든 아카이브의 경우 신속 계층을 사용하여 액세스되는 데이터는 일반적으로 1\$15분 안에 사용할 수 있습니다.
+ **`Standard`**: 표준 계층을 사용하면 몇 시간 내에 모든 아카이브에 액세스할 수 있습니다. 표준 계층을 사용하여 액세스하는 데이터는 일반적으로 3\$15시간 안에 사용할 수 있습니다. 이 옵션은 계층 옵션을 지정하지 않는 작업 요청의 기본 옵션입니다.
+ **`Bulk`**: 벌크 계층은 Amazon Glacier에서 가장 저렴한 계층으로서 페타바이트 단위의 대용량 데이터도 저렴한 비용으로 하루 만에 가져올 수 있습니다. 벌크 계층을 사용하여 액세스하는 데이터는 일반적으로 5\$112시간 안에 사용할 수 있습니다.

신속 및 벌크 가져오기에 대한 자세한 내용은 [Amazon Glacier 아카이브 가져오기](downloading-an-archive-two-steps.md) 섹션을 참조하세요.

## Requests
<a name="api-initiate-job-post-requests"></a>

작업을 시작하려면 HTTP `POST` 메서드를 사용하여 작업 요청을 볼트의 `jobs` 하위 리소스로 전송합니다. 또한 요청의 JSON 문서에서 작업 요청에 대한 세부 정보를 지정합니다. 작업 유형은 `Type` 필드로 지정됩니다. 필요하다면 `SNSTopic` 필드를 지정하여 Amazon Glacier가 작업 완료 후 알림 메시지를 게시할 수 있는 Amazon SNS 토픽을 나타낼 수 있습니다.

 

**참고**  
토픽이 존재하지 않는 경우, 알림 메시지를 Amazon SNS에 게시하려면 토픽을 직접 생성해야 합니다. Amazon Glacier는 사용자를 위해 토픽을 생성하지 않습니다. 토픽에는 Amazon Glacier 볼트의 게시물을 수신할 권한이 있어야 합니다. Amazon Glacier는 볼트가 토픽을 게시할 권한이 있는지 확인하지 않습니다. 권한이 올바로 구성되어 있지 않으면 작업이 완료되더라도 알림 메시지가 수신되지 않을 수도 있습니다.

### 구문
<a name="api-initiate-job-post-requests-syntax"></a>

다음은 작업 시작을 위한 요청 구문입니다.

```
 1. POST /AccountId/vaults/VaultName/jobs HTTP/1.1
 2. Host: glacier.Region.amazonaws.com
 3. Date: Date
 4. Authorization: SignatureValue
 5. x-amz-glacier-version: 2012-06-01
 6. 
 7. {
 8.    "jobParameters": { 
 9.       "ArchiveId": "string",
10.       "Description": "string",
11.       "Format": "string",
12.       "InventoryRetrievalParameters": { 
13.          "EndDate": "string",
14.          "Limit": "string",
15.          "Marker": "string",
16.          "StartDate": "string"
17.       },
18.       "OutputLocation": { 
19.          "S3": { 
20.             "AccessControlList": [ 
21.                { 
22.                   "Grantee": { 
23.                      "DisplayName": "string",
24.                      "EmailAddress": "string",
25.                      "ID": "string",
26.                      "Type": "string",
27.                      "URI": "string"
28.                   },
29.                   "Permission": "string"
30.                }
31.             ],
32.             "BucketName": "string",
33.             "CannedACL": "string",
34.             "Encryption": { 
35.                "EncryptionType": "string",
36.                "KMSContext": "string",
37.                "KMSKeyId": "string"
38.             },
39.             "Prefix": "string",
40.             "StorageClass": "string",
41.             "Tagging": { 
42.                "string" : "string" 
43.             },
44.             "UserMetadata": { 
45.                "string" : "string" 
46.             }
47.          }
48.       },
49.       "RetrievalByteRange": "string",
50.       "SelectParameters": { 
51.          "Expression": "string",
52.          "ExpressionType": "string",
53.          "InputSerialization": { 
54.             "csv": { 
55.                "Comments": "string",
56.                "FieldDelimiter": "string",
57.                "FileHeaderInfo": "string",
58.                "QuoteCharacter": "string",
59.                "QuoteEscapeCharacter": "string",
60.                "RecordDelimiter": "string"
61.             }
62.          },
63.          "OutputSerialization": { 
64.             "csv": { 
65.                "FieldDelimiter": "string",
66.                "QuoteCharacter": "string",
67.                "QuoteEscapeCharacter": "string",
68.                "QuoteFields": "string",
69.                "RecordDelimiter": "string"
70.             }
71.          }
72.       },
73.       "SNSTopic": "string",
74.       "Tier": "string",
75.       "Type": "string"
76.    }
77. }
```

**참고**  
 `AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID를 지정하거나 선택적으로 단일 '`-`'(하이픈)를 지정할 수 있습니다.이 경우 Amazon Glacier는 요청에 서명하는 데 사용되는 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

### 요청 본문
<a name="api-initiate-job-post-select-request-body"></a>

요청은 요청 본문에서 JSON 형식의 다음 데이터를 받습니다.

jobParameters  
작업 정보를 지정하기 위한 옵션을 제공합니다.  
*유형*: [jobParameters](api-jobParameters.md) 객체  
*필수 항목 여부:* 예 

## 응답
<a name="api-initiate-job-post-responses"></a>

Amazon Glacier가 작업을 생성합니다. 응답으로 작업 URI를 반환합니다.

### 구문
<a name="api-initiate-job-post-response-syntax"></a>

```
1. HTTP/1.1 202 Accepted
2. x-amzn-RequestId: x-amzn-RequestId
3. Date: Date
4. Location: location
5. x-amz-job-id: jobId
6. x-amz-job-output-path: jobOutputPath
```

### 응답 헤더
<a name="api-initiate-job-post-responses-headers"></a>


| 헤더 | 설명 | 
| --- | --- | 
| Location |  작업의 상대적 URI 경로입니다. 이 URI 경로를 사용해 작업 상태를 알아볼 수 있습니다. 자세한 내용은 [작업 설명(GET JobID)](api-describe-job-get.md) 단원을 참조하십시오. 유형: 문자열 기본값: None  | 
| x-amz-job-id |  작업 ID입니다. 이 값은 `Location` 헤더에도 포함됩니다. 유형: 문자열 기본값: None  | 
| x-amz-job-output-path |  선택 결과가 저장되는 위치의 경로입니다. 유형: 문자열 기본값: None  | 

### 응답 본문
<a name="api-initiate-job-post-responses-elements"></a>

이 작업은 응답 본문을 반환하지 않습니다.

### 오류
<a name="api-initiate-job-post-responses-errors"></a>

이 작업에는 모든 Amazon Glacier 작업에 일반적으로 발생할 수 있는 오류 외에 다음 오류도 포함됩니다. Amazon Glacier의 오류에 대한 자세한 내용과 오류 코드 목록은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.


| 코드 | 설명 | HTTP 상태 코드 | Type | 
| --- | --- | --- | --- | 
| InsufficientCapacityException | 신속 요청을 처리할 수 있는 용량이 부족한 경우에 반환됩니다. 이 오류는 신속 가져오기에만 적용되며 표준 또는 벌크 가져오기에는 적용되지 않습니다. | 503 Service Unavailable | Server | 

## 예제
<a name="api-initiate-job-post-examples"></a>

### 요청 예제: 아카이브 가져오기 작업 시작
<a name="api-initiate-job-post-example-request"></a>

```
 1. POST /-/vaults/examplevault/jobs HTTP/1.1
 2. Host: glacier.us-west-2.amazonaws.com
 3. x-amz-Date: 20170210T120000Z
 4. x-amz-glacier-version: 2012-06-01
 5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
 6. 
 7. {
 8.   "Type": "archive-retrieval",
 9.   "ArchiveId": "NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId",
10.   "Description": "My archive description",
11.   "SNSTopic": "arn:aws:sns:us-west-2:111111111111:Glacier-ArchiveRetrieval-topic-Example",
12.   "Tier" : "Bulk"
13. }
```

다음은 요청 본문의 `RetrievalByteRange` 필드를 사용하여 가져올 아카이브 범위를 지정하는 예제입니다.

 

```
{
  "Type": "archive-retrieval",
  "ArchiveId": "NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId",
  "Description": "My archive description",
  "RetrievalByteRange": "2097152-4194303",
  "SNSTopic": "arn:aws:sns:us-west-2:111111111111:Glacier-ArchiveRetrieval-topic-Example",
  "Tier" : "Bulk"
}
```

### 응답의 예
<a name="api-initiate-job-post-example-response"></a>

```
1. HTTP/1.1 202 Accepted
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:00:00 GMT
4. Location: /111122223333/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID
5. x-amz-job-id: HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID
```

### 요청 예제: 인벤토리 가져오기 작업 시작
<a name="api-initiate-job-post-example-retrieve-inventory-request"></a>

다음은 인벤토리 가져오기 작업을 시작하여 `examplevault` 볼트에서 아카이브 목록을 가져오는 요청 예제입니다. 요청 본문에서 `Format`이 `CSV`로 설정되어 있으므로 인벤토리가 CSV 형식으로 반환된다는 것을 의미합니다.

```
 1. POST /-/vaults/examplevault/jobs HTTP/1.1
 2. Host: glacier.us-west-2.amazonaws.com
 3. x-amz-Date: 20170210T120000Z
 4. Content-Type: application/x-www-form-urlencoded
 5. x-amz-glacier-version: 2012-06-01
 6. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
 7. 
 8. {
 9.   "Type": "inventory-retrieval",
10.   "Description": "My inventory job",
11.   "Format": "CSV",  
12.   "SNSTopic": "arn:aws:sns:us-west-2:111111111111:Glacier-InventoryRetrieval-topic-Example"
13. }
```

### 응답의 예
<a name="api-initiate-job-post-example-retrieve-inventory-response"></a>

```
1. HTTP/1.1 202 Accepted
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:00:00 GMT 
4. Location: /111122223333/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID
5. x-amz-job-id: HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID
```

### 요청 예제: 한도가 설정된 날짜 필터링을 사용하여 인벤토리 가져오기 작업을 시작하고, 다음 인벤토리 항목 페이지를 가져오기 위한 후속 요청을 시작합니다.
<a name="api-initiate-job-post-example-retrieve-inventory-request-filtered"></a>

다음은 날짜 필터링을 사용하고 한도를 설정하여 볼트 인벤토리 가져오기 작업을 시작하는 요청 예제입니다.

```
 1. {
 2.     "ArchiveId": null, 
 3.     "Description": null, 
 4.     "Format": "CSV", 
 5.     "RetrievalByteRange": null, 
 6.     "SNSTopic": null, 
 7.     "Type": "inventory-retrieval", 
 8.     "InventoryRetrievalParameters": {
 9.         "StartDate": "2013-12-04T21:25:42Z",
10.         "EndDate": "2013-12-05T21:25:42Z", 
11.         "Limit" : "10000"
12.     }, 
13. }
```

다음은 [작업 설명(GET JobID)](api-describe-job-get.md)에서 가져온 마커를 사용하여 다음 인벤토리 항목 페이지를 가져오는 후속 요청의 예제입니다.

```
 1. {
 2.     "ArchiveId": null, 
 3.     "Description": null, 
 4.     "Format": "CSV", 
 5.     "RetrievalByteRange": null, 
 6.     "SNSTopic": null, 
 7.     "Type": "inventory-retrieval", 
 8.     "InventoryRetrievalParameters": {
 9.         "StartDate": "2013-12-04T21:25:42Z",
10.         "EndDate": "2013-12-05T21:25:42Z", 
11.         "Limit": "10000",
12.         "Marker": "vyS0t2jHQe5qbcDggIeD50chS1SXwYMrkVKo0KHiTUjEYxBGCqRLKaiySzdN7QXGVVV5XZpNVG67pCZ_uykQXFMLaxOSu2hO_-5C0AtWMDrfo7LgVOyfnveDRuOSecUo3Ueq7K0"
13.     }, 
14. }
```

### 응답의 예
<a name="api-initiate-job-post-example-select-response"></a>

```
1. HTTP/1.1 202 Accepted
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:00:00 GMT 
4. Location: /111122223333/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID
5. x-amz-job-id: HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID
6. x-amz-job-output-path: test/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID/
```

## 관련 섹션
<a name="more-info-api-initiate-job-post"></a>

 
+ [작업 설명(GET JobID)](api-describe-job-get.md)
+ [작업 출력 가져오기(GET output)](api-job-output-get.md)
+ [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md)

# 작업 목록 조회(GET jobs)
<a name="api-jobs-get"></a>

## 설명
<a name="api-jobs-get-description"></a>

이 작업에서는 진행 중인 작업과 최근에 마친 작업을 포함하여 볼트 작업 목록을 조회합니다.

 

**참고**  
Amazon Glacier(Amazon Glacier)는 최근에 마친 작업을 삭제하기 전에 일정 기간 유지하지만 최종적으로는 완료된 작업을 삭제합니다. 완료된 작업 출력은 가져올 수 있습니다. 완료된 작업이라고 해도 이후 일정 기간은 유지하기 때문에 작업 완료 알림 메시지를 놓치거나 첫 번째 다운로드 시도가 실패하더라도 작업 출력을 가져올 수 있습니다. 예를 들어 아카이브 가져오기 작업을 시작하여 아카이브를 다운로드한다고 가정하겠습니다. 하지만 작업이 완료되어 아카이브를 다운로드하려고 하지만 네트워크 장애가 발생하고 맙니다. 이러한 시나리오에서도 작업이 존재하는 동안에는 아카이브 다운로드를 재시도할 수 있습니다.

`List Jobs` 작업은 페이지 매김을 지원합니다. 따라서 항상 응답 `Marker` 필드를 확인해야 합니다. 목록을 조회할 작업이 더 없으면 `Marker` 필드가 `null`로 설정됩니다. 목록을 조회할 작업이 더 있으면 `Marker` 필드가 null이 아닌 값으로 설정되어 이 값을 목록 페이지 매김에 계속해서 사용할 수 있습니다. 특정 작업에서 시작되는 작업 목록을 반환하려면 `marker` 요청 파라미터를 이전 `List Jobs` 요청에서 가져온 해당 작업의 `Marker` 값으로 설정합니다.

요청에서 `limit` 파라미터를 지정하면 응답으로 반환되는 최대 작업 수를 제한할 수 있습니다. 기본 제한은 50개입니다. 반환되는 작업 수가 여기에서 설정하는 제한 값보다 적을 수 있지만 제한 값을 초과할 수는 없습니다.

또한 옵션으로 `statuscode` 파라미터 또는 `completed` 파라미터를 지정하거나 둘 모두 지정하여 반환되는 작업 목록을 필터링할 수도 있습니다. `statuscode` 파라미터를 사용하면 `InProgress`, `Succeeded` 또는 `Failed` 상태와 일치하는 작업만 반환하도록 지정할 수 있습니다. `completed` 파라미터를 사용하면 완료된 작업(`true`) 또는 완료되지 않은 작업(`false`)만 반환하도록 지정할 수 있습니다.

## Requests
<a name="api-jobs-get-requests"></a>

### 구문
<a name="api-jobs-get-requests-syntax"></a>

 모든 유형의 작업 목록을 반환하려면 `GET` 요청을 볼트의 `jobs` 하위 리소스 URI로 전송합니다.

```
1. GET /AccountId/vaults/VaultName/jobs HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 볼트를 소유한 계정의 AWS 계정 ID입니다. AWS 계정 ID를 지정하거나 선택적으로 단일 '`-`'(하이픈)를 지정할 수 있습니다.이 경우 Amazon Glacier는 요청에 서명하는 데 사용되는 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 사용하는 경우 ID에 하이픈('-')을 포함할 수 없습니다.

### 요청 파라미터
<a name="api-jobs-get-requests-parameters"></a>


|  이름  |  설명  |  필수  | 
| --- | --- | --- | 
| completed  |  반환할 작업 상태입니다. `true` 또는 `false`를 지정할 수 있습니다. 유형: Boolean 제약 조건: 없음  |  아니요  | 
|  limit  |  반환할 작업의 최대 수입니다. 기본 제한은 50개입니다. 반환되는 작업 수가 여기에서 지정하는 제한 값보다 적을 수 있지만 제한 값을 초과할 수는 없습니다. 유형: 문자열 제약 조건: 최소 정수 값 1. 최대 정수 값 50  |  아니요 | 
| marker  |  작업 목록 조회가 시작되는 지점의 작업을 지정할 수 있도록 페이지 매김에 사용되는 불투명한 문자열입니다. 이전 `List Jobs` 응답에서 `marker` 값을 가져옵니다. `marker`는 이전 `List Jobs` 요청에서 시작된 결과에 페이지를 계속해서 매겨야 하는 경우에만 추가합니다. 유형: 문자열 제약 조건: 없음  |  아니요  | 
| statuscode  |  반환할 작업 상태의 유형입니다. 유형: 문자열 제약 조건: `InProgress`, `Succeeded` 또는 `Failed` 값 중 하나입니다.  |  아니요  | 

### 요청 헤더
<a name="api-jobs-get-requests-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-jobs-get-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-jobs-get-responses"></a>

### 구문
<a name="api-jobs-get-responses-syntax"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: x-amzn-RequestId
Date: Date
Location: Location 
Content-Type: application/json
Content-Length: Length

{
    "JobList": [
        {
            "Action": "string",
            "ArchiveId": "string",
            "ArchiveSHA256TreeHash": "string",
            "ArchiveSizeInBytes": number,
            "Completed": boolean,
            "CompletionDate": "string",
            "CreationDate": "string",
            "InventoryRetrievalParameters": {
                "EndDate": "string",
                "Format": "string",
                "Limit": "string",
                "Marker": "string",
                "StartDate": "string"
            },
            "InventorySizeInBytes": number,
            "JobDescription": "string",
            "JobId": "string",
            "JobOutputPath": "string",
            "OutputLocation": {
                "S3": {
                    "AccessControlList": [
                        {
                            "Grantee": {
                                "DisplayName": "string",
                                "EmailAddress": "string",
                                "ID": "string",
                                "Type": "string",
                                "URI": "string"
                            },
                            "Permission": "string"
                        }
                    ],
                    "BucketName": "string",
                    "CannedACL": "string",
                    "Encryption": {
                        "EncryptionType": "string",
                        "KMSContext": "string",
                        "KMSKeyId": "string"
                    },
                    "Prefix": "string",
                    "StorageClass": "string",
                    "Tagging": {
                        "string": "string"
                    },
                    "UserMetadata": {
                        "string": "string"
                    }
                }
            },
            "RetrievalByteRange": "string",
            "SelectParameters": {
                "Expression": "string",
                "ExpressionType": "string",
                "InputSerialization": {
                    "csv": {
                        "Comments": "string",
                        "FieldDelimiter": "string",
                        "FileHeaderInfo": "string",
                        "QuoteCharacter": "string",
                        "QuoteEscapeCharacter": "string",
                        "RecordDelimiter": "string"
                    }
                },
                "OutputSerialization": {
                    "csv": {
                        "FieldDelimiter": "string",
                        "QuoteCharacter": "string",
                        "QuoteEscapeCharacter": "string",
                        "QuoteFields": "string",
                        "RecordDelimiter": "string"
                    }
                }
            },
            "SHA256TreeHash": "string",
            "SNSTopic": "string",
            "StatusCode": "string",
            "StatusMessage": "string",
            "Tier": "string",
            "VaultARN": "string"
        }
    ],
    "Marker": "string"
}
```

### 응답 헤더
<a name="api-jobs-get-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-jobs-get-responses-elements"></a>

JSON 응답 본문에는 다음과 같은 JSON 필드가 포함됩니다.

**JobList**  
작업 객체의 목록입니다. 각 작업 객체는 작업을 설명하는 메타데이터를 포함합니다.  
*유형*: [GlacierJobDescription](api-GlacierJobDescription.md) 객체 배열

**마커**  
결과에 페이지를 계속해서 매기는 지점을 나타내는 불투명한 문자열입니다. 새로운 ` List Jobs` 요청에서 `marker` 값을 사용하여 목록의 작업을 추가로 가져옵니다. 목록을 조회할 작업이 더 없을 경우 이 값은 `null`입니다.  
*유형*: 문자열

### 오류
<a name="api-jobs-get-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예제
<a name="api-jobs-get-examples"></a>

다음은 볼트 작업에 대한 정보를 반환하는 방법을 설명한 예제입니다. 첫 번째 예제에서는 작업 2개로 구성된 목록이, 그리고 두 번째 예제에서는 작업의 하위 집합이 반환됩니다.

### 예제: 모든 작업 반환
<a name="api-jobs-get-example-requestExample1"></a>

#### 요청 예시
<a name="api-jobs-get-example-request"></a>

다음은 볼트 작업을 반환하는 `GET` 요청 예제입니다.

```
1. GET /-/vaults/examplevault/jobs  HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

#### 응답의 예
<a name="api-jobs-get-example-response"></a>

다음은 볼트 인벤토리 가져오기에서 마커로 페이지 매김을 계속하는 아카이브 가져오기 작업과 인벤토리 가져오기 작업의 응답 예제입니다. 그 밖에도 응답을 보면 `Marker` 필드가 `null`로 설정되어 더 이상 목록을 조회할 작업이 없다는 것을 알 수 있습니다.

```
 1. HTTP/1.1 200 OK
 2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
 3. Date: Wed, 10 Feb 2017 12:00:00 GMT 
 4. Content-Type: application/json
 5. Content-Length: 1444
 6. 
 7. {
 8.   "JobList": [
 9.     {
10.       "Action": "ArchiveRetrieval",
11.       "ArchiveId": "BDfaUQul0dVzYwAMr8YSa_6_8abbhZq-i1oT69g8ByClfJyBgAGBkWl2QbF5os851P7Y7KdZDOHWJIn4rh1ZHaOYD3MgFhK_g0oDPesW34uHQoVGwoIqubf6BgUEfQm_wrU4Jlm3cA",
12.       "ArchiveSizeInBytes": 1048576,
13.       "ArchiveSHA256TreeHash": "25499381569ab2f85e1fd0eb93c5406a178ab77c5933056eb5d6e7d4adda609b",
14.       "Completed": true,
15.       "CompletionDate": "2012-05-01T00:00:09.304Z",
16.       "CreationDate": "2012-05-01T00:00:06.663Z",
17.       "InventorySizeInBytes": null,
18.       "JobDescription": null,
19.       "JobId": "hDe9t9DTHXqFw8sBGpLQQOmIM0-JrGtu1O_YFKLnzQ64548qJc667BRWTwBLZC76Ygy1jHYruqXkdcAhRsh0hYv4eVRU",
20.       "RetrievalByteRange": "0-1048575",
21.       "SHA256TreeHash": "25499381569ab2f85e1fd0eb93c5406a178ab77c5933056eb5d6e7d4adda609b",
22.       "SNSTopic": null,
23.       "StatusCode": "Succeeded",
24.       "StatusMessage": "Succeeded",
25.       "Tier": "Bulk",
26.       "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault"
27.     },
28.     {
29.       "Action": "InventoryRetrieval",
30.       "ArchiveId": null,
31.       "ArchiveSizeInBytes": null,
32.       "ArchiveSHA256TreeHash": null,
33.       "Completed": true,
34.       "CompletionDate": "2013-05-11T00:25:18.831Z",
35.       "CreationDate": "2013-05-11T00:25:14.981Z",
36.       "InventorySizeInBytes": 1988,
37.       "JobDescription": null,
38.       "JobId": "2cvVOnBL36btzyP3pobwIceiaJebM1bx9vZOOUtmNAr0KaVZ4WkWgVjiPldJ73VU7imlm0pnZriBVBebnqaAcirZq_C5",
39.       "RetrievalByteRange": null,
40.       "SHA256TreeHash": null,
41.       "SNSTopic": null,
42.       "StatusCode": "Succeeded",
43.       "StatusMessage": "Succeeded",
44.       "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault"
45.       "InventoryRetrievalParameters": {
46.           "StartDate": "2013-11-12T13:43:12Z",
47.           "EndDate": "2013-11-20T08:12:45Z", 
48.           "Limit": "120000",
49.           "Format": "JSON",
50.           "Marker": "vyS0t2jHQe5qbcDggIeD50chS1SXwYMrkVKo0KHiTUjEYxBGCqRLKaiySzdN7QXGVVV5XZpNVG67pCZ_uykQXFMLaxOSu2hO_-5C0AtWMDrfo7LgVOyfnveDRuOSecUo3Ueq7K0"
51.     }
52.   ],
53.   "Marker": null  
54. }
```

### 예제: 부분적 작업 목록 조회
<a name="api-jobs-get-example-request-example2"></a>

#### 요청 예시
<a name="api-jobs-get-example-request2"></a>

다음은 작업을 `GET` 파라미터로 지정하여 반환하는 `marker` 요청 예제입니다. 여기에서는 `limit` 파라미터가 `2`로 설정되어 최대 2개까지 작업을 반환하도록 지정하고 있습니다.

```
1. GET /-/vaults/examplevault/jobs?marker=HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID&limit=2  HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

#### 응답의 예
<a name="api-jobs-get-example-response2"></a>

다음은 작업 2개를 반환한 후 작업 목록에 페이지를 계속해서 매길 수 있도록 `Marker` 필드가 null이 아닌 값으로 설정되어 있는 응답 예제입니다.

```
 1. HTTP/1.1 200 OK
 2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
 3. Date: Wed, 10 Feb 2017 12:00:00 GMT 
 4. Content-Type: application/json
 5. Content-Length: 1744
 6. 
 7. {
 8.   "JobList": [
 9.     {
10.       "Action": "ArchiveRetrieval",
11.       "ArchiveId": "58-3KpZfcMPUznvMZNPaKyJx9wODCsWTnqcjtx2CjKZ6b-XgxEuA8yvZOYTPQfd7gWR4GRm2XR08gcnWbLV4VPV_kDWtZJKi0TFhKKVPzwrZnA4-FXuIBfViYUIVveeiBE51FO4bvg",
12.       "ArchiveSizeInBytes": 8388608,
13.       "ArchiveSHA256TreeHash": "106086b256ddf0fedf3d9e72f461d5983a2566247ebe7e1949246bc61359b4f4",
14.       "Completed": true,
15.       "CompletionDate": "2012-05-01T00:25:20.043Z",
16.       "CreationDate": "2012-05-01T00:25:16.344Z",
17.       "InventorySizeInBytes": null,
18.       "JobDescription": "aaabbbccc",
19.       "JobId": "s4MvaNHIh6mOa1f8iY4ioG2921SDPihXxh3Kv0FBX-JbNPctpRvE4c2_BifuhdGLqEhGBNGeB6Ub-JMunR9JoVa8y1hQ",
20.       "RetrievalByteRange": "0-8388607",
21.       "SHA256TreeHash": "106086b256ddf0fedf3d9e72f461d5983a2566247ebe7e1949246bc61359b4f4",
22.       "SNSTopic": null,
23.       "StatusCode": "Succeeded",
24.       "StatusMessage": "Succeeded",
25.       "Tier": "Bulk",
26.       "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault"
27.     },
28.     {
29.       "Action": "ArchiveRetrieval",
30.       "ArchiveId": "2NVGpf83U6qB9M2u-Ihh61yoFLRDEoh7YLZWKBn80A2i1xG8uieBwGjAr4RkzOHA0E07ZjtI267R03Z-6Hxd8pyGQkBdciCSH1-Lw63Kx9qKpZbPCdU0uTW_WAdwF6lR6w8iSyKdvw",
31.       "ArchiveSizeInBytes": 1048576,
32.       "ArchiveSHA256TreeHash": "3d2ae052b2978727e0c51c0a5e32961c6a56650d1f2e4ceccab6472a5ed4a0",
33.       "Completed": true,
34.       "CompletionDate": "2012-05-01T16:59:48.444Z",
35.       "CreationDate": "2012-05-01T16:59:42.977Z",
36.       "InventorySizeInBytes": null,
37.       "JobDescription": "aaabbbccc",
38.       "JobId": "CQ_tf6fOR4jrJCL61Mfk6VM03oY8lmnWK93KK4gLig1UPAbZiN3UV4G_5nq4AfmJHQ_dOMLOX5k8ItFv0wCPN0oaz5dG",
39.       "RetrievalByteRange": "0-1048575",
40.       "SHA256TreeHash": "3d2ae052b2978727e0c51c0a5e32961c6a56650d1f2e4ceccab6472a5ed4a0",
41.       "SNSTopic": null,
42.       "StatusCode": "Succeeded",
43.       "StatusMessage": "Succeeded",
44.       "Tier": "Standard",
45.       "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault"
46.     }
47.   ],
48.   "Marker": "CQ_tf6fOR4jrJCL61Mfk6VM03oY8lmnWK93KK4gLig1UPAbZiN3UV4G_5nq4AfmJHQ_dOMLOX5k8ItFv0wCPN0oaz5dG"
49. }
```

## 관련 섹션
<a name="related-sections-list-jobs"></a>

 
+  [작업 설명(GET JobID)](api-describe-job-get.md)
+ [Amazon Glacier의 ID 및 액세스 관리(IAM)](security-iam.md) 

# 작업에서 사용되는 데이터 형식
<a name="api-data-types"></a>

다음은 Amazon Glacier에서 작업에 사용되는 데이터 형식입니다.

**Topics**
+ [

# CSVInput
](api-CSVInput.md)
+ [

# CSVOutput
](api-CSVOutput.md)
+ [

# 암호화
](api-Encryption.md)
+ [

# GlacierJobDescription
](api-GlacierJobDescription.md)
+ [

# 권한 부여
](api-Grant.md)
+ [

# 피부여자
](api-Grantee.md)
+ [

# InputSerialization
](api-InputSerialization.md)
+ [

# InventoryRetrievalJobInput
](api-InventoryRetrievalJobInput.md)
+ [

# jobParameters
](api-jobParameters.md)
+ [

# OutputLocation
](api-OutputLocation.md)
+ [

# OutputSerialization
](api-OutputSerialization.md)
+ [

# S3Location
](api-S3Location.md)
+ [

# SelectParameters
](api-SelectParameters.md)

# CSVInput
<a name="api-CSVInput"></a>

쉼표로 분리된 값(CSV) 파일에 대한 정보를 포함합니다.

## 내용
<a name="api-CSVInput-contents"></a>

**설명**  
행의 시작에 존재할 경우, 해당 행을 무시해야 함을 나타내는 데 사용되는 단일 문자입니다.  
*유형*: 문자열  
*필수 항목 여부*: 아니요

**FieldDelimiter**  
한 레코드 내에서 개별 필드를 서로 분리하는 데 사용되는 단일 문자입니다. 문자는 32\$1126 범위의 `\n`, `\r`, 혹은 ASCII 문자여야 합니다. 기본값은 쉼표입니다 (`,`).  
*유형*: 문자열  
*기본값*: /  
*필수 항목 여부*: 아니요

**FileHeaderInfo**  
입력의 첫 번째 줄에 할 일을 설명하는 값입니다.  
*유형*: 문자열  
*유효한 값*: `Use` \$1 `Ignore` \$1 `None`   
  
*필수 항목 여부*: 아니요

**QuoteCharacter**  
필드 구분 기호가 값의 일부인 이스케이프 문자로 사용되는 단일 문자입니다.  
*유형*: 문자열  
*필수 항목 여부*: 아니요

**QuoteEscapeCharacter**  
이미 이스케이프된 값 내의 따옴표 문자를 이스케이프하는 데 사용되는 단일 문자입니다.  
*유형*: 문자열  
*필수 항목 여부*: 아니요

**RecordDelimiter**  
개별 레코드를 서로 분리하는 데 사용되는 단일 문자입니다.  
*유형*: 문자열  
*필수 항목 여부*: 아니요

## 추가 정보
<a name="more-info-api-CSVInput"></a>

 
+ [작업 시작(POST jobs)](api-initiate-job-post.md)

# CSVOutput
<a name="api-CSVOutput"></a>

작업 결과가 저장되는 쉼표로 분리된 값(CSV) 형식에 관한 정보를 포함합니다.

## 내용
<a name="api-CSVOutput-contents"></a>

**FieldDelimiter**  
한 레코드 내에서 개별 필드를 서로 분리하는 데 사용되는 단일 문자입니다.  
*유형*: 문자열  
*필수 항목 여부*: 아니요

**QuoteCharacter**  
필드 구분 기호가 값의 일부인 이스케이프 문자로 사용되는 단일 문자입니다.  
*유형*: 문자열  
*필수 항목 여부*: 아니요

**QuoteEscapeCharacter**  
이미 이스케이프된 값 내의 따옴표 문자를 이스케이프하는 데 사용되는 단일 문자입니다.  
*유형*: 문자열  
*필수 항목 여부*: 아니요

**QuoteFields**  
모든 출력 필드가 따옴표 안에 포함되어야 하는지를 나타내는 값입니다.  
*유효한 값*: `ALWAYS` \$1 `ASNEEDED`  
*유형*: 문자열  
*필수 항목 여부*: 아니요

**RecordDelimiter**  
개별 레코드를 서로 분리하는 데 사용되는 단일 문자입니다.  
*유형*: 문자열  
*필수 항목 여부*: 아니요

## 추가 정보
<a name="more-info-api-CSVOutput"></a>

 
+ [작업 시작(POST jobs)](api-initiate-job-post.md)

# 암호화
<a name="api-Encryption"></a>

작업 결과를 Amazon S3에 저장하는 데 사용되는 암호화 관련 정보를 포함합니다.

## 내용
<a name="api-Encryption-contents"></a>

**암호화**  
Amazon S3에서 작업 결과를 저장할 때 사용되는 서버 측 암호화 알고리즘입니다. 기본값은 암호화 없음입니다.  
*유형*: 문자열  
*유효한 값*: `aws:kms` \$1 `AES256`  
*필수 항목 여부*: 아니요

****KMSContext  
선택 사항입니다. 암호화 유형이 `aws:kms,`인 경우 이 값을 사용하여 작업 결과의 암호화 컨텍스트를 지정할 수 있습니다.  
*유형*: 문자열  
*필수 항목 여부*: 아니요

****KMSKeyId  
개체 암호화에 사용할 AWS Key Management Service(AWS KMS) 키 ID입니다.  
*유형*: 문자열  
*필수 항목 여부*: 아니요

## 추가 정보
<a name="more-info-api-Encryption"></a>

 
+ [작업 시작(POST jobs)](api-initiate-job-post.md)

# GlacierJobDescription
<a name="api-GlacierJobDescription"></a>

Amazon Glacier(Amazon Glacier) 작업에 대한 설명을 포함합니다.

## 내용
<a name="api-GlacierJobDescription-contents"></a>

**작업**  
작업 유형입니다. `ArchiveRetrieval`, `InventoryRetrieval` 또는 `Select`입니다.  
*유형*: 문자열

**ArchiveId**  
선택 또는 아카이브 가져오기 작업을 위해 요청된 아카이브 ID입니다. 그렇지 않으면 이 필드는 `null` 값을 갖습니다.  
*유형*: 문자열

**ArchiveSHA256TreeHash**  
아카이브 가져오기에서 전체 아카이브의 SHA256 트리-해시입니다. 인벤토리 가져오기 작업일 때는 이 필드가 `null` 값을 갖습니다.  
*유형*: 문자열

**ArchiveSizeInBytes**  
`ArchiveRetrieval` 작업일 경우 이 값은 다운로드를 요청하는 아카이브의 크기(바이트)입니다. `InventoryRetrieval` 작업일 경우 이 값은 `null`입니다.  
*유형*: 숫자

**Completed**  
작업이 완료된 경우에는 `true`이며, 그 밖에는 `false`입니다.  
*유형*: 부울

**CompletionDate**  
작업이 완료된 날짜입니다.  
작업 요청이 완료된 협정 세계시(UTC) 시간입니다. 작업이 진행 중일 때는 null 값을 갖습니다.  
*유형*: ISO 8601 날짜 형식의 문자열 표현입니다. 예: `2013-03-20T17:03:43.221Z`

**CreationDate**  
작업이 시작된 협정 세계시(UTC) 날짜입니다.  
*유형*: ISO 8601 날짜 형식의 문자열 표현입니다. 예: `2013-03-20T17:03:43.221Z`

**InventoryRetrievalParameters**  
범위가 지정된 인벤토리 가져오기에 사용되는 입력 파라미터입니다.  
*유형*: [InventoryRetrievalJobInput](api-InventoryRetrievalJobInput.md) 객체

**InventorySizeInBytes**  
`InventoryRetrieval` 작업일 경우 이 값은 다운로드를 요청하는 인벤토리의 크기(바이트)입니다. `ArchiveRetrieval` 또는 `Select` 작업의 경우, `null` 값을 갖습니다.  
*유형*: 숫자

**JobDescription**  
작업을 시작할 때 입력한 작업 설명입니다.  
*유형*: 문자열

**JobId**  
Amazon Glacier에서 작업을 식별하는 ID입니다.  
*유형*: 문자열

**JobOutputPath**  
작업 출력 위치가 포함되어 있습니다.  
*유형*: 문자열

**OutputLocation**  
 선택 작업 결과와 오류가 저장되는 위치에 관한 정보가 포함된 객체입니다.  
*유형*: [OutputLocation](api-OutputLocation.md) 객체

**RetrievalByteRange**  
아카이브 가져오기 작업에 대해 가져온 바이트 범위이며, 형식은 "*StartByteValue*-*EndByteValue*"를 따릅니다. 아카이브 가져오기에서 범위를 지정하지 않으면 전체 아카이브를 가져옵니다. 이때 *StartByteValue*의 값은 0이고, *EndByteValue*의 값은 아카이브 크기에서 1을 뺀 값입니다. 인벤토리 가져오기 작업일 때는 이 필드가 `null` 값을 갖습니다.  
*유형*: 문자열

**SelectParameters**  
선택에 사용되는 파라미터에 관한 정보를 포함하는 객체입니다.  
*유형*: [SelectParameters](api-SelectParameters.md) 객체

**SHA256TreeHash**  
요청하는 아카이브 범위에 대한 SHA256 트리-해시 값입니다. 아카이브에 대한 [작업 시작(POST jobs)](api-initiate-job-post.md) 요청에서 트리-해시 정렬 범위를 지정하였다면 이 필드가 값을 반환합니다. 아카이브 범위 가져오기에서 트리-해시 정렬에 대한 자세한 내용은 [데이터 다운로드 시 체크섬 수신](checksum-calculations-range.md) 섹션을 참조하세요.  
전체 아카이브를 가져오는 특정 경우에는 이 값이 `ArchiveSHA256TreeHash` 값과 동일합니다.  
이 필드는 다음 상황에서 `null` 값을 갖습니다.  
+ 아카이브 가져오기 작업에서 트리-해시로 정렬되지 않은 범위를 지정할 때
+ 아카이브 작업에서 전체 아카이브와 같은 범위를 지정하고, 작업 상태가 `InProgress`일 때 
+ 인벤토리 작업일 때
+ 작업을 선택합니다.
*유형*: 문자열

**SNSTopic**  
작업 시작([작업 시작(POST jobs)](api-initiate-job-post.md)) 시 알림을 구성한 경우 작업 완료 또는 중단에 대한 알림 메시지가 전송되는 Amazon SNS 토픽의 Amazon 리소스 이름(ARN)입니다.  
*유형*: 문자열

**StatusCode**  
작업 상태를 나타내는 코드입니다.  
*유효한 값*: `InProgress` \$1 `Succeeded` \$1 `Failed`  
*유형*: 문자열

**StatusMessage**  
작업 상태 메시지입니다.  
*유형*: 문자열

**Tier**  
선택 또는 아카이브 가져오기에 사용할 데이터 액세스 계층입니다.  
*유효한 값*: `Expedited` \$1 `Standard` \$1 `Bulk`  
*유형*: 문자열

**VaultARN**  
작업이 하위 리소스인 볼트의 ARN입니다.  
*유형*: 문자열

## 추가 정보
<a name="more-info-api-GlacierJobDescription"></a>
+ [작업 시작(POST jobs)](api-initiate-job-post.md)

# 권한 부여
<a name="api-Grant"></a>

권한 부여에 대한 정보가 들어 있습니다.

## 내용
<a name="api-Grant-contents"></a>

****피부여자  
피부여자입니다.  
**유형: [피부여자](api-Grantee.md) 객체  
*필수 항목 여부*: 아니요

**권한**  
피부여자에게 부여된 권한입니다.  
*유형*: 문자열  
**유효한 값: `FULL_CONTROL` \$1 `WRITE` \$1 `WRITE_ACP` \$1 `READ` \$1 `READ_ACP`  
*필수 항목 여부*: 아니요

## 추가 정보
<a name="more-info-api-Grant"></a>

 
+ [작업 시작(POST jobs)](api-initiate-job-post.md)

# 피부여자
<a name="api-Grantee"></a>

피부여자에 대한 정보가 들어 있습니다.

## 내용
<a name="api-Grantee-contents"></a>

****DisplayName  
피부여자의 표시 이름입니다.  
*유형*: 문자열  
*필수 항목 여부*: 아니요

****EmailAddress  
피부여자의 이메일 주소입니다.  
*유형*: 문자열  
*필수 항목 여부*: 아니요

**ID**:   
피부여자의 정식 사용자 ID입니다.  
*유형*: 문자열  
*필수 항목 여부*: 아니요

**유형**  
피부여자의 유형입니다.  
*유형*: 문자열  
*유효한 값*: `AmazonCustomerByEmail` \$1 `CanonicalUser` \$1 `Group`   
*필수 항목 여부*: 아니요

****URI  
피부여자 그룹의 URI입니다.  
*유형*: 문자열  
*필수 항목 여부*: 아니요

## 추가 정보
<a name="more-info-api-Grantee"></a>

 
+ [작업 시작(POST jobs)](api-initiate-job-post.md)

# InputSerialization
<a name="api-InputSerialization"></a>

아카이브가 직렬화되는 방법을 설명합니다.

## 내용
<a name="api-InputSerialization-contents"></a>

**CSV**  
CSV로 인코딩된 객체의 직렬화를 설명하는 객체입니다.  
**유형: [CSVInput](api-CSVInput.md) 객체  
*필수 항목 여부*: 아니요

## 추가 정보
<a name="more-info-api-InputSerialization"></a>

 
+ [작업 시작(POST jobs)](api-initiate-job-post.md)

# InventoryRetrievalJobInput
<a name="api-InventoryRetrievalJobInput"></a>

 범위가 지정된 인벤토리 가져오기 작업을 지정하기 위한 옵션을 제공합니다.

## 내용
<a name="api-InventoryRetrievalJobInput-contents"></a>

**EndDate**  
볼트 인벤토리 가져오기에서 지정하는 날짜(UTC) 범위의 끝이며, 이 날짜 이전에 생성된 아카이브도 포함됩니다.  
**유효한 값: ISO 8601 날짜 형식(`YYYY-MM-DDThh:mm:ssTZD`)의 초 단위 문자열 표현입니다. 예: `2013-03-20T17:03:43Z`  
**유형: 문자열입니다. ISO 8601 날짜 형식(`YYYY-MM-DDThh:mm:ssTZD`)의 초 단위 문자열 표현입니다. 예: `2013-03-20T17:03:43Z`  
*필수 항목 여부*: 아니요

**형식**.  
 볼트 인벤토리 목록의 출력 형식이며, 볼트 인벤토리 가져오기 작업을 시작할 때 [작업 시작(POST jobs)](api-initiate-job-post.md) 요청에서 설정합니다.  
*유효한 값*: `CSV` \$1 `JSON`   
*필수 항목 여부*: 아니요  
*유형*: 문자열

**Limit**  
 볼트 인벤토리 가져오기 요청을 할 때마다 반환될 수 있는 인벤토리 항목의 최대 수를 지정합니다.  
*유효 값*: 1보다 크거나 같은 정수 값  
*유형*: 문자열  
*필수 항목 여부*: 아니요

**마커**  
 볼트 인벤토리 가져오기 결과에 페이지를 계속해서 매기는 지점을 나타내는 불투명한 문자열입니다. 인벤토리 항목을 추가로 가져오려면 새로운 `Initiate Job` 요청에서 이 마커를 사용하면 됩니다. 인벤토리 항목이 더 없을 경우 이 값은 null 입니다.  
*유형*: 문자열  
*필수 항목 여부*: 아니요

**StartDate**  
볼트 인벤토리 가져오기에서 지정하는 날짜(UTC) 범위의 시작이며, 이 날짜 당일 또는 이후에 생성된 아카이브도 포함됩니다.  
**유효한 값: ISO 8601 날짜 형식(`YYYY-MM-DDThh:mm:ssTZD`)의 초 단위 문자열 표현입니다. 예: `2013-03-20T17:03:43Z`   
**유형: 문자열입니다. ISO 8601 날짜 형식(`YYYY-MM-DDThh:mm:ssTZD`)의 초 단위 문자열 표현입니다. 예: `2013-03-20T17:03:43Z`  
*필수 항목 여부*: 아니요

## 추가 정보
<a name="more-info-api-InventoryRetrievalJobInput"></a>
+ [작업 시작(POST jobs)](api-initiate-job-post.md)

# jobParameters
<a name="api-jobParameters"></a>

작업을 정의하기 위한 옵션을 제공합니다.

## 내용
<a name="api-jobParameters-contents"></a>

**ArchiveId**  
원하는 아카이브의 ID입니다. `Type` 필드가 `select` 또는 `archive-retrieval`로 설정된 경우에 이 필드는 필수입니다. 인벤토리 가져오기 작업 요청에 대해 이 필드를 지정하면 오류가 발생합니다.  
*유효한 값*: Amazon Glacier(Amazon Glacier)에 대한 이전 요청에서 얻은 유효한 아카이브 ID이어야 합니다.  
*유형*: 문자열  
*필수 항목 여부*: `Type`이 `select` 또는 `archive-retrieval`로 설정된 경우, 예

**설명**  
작업 설명(옵션)입니다.  
*유효한 값*: 설명은 1,024바이트보다 작거나 같아야 합니다. 허용되는 문자는 제어 코드를 제외한 7비트 ASCII로 그 중에서도 특히 ASCII 값 32\$1126 십진수 또는 0x20\$10x7E 16진수입니다.  
*유형*: 문자열  
*필수 항목 여부*: 아니요

**형식**.  
(선택 사항) 볼트 인벤토리 가져오기 작업을 시작할 때 출력 형식입니다. 인벤토리 작업을 시작하면서 `Format` 필드를 지정하지 않으면 JSON이 기본 형식으로 사용됩니다.  
*유효한 값*: `CSV` \$1 `JSON`   
*유형*: 문자열  
*필수 항목 여부*: 아니요

**InventoryRetrievalParameters**  
범위가 지정된 인벤토리 가져오기에 사용되는 입력 파라미터입니다.  
*유형*: [InventoryRetrievalJobInput](api-InventoryRetrievalJobInput.md) 객체  
*필수 항목 여부*: 아니요

**OutputLocation**  
 선택 작업 결과가 저장되는 위치에 관한 정보가 포함된 객체입니다.  
*유형*: [OutputLocation](api-OutputLocation.md) 객체  
*필수 항목 여부*: `select` 작업의 경우, 예.

**RetrievalByteRange**  
`archive-retrieval`에 대해 검색할 바이트 범위는 ‘*StartByteValue*\$1*EndByteValue*’ 형식이 되어야 합니다. 이 필드를 지정하지 않으면 전체 아카이브를 가져옵니다. 이 필드를 지정할 경우에는 바이트 범위가 메가바이트(1024\$11024)로 정렬되어야 합니다. 메가바이트 정렬은 *StartByteValue*가 1MB로 나누어지고, *EndByteValue* \$1 1이 1MB로 나누어지거나 혹은 아카이브 끝이 아카이브 바이트 크기 값에서 1을 뺀 값으로 지정되어야 한다는 것을 의미합니다. **RetrievalByteRange**가 메가바이트로 정렬되지 않으면 `400` 응답이 반환됩니다.  
`inventory-retrieval` 또는 `select` 작업 요청에 대해 이 필드를 지정하면 오류가 발생합니다.  
*유형*: 문자열  
*필수 항목 여부*: 아니요

**SelectParameters**  
선택에 사용되는 파라미터에 관한 정보를 포함하는 객체입니다.  
**유형: [SelectParameters](api-SelectParameters.md) 객체  
*필수 항목 여부*: 아니요

**SNSTopic**  
작업이 완료되고 출력을 다운로드할 수 있을 때 Amazon Glacier가 알림 메시지를 전송하는 Amazon SNS 토픽의 Amazon 리소스 이름(ARN)입니다. 지정된 토픽은 알림 메시지를 구독자에게 게시합니다.  
이때 SNS 토픽은 반드시 존재해야 합니다. 존재하지 않는 경우, Amazon Glacier는 자동으로 토픽을 생성하지 않습니다. 또한 SNS 토픽은 작업을 생성한 계정에서 메시지를 토픽에 게시할 수 있는 정책이 필요합니다. SNS 토픽 이름에 대한 자세한 정보는 *Amazon Simple Notification Service*의 **API 참조에서 [CreateTopic](https://docs.aws.amazon.com/sns/latest/api/API_CreateTopic.html)을 참조하세요.  
*유형*: 문자열  
*필수 항목 여부*: 아니요

**계층**  
선택 또는 아카이브 가져오기 작업에 사용할 계층입니다. 기본값으로 `Standard`가 사용됩니다.  
*유효한 값*: `Expedited` \$1 `Standard` \$1 `Bulk`  
*유형*: 문자열  
*필수 항목 여부*: 아니요 

**유형**  
작업 유형입니다. 아카이브에서 선택 쿼리를 수행하거나 아카이브를 가져오거나 볼트의 인벤토리를 가져오는 작업을 시작할 수 있습니다.  
*유효한 값*: `select` \$1 `archive-retrieval` \$1 `inventory-retrieval`   
*유형*: 문자열  
*필수 항목 여부*: 예

## 추가 정보
<a name="more-info-api-jobParameters"></a>
+ [작업 시작(POST jobs)](api-initiate-job-post.md)

# OutputLocation
<a name="api-OutputLocation"></a>

 작업 결과와 오류가 저장되는 위치에 관한 정보를 포함합니다.

## 내용
<a name="api-OutputLocation-contents"></a>

**S3**  
복원 요청 결과를 수신할 Amazon S3 위치를 설명하는 객체입니다.  
*유형*: [S3Location](api-S3Location.md)   
*필수 항목 여부*: 예

## 추가 정보
<a name="more-info-api-OutputLocation"></a>
+ [작업 시작(POST jobs)](api-initiate-job-post.md)

# OutputSerialization
<a name="api-OutputSerialization"></a>

출력이 직렬화되는 방법을 설명합니다.

## 내용
<a name="api-OutputSerialization-contents"></a>

**CSV**  
쉼표로 분리된 값(CSV)으로 인코딩된 쿼리 결과의 직렬화를 설명하는 객체입니다.  
**유형: [CSVOutput](api-CSVOutput.md) 객체  
*필수 항목 여부*: 아니요

## 추가 정보
<a name="more-info-api-OutputSerialization"></a>

 
+ [작업 시작(POST jobs)](api-initiate-job-post.md)

# S3Location
<a name="api-S3Location"></a>

 작업 결과가 저장되는 Amazon S3 내 위치에 관한 정보를 포함합니다.

## 내용
<a name="api-S3Location-contents"></a>

**AccessControlList**  
저장된 결과에 대한 액세스를 제어하는 권한의 목록입니다.  
*유형*: [권한 부여](api-Grant.md) 객체 배열  
*필수 항목 여부*: 아니요

**BucketName**  
작업 결과가 저장되는 Amazon S3 버킷의 이름입니다. 버킷은 입력 아카이브 객체를 포함하는 볼트와 동일한 AWS 리전에 있어야 합니다.  
*유형*: 문자열  
*필수 항목 여부*: 예

**CannedACL**  
작업 결과에 적용되는 미리 준비된 액세스 제어 목록(ACL)입니다.  
*유형*: 문자열  
*유효한 값*: `private` \$1 `public-read` \$1 `public-read-write` \$1 `aws-exec-read` \$1 `authenticated-read` \$1 `bucket-owner-read` \$1 `bucket-owner-full-control`  
*필수 항목 여부*: 아니요

**암호화**  
작업 결과를 Amazon S3에 저장하는 데 사용되는 암호화에 관한 정보를 포함하는 객체입니다.  
**유형: [암호화](api-Encryption.md) 객체  
*필수 항목 여부*: 아니요

**접두사**   
이 요청의 결과 앞에 추가되는 접두사입니다. 접두사의 최대 길이는 512바이트입니다.  
*유형*: 문자열  
*필수 항목 여부*: 예

**StorageClass**  
작업 결과 저장에 사용하는 스토리지 클래스입니다.  
*유형*: 문자열  
*유효한 값*: `STANDARD` \$1 `REDUCED_REDUNDANCY` \$1 `STANDARD_IA`  
*필수 항목 여부*: 아니요

**태그 지정**  
작업 결과에 적용되는 태그 집합입니다.  
*유형*: 문자열 간 맵  
*필수 항목 여부*: 아니요

**UserMetadata**  
작업 결과와 함께 Amazon S3에 저장할 메타데이터 맵입니다.  
*유형*: 문자열 간 맵  
*필수 항목 여부*: 아니요

## 추가 정보
<a name="more-info-api-S3Location"></a>

 
+ [작업 시작(POST jobs)](api-initiate-job-post.md)

# SelectParameters
<a name="api-SelectParameters"></a>

선택에 사용되는 파라미터에 관한 정보를 포함합니다.

## 내용
<a name="api-SelectParameters-contents"></a>

**표현식**  
객체 선택에 사용되는 표현식입니다. 표현식은 128,000자 할당량을 초과하면 안 됩니다.  
*유형*: 문자열  
*필수 항목 여부*: 예

**ExpressionType**  
제공된 표현식의 유형입니다(예: `SQL`).  
*유효 값*: `SQL`  
*유형*: 문자열  
*필수 항목 여부*: 예

**InputSerialization**  
선택에서 객체의 직렬화된 형식을 설명합니다.  
**유형: [InputSerialization](api-InputSerialization.md) 객체  
*필수 항목 여부*: 아니요

**OutputSerialization**  
선택 작업의 결과가 직렬화되는 방법을 설명합니다.  
*필수 항목 여부*: 아니요  
**유형: [OutputSerialization](api-OutputSerialization.md) 객체

## 추가 정보
<a name="more-info-api-SelectParameters"></a>

 
+ [작업 시작(POST jobs)](api-initiate-job-post.md)

# 데이터 가져오기 작업
<a name="data-retrieval-policy-operations"></a>

다음은 Amazon Glacier에서 사용할 수 있는 데이터 가져오기 관련 작업입니다.

**Topics**
+ [

# 데이터 가져오기 정책 가져오기(GET policy)
](api-GetDataRetrievalPolicy.md)
+ [

# 프로비저닝된 용량 나열(GET provisioned-capacity)
](api-ListProvisionedCapacity.md)
+ [

# 프로비저닝된 용량 구매(POST provisioned-capacity)
](api-PurchaseProvisionedCapacity.md)
+ [

# 데이터 가져오기 정책 설정(PUT policy)
](api-SetDataRetrievalPolicy.md)

# 데이터 가져오기 정책 가져오기(GET policy)
<a name="api-GetDataRetrievalPolicy"></a>

## 설명
<a name="api-GetDataRetrievalPolicy-description"></a>

이 작업은 `GET` 요청 시 지정한 AWS 계정 및 AWS 리전의 현재 데이터 검색 정책을 반환합니다. 데이터 가져오기 정책에 대한 자세한 내용은 [Amazon Glacier 데이터 검색 정책](data-retrieval-policy.md) 섹션을 참조하세요.

## 요청
<a name="api-GetDataRetrievalPolicy-requests"></a>

현재 데이터 가져오기 정책을 반환하려면 다음 구문 예제와 같이 HTTP `GET` 요청을 데이터 가져오기 정책 URI로 전송합니다.

### 구문
<a name="api-GetDataRetrievalPolicy-requests-syntax"></a>

```
1. GET /AccountId/policies/data-retrieval HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 AWS 계정 ID입니다. 이 값은 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID와 일치해야 합니다. AWS 계정 ID 또는 선택적으로 하나의 '`-`'(하이픈)을 지정할 수 있습니다. 이 경우에 Amazon Glacier는 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 지정하는 경우 ID에 하이픈('-')을 포함하지 않습니다.

### 요청 파라미터
<a name="api-GetDataRetrievalPolicy-requests-parameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-GetDataRetrievalPolicy-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-GetDataRetrievalPolicy-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-GetDataRetrievalPolicy-responses"></a>

### 구문
<a name="api-GetDataRetrievalPolicy-responses-syntax"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: x-amzn-RequestId
Date: Date
Content-Type: application/json
Content-Length: length
{
  "Policy":
    {
      "Rules":[
         {
            "BytesPerHour": Number,
            "Strategy": String	 
         }
       ]
    }
}
```

### 응답 헤더
<a name="api-GetDataRetrievalPolicy-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-GetDataRetrievalPolicy-responses-elements"></a>

JSON 응답 본문에는 다음과 같은 JSON 필드가 포함됩니다.

 

**BytesPerHour**  
한 시간이 가져올 수 있는 최대 바이트 수입니다.  
이 필드는 **Strategy** 필드 값이 `BytesPerHour`인 경우에 한해 나타납니다.  
*형식*: 숫자

**규칙**  
정책 규칙입니다. 이 규칙이 목록 형식이기는 하지만 현재는 Strategy 필드와 옵션으로 BytesPerHour 필드로 구성된 규칙 하나만 있습니다.  
*유형*: 배열

**Strategy**  
데이터 가져오기 정책의 유형입니다.  
*유형*: 문자열  
유효한 값: `BytesPerHour`\$1`FreeTier`\$1`None`. `BytesPerHour`은 콘솔에서 **최대 가져오기 속도**를 선택하는 것과 동일합니다. `FreeTier`는 콘솔에서 **프리 티어만**을 선택하는 것과 동일합니다. `None`은 콘솔에서 **가져오기 정책 없음**을 선택하는 것과 동일합니다. 콘솔에서 데이터 가져오기 정책을 선택하는 것에 대한 자세한 내용은 [Amazon Glacier 데이터 검색 정책](data-retrieval-policy.md) 섹션을 참조하세요.

### 오류
<a name="api-GetDataRetrievalPolicy-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예시
<a name="api-GetDataRetrievalPolicy-examples"></a>

다음은 데이터 가져오기 정책을 가져오는 방법을 설명한 예제입니다.

### 요청 예시
<a name="api-GetDataRetrievalPolicy-example-request"></a>

이 예제에서는 `GET` 요청이 정책의 위치 URI로 전송됩니다.

```
1. GET /-/policies/data-retrieval HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

### 응답의 예
<a name="api-GetDataRetrievalPolicy-example-response"></a>

응답이 성공적으로 반환되면 데이터 가져오기 정책이 응답 본문에 JSON 형식으로 표시됩니다.

```
 1. HTTP/1.1 200 OK
 2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
 3. Date: Wed, 10 Feb 2017 12:00:00 GMT
 4. Content-Type: application/json
 5. Content-Length: 85
 6.  
 7. {
 8.   "Policy":
 9.     {
10.       "Rules":[
11.          {
12.            "BytesPerHour":10737418240,
13.            "Strategy":"BytesPerHour"
14.           }
15.        ]
16.     }
17. }
```

## 관련 섹션
<a name="related-sections-GetDataRetrievalPolicy"></a>

 
+ [데이터 가져오기 정책 설정(PUT policy)](api-SetDataRetrievalPolicy.md)

 
+ [작업 시작(POST jobs)](api-initiate-job-post.md)

# 프로비저닝된 용량 나열(GET provisioned-capacity)
<a name="api-ListProvisionedCapacity"></a>

이 작업은 지정된 AWS 계정를 위해 프로비저닝된 용량 단위를 나열합니다. 프로비저닝된 용량에 대한 자세한 내용은 [아카이브 검색 옵션](downloading-an-archive-two-steps.md#api-downloading-an-archive-two-steps-retrieval-options) 섹션을 참조하세요.

프로비저닝된 용량 단위는 구매한 날짜 및 시간, 즉 시작 날짜로부터 1개월 지속됩니다. 단위는 시작 날짜로부터 정확하게 1개월(초 단위) 후인 만료 날짜에 만료됩니다.

시작 날짜가 31일인 경우에는 만료 날짜는 다음 달 말일이 됩니다. 예를 들어 시작 날짜가 8월 31일이라면 만료 날짜는 9월 30일입니다. 시작 날짜가 1월 31일이라면 만료 날짜는 2월 28일입니다. [응답의 예](#api-ListProvisionedCapacity-example1-response)에서 이러한 기능을 볼 수 있습니다.

## Request Syntax
<a name="api-ListProvisionedCapacity-RequestSyntax"></a>

계정에 프로비저닝된 가져오기 용량을 나열하려면 다음 구문 예제와 같이 HTTP GET 요청을 프로비저닝된 용량 URI에게 전송합니다.

```
1. GET /AccountId/provisioned-capacity HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 AWS 계정 ID입니다. 이 값은 요청에 서명하는 데 사용되는 자격 증명과 연결된 AWS 계정 ID와 일치해야 합니다. AWS 계정 ID를 지정하거나 선택적으로 단일 '`-`'(하이픈)를 지정할 수 있습니다.이 경우 Amazon Glacier는 요청에 서명하는 데 사용되는 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 지정하는 경우 ID에 하이픈('-')을 포함하지 않습니다.

## 요청 파라미터
<a name="api-ListProvisionedCapacity-RequestParameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

## 요청 헤더
<a name="api-ListProvisionedCapacity-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

## 요청 본문
<a name="api-ListProvisionedCapacity-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-ListProvisionedCapacity-responses"></a>

작업이 성공하면 서비스가 HTTP `200 OK` 응답을 다시 전송합니다.

### Response Syntax
<a name="api-ListProvisionedCapacity-ResponseSyntax"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: x-amzn-RequestId
Date: Date
Content-Type: application/json
Content-Length: Length
{
   "ProvisionedCapacityList": 
      {
         "CapacityId" : "string",
         "StartDate" : "string"
         "ExpirationDate" : "string"
      }
}
```

### 응답 헤더
<a name="api-ListProvisionedCapacity-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-ListProvisionedCapacity-body"></a>

JSON 응답 본문에는 다음과 같은 JSON 필드가 포함됩니다.

**CapacityId**  <a name="Glacier-ListProvisionedCapacity-response"></a>
프로비저닝된 용량 단위를 식별하는 ID입니다.  
 *유형*: 문자열.

**StartDate**  
프로비저닝된 용량 단위를 구매한 날짜(UTC)입니다.  
*유형*: 문자열. ISO 8601 날짜 형식의 문자열 표현입니다. 예: `2013-03-20T17:03:43.221Z`

**ExpirationDate**  
프로비저닝된 용량 단위가 만료되는 날짜(UTC)입니다.  
*유형*: 문자열. ISO 8601 날짜 형식의 문자열 표현입니다. 예: `2013-03-20T17:03:43.221Z`

### 오류
<a name="api-ListProvisionedCapacity-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예제
<a name="api-ListProvisionedCapacity-examples"></a>

다음은 계정에 프로비저닝된 용량 단위를 나열하는 예제입니다.

### 요청 예시
<a name="api-ListProvisionedCapacity-example1-request"></a>

이 예에서는 GET 요청을 전송하여 지정된 계정에 프로비저닝된 용량 단위 목록을 가져옵니다.

```
1. GET /123456789012/priority-capacity HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. x-amz-glacier-version: 2012-06-01
5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
```

### 응답의 예
<a name="api-ListProvisionedCapacity-example1-response"></a>

요청이 성공하면 Amazon Glacier(Amazon Glacier)가 다음 예제와 같이 계정에 프로비저닝된 용량 단위 목록과 함께 `HTTP 200 OK`를 반환합니다.

 처음에 나열된 프로비저닝된 용량 단위는 시작 날짜가 2017년 1월 31일이고 만료 날짜가 2017년 2월 28일인 단위의 예입니다. 앞서 설명한 대로, 시작 날짜가 31일인 경우에는 만료 날짜는 다음 달 말일이 됩니다.

```
 1. HTTP/1.1 200 OK
 2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
 3. Date: Wed, 10 Feb 2017 12:02:00 GMT
 4. Content-Type: application/json
 5. Content-Length: length
 6. 
 7. {
 8.    "ProvisionedCapacityList",
 9.       {
10.          "CapacityId": "zSaq7NzHFQDANTfQkDen4V7z",
11.          "StartDate": "2017-01-31T14:26:33.031Z",
12.          "ExpirationDate": "2017-02-28T14:26:33.000Z",
13.       },
14.       {
15.          "CapacityId": "yXaq7NzHFQNADTfQkDen4V7z",
16.          "StartDate": "2016-12-13T20:11:51.095Z"",
17.          "ExpirationDate": "2017-01-13T20:11:51.000Z" ",
18.       },
19.       ...
20. }
```

## 관련 섹션
<a name="api-ListProvisionedCapacity-related-sections"></a>

 
+ [프로비저닝된 용량 구매(POST provisioned-capacity)](api-PurchaseProvisionedCapacity.md)

# 프로비저닝된 용량 구매(POST provisioned-capacity)
<a name="api-PurchaseProvisionedCapacity"></a>

이 작업에서는 AWS 계정에 프로비저닝된 용량 단위를 구매합니다.

프로비저닝된 용량 단위는 구매한 날짜 및 시간, 즉 시작 날짜로부터 1개월 지속됩니다. 단위는 시작 날짜로부터 정확하게 1개월(초 단위) 후인 만료 날짜에 만료됩니다.

시작 날짜가 31일인 경우에는 만료 날짜는 다음 달 말일이 됩니다. 예를 들어 시작 날짜가 8월 31일이라면 만료 날짜는 9월 30일입니다. 시작 날짜가 1월 31일이라면 만료 날짜는 2월 28일입니다.

프로비저닝된 용량을 통해 필요할 때 신속 검색에 대한 검색 용량이 보장됩니다. 각 용량 단위로 5분마다 신속 검색 3회를 수행할 수 있고, 최대 150MB/s의 검색 처리량이 제공됩니다. 프로비저닝된 용량에 대한 자세한 내용은 [아카이브 검색 옵션](downloading-an-archive-two-steps.md#api-downloading-an-archive-two-steps-retrieval-options) 섹션을 참조하세요.

**참고**  
프로비저닝된 용량 단위는 1개당 2개로 제한됩니다 AWS 계정.

## Requests
<a name="api-PurchaseProvisionedCapacity-requests"></a>

에 대해 프로비저닝된 용량 단위를 구매하려면 프로비저닝된 용량 URI로 HTTP `POST` 요청을 AWS 계정 전송합니다.

### 구문
<a name="api-PurchaseProvisionedCapacity-requests-syntax"></a>

```
1. POST /AccountId/provisioned-capacity HTTP/1.1
2. Host: glacier.Region.amazonaws.com
3. Date: Date
4. Authorization: SignatureValue
5. Content-Length: Length
6. x-amz-glacier-version: 2012-06-01
```

 

**참고**  
`AccountId` 값은 AWS 계정 ID입니다. 이 값은 요청에 서명하는 데 사용되는 자격 증명과 연결된 AWS 계정 ID와 일치해야 합니다. AWS 계정 ID를 지정하거나 선택적으로 단일 '`-`'(하이픈)를 지정할 수 있습니다.이 경우 Amazon Glacier는 요청에 서명하는 데 사용되는 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 지정하는 경우 ID에 하이픈('-')을 포함하지 않습니다.

### 요청 파라미터
<a name="api-PurchaseProvisionedCapacity-requestParameters"></a>

#### 요청 헤더
<a name="api-PurchaseProvisionedCapacity-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

#### 요청 본문
<a name="api-PurchaseProvisionedCapacity-requests-elements"></a>

이 작업에는 요청 본문이 없습니다.

## 응답
<a name="api-PurchaseProvisionedCapacity-responses"></a>

작업 요청이 성공하면 서비스가 HTTP `201 Created` 응답을 반환합니다.

### 구문
<a name="api-PurchaseProvisionedCapacity-response-syntax"></a>

```
HTTP/1.1 201 Created
x-amzn-RequestId: x-amzn-RequestId
Date: Date
x-amz-capacity-id: CapacityId
```

### 응답 헤더
<a name="api-PurchaseProvisionedCapacity-responses-headers"></a>

성공적인 응답에는 모든 작업에 일반적인 응답 헤더 외에 다음 응답 헤더가 포함됩니다. 일반적인 응답 헤더에 대한 자세한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.


|  이름  |  설명 | 
| --- | --- | 
|  `x-amz-capacity-id`   |  프로비저닝된 용량 단위를 식별하는 ID입니다. 유형: 문자열  | 

### 응답 본문
<a name="api-PurchaseProvisionedCapacity-responses-elements"></a>

이 작업은 응답 본문을 반환하지 않습니다.

### 오류
<a name="api-PurchaseProvisionedCapacity-responses-errors"></a>

이 작업에는 모든 Amazon Glacier 작업에 일반적으로 발생할 수 있는 오류 외에 다음 오류도 포함됩니다. Amazon Glacier의 오류에 대한 자세한 내용과 오류 코드 목록은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.


| 코드 | 설명 | HTTP 상태 코드 | Type | 
| --- | --- | --- | --- | 
| LimitExceededException | 임의의 요청이 프로비저닝된 용량 단위의 계정 제한을 초과한 경우에 반환됩니다. | 400 Bad Request | 클라이언트 | 

## 예제
<a name="api-PurchaseProvisionedCapacity-examples"></a>

다음은 계정에 프로비저닝된 용량 단위를 구매하는 예제입니다.

### 요청 예시
<a name="api-PurchaseProvisionedCapacity-example-request"></a>

아래 예제에서는 HTTP POST 요청을 전송하여 프로비저닝된 용량 단위를 구매합니다.

```
1. POST /123456789012/provisioned-capacity HTTP/1.1
2. Host: glacier.us-west-2.amazonaws.com
3. x-amz-Date: 20170210T120000Z
4. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
5. Content-Length: length
6. x-amz-glacier-version: 2012-06-01
```

### 응답의 예
<a name="api-PurchaseProvisionedCapacity-example-response"></a>

요청이 성공하면 Amazon Glacier(Amazon Glacier)가 다음 예시와 같이 `HTTP 201 Created` 응답을 반환합니다.

```
1. HTTP/1.1 201 Created
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:02:00 GMT
4. x-amz-capacity-id: zSaq7NzHFQDANTfQkDen4V7z
```

## 관련 섹션
<a name="api-PurchaseProvisionedCapacity-related-sections"></a>

 
+ [프로비저닝된 용량 나열(GET provisioned-capacity)](api-ListProvisionedCapacity.md)

# 데이터 가져오기 정책 설정(PUT policy)
<a name="api-SetDataRetrievalPolicy"></a>

## 설명
<a name="api-SetDataRetrievalPolicy-description"></a>

이번 작업에서는 `PUT` 요청 시 지정한 AWS 리전의 데이터 검색 정책을 설정한 후 규정합니다. 정책은 AWS 계정의 AWS 리전당 하나씩 설정할 수 있습니다. `PUT` 요청이 성공하면 몇 분 이내에 정책이 규정됩니다.

 하지만 정책이 규정되기 전에는 정책 설정 작업이 진행 중인 가져오기 작업에 적용되지 않습니다. 데이터 가져오기 정책에 대한 자세한 내용은 [Amazon Glacier 데이터 검색 정책](data-retrieval-policy.md) 섹션을 참조하세요.

## 요청
<a name="api-SetDataRetrievalPolicy-requests"></a>

### 구문
<a name="api-SetDataRetrievalPolicy-requests-syntax"></a>

데이터 가져오기 정책을 설정하려면 다음 구문 예제와 같이 HTTP PUT 요청을 데이터 가져오기 정책 URI로 전송합니다.

```
 1. PUT /AccountId/policies/data-retrieval HTTP/1.1
 2. Host: glacier.Region.amazonaws.com
 3. Date: Date
 4. Authorization: SignatureValue
 5. Content-Length: Length
 6. x-amz-glacier-version: 2012-06-01
 7. 			
 8. {
 9.   "Policy":
10.     {
11.       "Rules":[
12.          {
13.              "Strategy": String,
14.              "BytesPerHour": Number          
15.          }
16.        ]
17.     }
18. }
```

 

**참고**  
`AccountId` 값은 AWS 계정 ID입니다. 이 값은 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID와 일치해야 합니다. AWS 계정 ID 또는 선택적으로 하나의 '`-`'(하이픈)을 지정할 수 있습니다. 이 경우에 Amazon Glacier는 요청 서명에 사용된 자격 증명과 연결된 AWS 계정 ID를 사용합니다. 계정 ID를 지정하는 경우 ID에 하이픈('-')을 포함하지 않습니다.

### 요청 파라미터
<a name="api-SetDataRetrievalPolicy-requests-parameters"></a>

이 작업은 요청 파라미터를 사용하지 않습니다.

### 요청 헤더
<a name="api-SetDataRetrievalPolicy-requests-headers"></a>

이 작업은 모든 작업에 일반적인 요청 헤더만 사용합니다. 일반적인 요청 헤더에 대한 내용은 [공통 요청 헤더](api-common-request-headers.md) 섹션을 참조하세요.

### 요청 본문
<a name="api-SetDataRetrievalPolicy-requests-elements"></a>

요청 본문의 JSON에 포함되는 필드는 다음과 같습니다.

 

**BytesPerHour**  
한 시간이 가져올 수 있는 최대 바이트 수입니다.  
이 필드는 Strategy 필드 값이 `BytesPerHour`인 경우에만 필요합니다. Strategy 필드가 `BytesPerHour`로 설정되어 있지 않은 상태에서 이 필드를 설정하면 PUT 작업이 거부됩니다.  
*유형*: 숫자  
*필수 항목 여부*: Strategy 필드가 `BytesPerHour`로 설정되어 있는 경우 예이고, 그렇지 않으면 아니요입니다.  
*유효한 값*: 최소 정수 값 1. 최대 정수 값 2^63 - 1 포함

**Rules**  
정책 규칙입니다. 이 규칙이 목록 유형이지만 현재는 Strategy 필드와 BytesPerHour 필드(옵션)로 구성된 규칙 하나만 있어야 합니다.  
*유형*: 배열  
*필수 항목 여부*: 예

**Strategy**  
설정할 데이터 가져오기 정책의 유형입니다.  
*유형*: 문자열  
*필수 항목 여부*: 예  
유효한 값: `BytesPerHour`\$1`FreeTier`\$1`None`. `BytesPerHour`는 콘솔에서 **최대 가져오기 속도**를 선택하는 것과 동일합니다. `FreeTier`는 콘솔에서 **프리 티어만**을 선택하는 것과 동일합니다. `None`은 콘솔에서 **가져오기 정책 없음**을 선택하는 것과 동일합니다. 콘솔에서 데이터 가져오기 정책을 선택하는 것에 대한 자세한 내용은 [Amazon Glacier 데이터 검색 정책](data-retrieval-policy.md) 섹션을 참조하세요.

## 응답
<a name="api-SetDataRetrievalPolicy-responses"></a>

### 구문
<a name="api-SetDataRetrievalPolicyresponse-syntax"></a>

```
HTTP/1.1 204 No Content
x-amzn-RequestId: x-amzn-RequestId
Date: Date
```

### 응답 헤더
<a name="api-SetDataRetrievalPolicy-responses-headers"></a>

이 작업은 대부분의 응답에 일반적인 응답 헤더만 사용합니다. 일반적인 응답 헤더에 대한 내용은 [공통 응답 헤더](api-common-response-headers.md) 섹션을 참조하세요.

### 응답 본문
<a name="api-SetDataRetrievalPolicy-responses-elements"></a>

이 작업은 응답 본문을 반환하지 않습니다.

### 오류
<a name="api-SetDataRetrievalPolicy-responses-errors"></a>

Amazon Glacier 예외 및 오류 메시지에 대한 자세한 내용은 [오류 응답](api-error-responses.md) 섹션을 참조하세요.

## 예시
<a name="api-SetDataRetrievalPolicy-examples"></a>

### 요청 예시
<a name="api-SetDataRetrievalPolicy-example-request"></a>

다음은 Strategy 필드가 `BytesPerHour`로 설정되어 있을 때 HTTP PUT 요청을 전송하는 예제입니다.

```
 1. PUT /-/policies/data-retrieval HTTP/1.1
 2. Host: glacier.us-west-2.amazonaws.com
 3. x-amz-Date: 20170210T120000Z
 4. x-amz-glacier-version: 2012-06-01
 5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
 6. 			
 7. {
 8.   "Policy":
 9.     {
10.       "Rules":[
11.          {
12.              "Strategy":"BytesPerHour",
13.              "BytesPerHour":10737418240       
14.           }
15.        ]
16.     }
17. }
```

다음은 Strategy 필드가 `FreeTier`로 설정되어 있을 때 HTTP PUT 요청을 전송하는 예제입니다.

```
 1. PUT /-/policies/data-retrieval HTTP/1.1
 2. Host: glacier.us-west-2.amazonaws.com
 3. x-amz-Date: 20170210T120000Z
 4. x-amz-glacier-version: 2012-06-01
 5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
 6. 			
 7. {
 8.   "Policy":
 9.     {
10.       "Rules":[
11.          {
12.              "Strategy":"FreeTier"   
13.           }
14.        ]
15.     }
16. }
```

다음은 Strategy 필드가 `None`으로 설정되어 있을 때 HTTP PUT 요청을 전송하는 예제입니다.

```
 1. PUT /-/policies/data-retrieval HTTP/1.1
 2. Host: glacier.us-west-2.amazonaws.com
 3. x-amz-Date: 20170210T120000Z
 4. x-amz-glacier-version: 2012-06-01
 5. Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
 6. 			
 7. {
 8.   "Policy":
 9.     {
10.       "Rules":[
11.          {
12.              "Strategy":"None"   
13.           }
14.        ]
15.     }
16. }
```

### 응답의 예
<a name="api-SetDataRetrievalPolicy-example-response"></a>

요청이 성공하면 Amazon Glacier(Amazon Glacier)가 다음 예시와 같이 정책을 설정한 후 `HTTP 204 No Content`를 반환합니다.

```
1. HTTP/1.1 204 No Content
2. x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q
3. Date: Wed, 10 Feb 2017 12:02:00 GMT
```

## 관련 섹션
<a name="related-sections-SetDataRetrievalPolicy"></a>

 
+ [데이터 가져오기 정책 가져오기(GET policy)](api-GetDataRetrievalPolicy.md)

 
+ [작업 시작(POST jobs)](api-initiate-job-post.md)