- AWS Code Sample demonstrates how to create a job start to retrieve inventory for an Amazon Glacier vault.

/* Copyright, Inc. or its affiliates. All Rights Reserved. This file is licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with the License. A copy of the License is located at This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ package com.example.glacier; import; import; import; import; import; import; public class ArchiveDownload { public static void main(String[] args) { final String USAGE = "\n" + "ArchiveDownload - start a job to retrieve vault inventory\n\n" + "Usage: ArchiveDownload <vaultName> <accountId>\n\n" + "Where:\n" + " vaultName - the name of the vault\n" + " accountId - the account ID\n\n"; if (args.length < 2) { System.out.println(USAGE); System.exit(1); } String vaultName = args[0]; String accountId = args[1]; // Create a GlacierClient object GlacierClient glacier = GlacierClient.builder() .region(Region.US_EAST_1) .build(); createJob(glacier, vaultName, accountId) ; } public static void createJob(GlacierClient glacier, String vaultName, String accountId) { try { JobParameters job = JobParameters.builder() .type("inventory-retrieval") .build(); InitiateJobRequest initJob = InitiateJobRequest.builder() .jobParameters(job) .accountId(accountId) .vaultName(vaultName) .build(); InitiateJobResponse response = glacier.initiateJob(initJob); System.out.println("The job ID is: " +response.jobId()) ; System.out.println("The relative URI path of the job is: " +response.location()) ; } catch(GlacierException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } System.out.println("Done"); } }

Sample Details

Service: Amazon Glacier

Last tested: 4/17/2020

Author: scmacdon-aws

Type: full-example