The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Paws::Snowball - Perl Interface to AWS Amazon Import/Export Snowball

SYNOPSIS

  use Paws;

  my $obj = Paws->service('Snowball');
  my $res = $obj->Method(
    Arg1 => $val1,
    Arg2 => [ 'V1', 'V2' ],
    # if Arg3 is an object, the HashRef will be used as arguments to the constructor
    # of the arguments type
    Arg3 => { Att1 => 'Val1' },
    # if Arg4 is an array of objects, the HashRefs will be passed as arguments to
    # the constructor of the arguments type
    Arg4 => [ { Att1 => 'Val1'  }, { Att1 => 'Val2' } ],
  );

DESCRIPTION

AWS Snowball is a petabyte-scale data transport solution that uses secure appliances to transfer large amounts of data between your on-premises data centers and Amazon Simple Storage Service (Amazon S3). The Snowball commands described here provide access to the same functionality that is available in the AWS Snowball Management Console, which enables you to create and manage jobs for Snowball. To transfer data locally with a Snowball appliance, you'll need to use the Snowball client or the Amazon S3 API adapter for Snowball. For more information, see the User Guide.

METHODS

CancelCluster(ClusterId => Str)

Each argument is described in detail in: Paws::Snowball::CancelCluster

Returns: a Paws::Snowball::CancelClusterResult instance

  Cancels a cluster job. You can only cancel a cluster job while it's in
the C<AwaitingQuorum> status. You'll have at least an hour after
creating a cluster job to cancel it.

CancelJob(JobId => Str)

Each argument is described in detail in: Paws::Snowball::CancelJob

Returns: a Paws::Snowball::CancelJobResult instance

  Cancels the specified job. You can only cancel a job before its
C<JobState> value changes to C<PreparingAppliance>. Requesting the
C<ListJobs> or C<DescribeJob> action will return a job's C<JobState> as
part of the response element data returned.

CreateAddress(Address => Paws::Snowball::Address)

Each argument is described in detail in: Paws::Snowball::CreateAddress

Returns: a Paws::Snowball::CreateAddressResult instance

  Creates an address for a Snowball to be shipped to.

Addresses are validated at the time of creation. The address you provide must be located within the serviceable area of your region. If the address is invalid or unsupported, then an exception is thrown.

CreateCluster(AddressId => Str, JobType => Str, Resources => Paws::Snowball::JobResource, RoleARN => Str, ShippingOption => Str, [Description => Str, KmsKeyARN => Str, Notification => Paws::Snowball::Notification, SnowballType => Str])

Each argument is described in detail in: Paws::Snowball::CreateCluster

Returns: a Paws::Snowball::CreateClusterResult instance

  Creates an empty cluster. Each cluster supports five nodes. You use the
CreateJob action separately to create the jobs for each of these nodes.
The cluster does not ship until these five node jobs have been created.

CreateJob([AddressId => Str, ClusterId => Str, Description => Str, JobType => Str, KmsKeyARN => Str, Notification => Paws::Snowball::Notification, Resources => Paws::Snowball::JobResource, RoleARN => Str, ShippingOption => Str, SnowballCapacityPreference => Str, SnowballType => Str])

Each argument is described in detail in: Paws::Snowball::CreateJob

Returns: a Paws::Snowball::CreateJobResult instance

  Creates a job to import or export data between Amazon S3 and your
on-premises data center. Your AWS account must have the right trust
policies and permissions in place to create a job for Snowball. If
you're creating a job for a node in a cluster, you only need to provide
the C<clusterId> value; the other job attributes are inherited from the
cluster. .

DescribeAddress(AddressId => Str)

Each argument is described in detail in: Paws::Snowball::DescribeAddress

Returns: a Paws::Snowball::DescribeAddressResult instance

  Takes an C<AddressId> and returns specific details about that address
in the form of an C<Address> object.

DescribeAddresses([MaxResults => Int, NextToken => Str])

Each argument is described in detail in: Paws::Snowball::DescribeAddresses

Returns: a Paws::Snowball::DescribeAddressesResult instance

  Returns a specified number of C<ADDRESS> objects. Calling this API in
one of the US regions will return addresses from the list of all
addresses associated with this account in all US regions.

DescribeCluster(ClusterId => Str)

Each argument is described in detail in: Paws::Snowball::DescribeCluster

Returns: a Paws::Snowball::DescribeClusterResult instance

  Returns information about a specific cluster including shipping
information, cluster status, and other important metadata.

DescribeJob(JobId => Str)

Each argument is described in detail in: Paws::Snowball::DescribeJob

Returns: a Paws::Snowball::DescribeJobResult instance

  Returns information about a specific job including shipping
information, job status, and other important metadata. .

GetJobManifest(JobId => Str)

Each argument is described in detail in: Paws::Snowball::GetJobManifest

Returns: a Paws::Snowball::GetJobManifestResult instance

  Returns a link to an Amazon S3 presigned URL for the manifest file
associated with the specified C<JobId> value. You can access the
manifest file for up to 60 minutes after this request has been made. To
access the manifest file after 60 minutes have passed, you'll have to
make another call to the C<GetJobManifest> action.

The manifest is an encrypted file that you can download after your job enters the WithCustomer status. The manifest is decrypted by using the UnlockCode code value, when you pass both values to the Snowball through the Snowball client when the client is started for the first time.

As a best practice, we recommend that you don't save a copy of an UnlockCode value in the same location as the manifest file for that job. Saving these separately helps prevent unauthorized parties from gaining access to the Snowball associated with that job.

The credentials of a given job, including its manifest file and unlock code, expire 90 days after the job is created.

GetJobUnlockCode(JobId => Str)

Each argument is described in detail in: Paws::Snowball::GetJobUnlockCode

Returns: a Paws::Snowball::GetJobUnlockCodeResult instance

  Returns the C<UnlockCode> code value for the specified job. A
particular C<UnlockCode> value can be accessed for up to 90 days after
the associated job has been created.

The UnlockCode value is a 29-character code with 25 alphanumeric characters and 4 hyphens. This code is used to decrypt the manifest file when it is passed along with the manifest to the Snowball through the Snowball client when the client is started for the first time.

As a best practice, we recommend that you don't save a copy of the UnlockCode in the same location as the manifest file for that job. Saving these separately helps prevent unauthorized parties from gaining access to the Snowball associated with that job.

GetSnowballUsage()

Each argument is described in detail in: Paws::Snowball::GetSnowballUsage

Returns: a Paws::Snowball::GetSnowballUsageResult instance

  Returns information about the Snowball service limit for your account,
and also the number of Snowballs your account has in use.

The default service limit for the number of Snowballs that you can have at one time is 1. If you want to increase your service limit, contact AWS Support.

ListClusterJobs(ClusterId => Str, [MaxResults => Int, NextToken => Str])

Each argument is described in detail in: Paws::Snowball::ListClusterJobs

Returns: a Paws::Snowball::ListClusterJobsResult instance

  Returns an array of C<JobListEntry> objects of the specified length.
Each C<JobListEntry> object is for a job in the specified cluster and
contains a job's state, a job's ID, and other information.

ListClusters([MaxResults => Int, NextToken => Str])

Each argument is described in detail in: Paws::Snowball::ListClusters

Returns: a Paws::Snowball::ListClustersResult instance

  Returns an array of C<ClusterListEntry> objects of the specified
length. Each C<ClusterListEntry> object contains a cluster's state, a
cluster's ID, and other important status information.

ListJobs([MaxResults => Int, NextToken => Str])

Each argument is described in detail in: Paws::Snowball::ListJobs

Returns: a Paws::Snowball::ListJobsResult instance

  Returns an array of C<JobListEntry> objects of the specified length.
Each C<JobListEntry> object contains a job's state, a job's ID, and a
value that indicates whether the job is a job part, in the case of
export jobs. Calling this API action in one of the US regions will
return jobs from the list of all jobs associated with this account in
all US regions.

UpdateCluster(ClusterId => Str, [AddressId => Str, Description => Str, Notification => Paws::Snowball::Notification, Resources => Paws::Snowball::JobResource, RoleARN => Str, ShippingOption => Str])

Each argument is described in detail in: Paws::Snowball::UpdateCluster

Returns: a Paws::Snowball::UpdateClusterResult instance

  While a cluster's C<ClusterState> value is in the C<AwaitingQuorum>
state, you can update some of the information associated with a
cluster. Once the cluster changes to a different job state, usually 60
minutes after the cluster being created, this action is no longer
available.

UpdateJob(JobId => Str, [AddressId => Str, Description => Str, Notification => Paws::Snowball::Notification, Resources => Paws::Snowball::JobResource, RoleARN => Str, ShippingOption => Str, SnowballCapacityPreference => Str])

Each argument is described in detail in: Paws::Snowball::UpdateJob

Returns: a Paws::Snowball::UpdateJobResult instance

  While a job's C<JobState> value is C<New>, you can update some of the
information associated with a job. Once the job changes to a different
job state, usually within 60 minutes of the job being created, this
action is no longer available.

PAGINATORS

Paginator methods are helpers that repetively call methods that return partial results

DescribeAllAddresses(sub { },[MaxResults => Int, NextToken => Str])

DescribeAllAddresses([MaxResults => Int, NextToken => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

 - Addresses, passing the object as the first parameter, and the string 'Addresses' as the second parameter 

If not, it will return a a Paws::Snowball::DescribeAddressesResult instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

ListAllJobs(sub { },[MaxResults => Int, NextToken => Str])

ListAllJobs([MaxResults => Int, NextToken => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

 - JobListEntries, passing the object as the first parameter, and the string 'JobListEntries' as the second parameter 

If not, it will return a a Paws::Snowball::ListJobsResult instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

SEE ALSO

This service class forms part of Paws

BUGS and CONTRIBUTIONS

The source code is located here: https://github.com/pplu/aws-sdk-perl

Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues