Documentation

Overview

Package snowball provides the client and types for making API requests to Amazon Import/Export Snowball.

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 (http://docs.aws.amazon.com/AWSImportExport/latest/ug/api-reference.html).

See https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30 for more information on this service.

See snowball package documentation for more information. https://docs.aws.amazon.com/sdk-for-go/api/service/snowball/

Using the Client

To use the client for Amazon Import/Export Snowball you will first need to create a new instance of it.

When creating a client for an AWS service you'll first need to have a Session already created. The Session provides configuration that can be shared between multiple service clients. Additional configuration can be applied to the Session and service's client when they are constructed. The aws package's Config type contains several fields such as Region for the AWS Region the client should make API requests too. The optional Config value can be provided as the variadic argument for Sessions and client creation.

Once the service's client is created you can use it to make API requests the AWS service. These clients are safe to use concurrently.

// Create a session to share configuration, and load external configuration.
sess := session.Must(session.NewSession())

// Create the service's client with the session.
svc := snowball.New(sess)

See the SDK's documentation for more information on how to use service clients. https://docs.aws.amazon.com/sdk-for-go/api/

See aws package's Config type for more information on configuration options. https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config

See the Amazon Import/Export Snowball client Snowball for more information on creating the service's client. https://docs.aws.amazon.com/sdk-for-go/api/service/snowball/#New

Once the client is created you can make an API request to the service. Each API method takes a input parameter, and returns the service response and an error.

The API method will document which error codes the service can be returned by the operation if the service models the API operation's errors. These errors will also be available as const strings prefixed with "ErrCode".

result, err := svc.CancelCluster(params)
if err != nil {
    // Cast err to awserr.Error to handle specific error codes.
    aerr, ok := err.(awserr.Error)
    if ok && aerr.Code() == <error code to check for> {
        // Specific error code handling
    }
    return err
}

fmt.Println("CancelCluster result:")
fmt.Println(result)

Using the Client with Context

The service's client also provides methods to make API requests with a Context value. This allows you to control the timeout, and cancellation of pending requests. These methods also take request Option as variadic parameter to apply additional configuration to the API request.

ctx := context.Background()

result, err := svc.CancelClusterWithContext(ctx, params)

See the request package documentation for more information on using Context pattern with the SDK. https://docs.aws.amazon.com/sdk-for-go/api/aws/request/

Index

Examples

Constants

View Source
const (
	// CapacityT50 is a Capacity enum value
	CapacityT50 = "T50"

	// CapacityT80 is a Capacity enum value
	CapacityT80 = "T80"

	// CapacityT100 is a Capacity enum value
	CapacityT100 = "T100"

	// CapacityNoPreference is a Capacity enum value
	CapacityNoPreference = "NoPreference"
)
View Source
const (
	// ClusterStateAwaitingQuorum is a ClusterState enum value
	ClusterStateAwaitingQuorum = "AwaitingQuorum"

	// ClusterStatePending is a ClusterState enum value
	ClusterStatePending = "Pending"

	// ClusterStateInUse is a ClusterState enum value
	ClusterStateInUse = "InUse"

	// ClusterStateComplete is a ClusterState enum value
	ClusterStateComplete = "Complete"

	// ClusterStateCancelled is a ClusterState enum value
	ClusterStateCancelled = "Cancelled"
)
View Source
const (
	// JobStateNew is a JobState enum value
	JobStateNew = "New"

	// JobStatePreparingAppliance is a JobState enum value
	JobStatePreparingAppliance = "PreparingAppliance"

	// JobStatePreparingShipment is a JobState enum value
	JobStatePreparingShipment = "PreparingShipment"

	// JobStateInTransitToCustomer is a JobState enum value
	JobStateInTransitToCustomer = "InTransitToCustomer"

	// JobStateWithCustomer is a JobState enum value
	JobStateWithCustomer = "WithCustomer"

	// JobStateInTransitToAws is a JobState enum value
	JobStateInTransitToAws = "InTransitToAWS"

	// JobStateWithAws is a JobState enum value
	JobStateWithAws = "WithAWS"

	// JobStateInProgress is a JobState enum value
	JobStateInProgress = "InProgress"

	// JobStateComplete is a JobState enum value
	JobStateComplete = "Complete"

	// JobStateCancelled is a JobState enum value
	JobStateCancelled = "Cancelled"

	// JobStateListing is a JobState enum value
	JobStateListing = "Listing"

	// JobStatePending is a JobState enum value
	JobStatePending = "Pending"
)
View Source
const (
	// JobTypeImport is a JobType enum value
	JobTypeImport = "IMPORT"

	// JobTypeExport is a JobType enum value
	JobTypeExport = "EXPORT"

	// JobTypeLocalUse is a JobType enum value
	JobTypeLocalUse = "LOCAL_USE"
)
View Source
const (
	// ShippingOptionSecondDay is a ShippingOption enum value
	ShippingOptionSecondDay = "SECOND_DAY"

	// ShippingOptionNextDay is a ShippingOption enum value
	ShippingOptionNextDay = "NEXT_DAY"

	// ShippingOptionExpress is a ShippingOption enum value
	ShippingOptionExpress = "EXPRESS"

	// ShippingOptionStandard is a ShippingOption enum value
	ShippingOptionStandard = "STANDARD"
)
View Source
const (
	// TypeStandard is a Type enum value
	TypeStandard = "STANDARD"

	// TypeEdge is a Type enum value
	TypeEdge = "EDGE"
)
View Source
const (

	// ErrCodeClusterLimitExceededException for service response error code
	// "ClusterLimitExceededException".
	//
	// Job creation failed. Currently, clusters support five nodes. If you have
	// less than five nodes for your cluster and you have more nodes to create for
	// this cluster, try again and create jobs until your cluster has exactly five
	// notes.
	ErrCodeClusterLimitExceededException = "ClusterLimitExceededException"

	// ErrCodeInvalidAddressException for service response error code
	// "InvalidAddressException".
	//
	// The address provided was invalid. Check the address with your region's carrier,
	// and try again.
	ErrCodeInvalidAddressException = "InvalidAddressException"

	// ErrCodeInvalidInputCombinationException for service response error code
	// "InvalidInputCombinationException".
	//
	// Job or cluster creation failed. One ore more inputs were invalid. Confirm
	// that the CreateClusterRequest$SnowballType value supports your CreateJobRequest$JobType,
	// and try again.
	ErrCodeInvalidInputCombinationException = "InvalidInputCombinationException"

	// ErrCodeInvalidJobStateException for service response error code
	// "InvalidJobStateException".
	//
	// The action can't be performed because the job's current state doesn't allow
	// that action to be performed.
	ErrCodeInvalidJobStateException = "InvalidJobStateException"

	// ErrCodeInvalidNextTokenException for service response error code
	// "InvalidNextTokenException".
	//
	// The NextToken string was altered unexpectedly, and the operation has stopped.
	// Run the operation without changing the NextToken string, and try again.
	ErrCodeInvalidNextTokenException = "InvalidNextTokenException"

	// ErrCodeInvalidResourceException for service response error code
	// "InvalidResourceException".
	//
	// The specified resource can't be found. Check the information you provided
	// in your last request, and try again.
	ErrCodeInvalidResourceException = "InvalidResourceException"

	// ErrCodeKMSRequestFailedException for service response error code
	// "KMSRequestFailedException".
	//
	// The provided AWS Key Management Service key lacks the permissions to perform
	// the specified CreateJob or UpdateJob action.
	ErrCodeKMSRequestFailedException = "KMSRequestFailedException"

	// ErrCodeUnsupportedAddressException for service response error code
	// "UnsupportedAddressException".
	//
	// The address is either outside the serviceable area for your region, or an
	// error occurred. Check the address with your region's carrier and try again.
	// If the issue persists, contact AWS Support.
	ErrCodeUnsupportedAddressException = "UnsupportedAddressException"
)
View Source
const (
	ServiceName = "snowball"  // Service endpoint prefix API calls made to.
	EndpointsID = ServiceName // Service ID for Regions and Endpoints metadata.
)

Service information constants

Variables

This section is empty.

Functions

This section is empty.

Types

type Address

type Address struct {

	// The unique ID for an address.
	AddressId *string `min:"40" type:"string"`

	// The city in an address that a Snowball is to be delivered to.
	City *string `min:"1" type:"string"`

	// The name of the company to receive a Snowball at an address.
	Company *string `min:"1" type:"string"`

	// The country in an address that a Snowball is to be delivered to.
	Country *string `min:"1" type:"string"`

	// If the address you are creating is a primary address, then set this option
	// to true. This field is not supported in most regions.
	IsRestricted *bool `type:"boolean"`

	// This field is no longer used and the value is ignored.
	Landmark *string `min:"1" type:"string"`

	// The name of a person to receive a Snowball at an address.
	Name *string `min:"1" type:"string"`

	// The phone number associated with an address that a Snowball is to be delivered
	// to.
	PhoneNumber *string `min:"1" type:"string"`

	// The postal code in an address that a Snowball is to be delivered to.
	PostalCode *string `min:"1" type:"string"`

	// This field is no longer used and the value is ignored.
	PrefectureOrDistrict *string `min:"1" type:"string"`

	// The state or province in an address that a Snowball is to be delivered to.
	StateOrProvince *string `min:"1" type:"string"`

	// The first line in a street address that a Snowball is to be delivered to.
	Street1 *string `min:"1" type:"string"`

	// The second line in a street address that a Snowball is to be delivered to.
	Street2 *string `min:"1" type:"string"`

	// The third line in a street address that a Snowball is to be delivered to.
	Street3 *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

The address that you want the Snowball or Snowballs associated with a specific job 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. Although no individual elements of the Address are required, if the address is invalid or unsupported, then an exception is thrown. Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/Address

func (Address) GoString

func (s Address) GoString() string

GoString returns the string representation

func (*Address) SetAddressId

func (s *Address) SetAddressId(v string) *Address

SetAddressId sets the AddressId field's value.

func (*Address) SetCity

func (s *Address) SetCity(v string) *Address

SetCity sets the City field's value.

func (*Address) SetCompany

func (s *Address) SetCompany(v string) *Address

SetCompany sets the Company field's value.

func (*Address) SetCountry

func (s *Address) SetCountry(v string) *Address

SetCountry sets the Country field's value.

func (*Address) SetIsRestricted

func (s *Address) SetIsRestricted(v bool) *Address

SetIsRestricted sets the IsRestricted field's value.

func (*Address) SetLandmark

func (s *Address) SetLandmark(v string) *Address

SetLandmark sets the Landmark field's value.

func (*Address) SetName

func (s *Address) SetName(v string) *Address

SetName sets the Name field's value.

func (*Address) SetPhoneNumber

func (s *Address) SetPhoneNumber(v string) *Address

SetPhoneNumber sets the PhoneNumber field's value.

func (*Address) SetPostalCode

func (s *Address) SetPostalCode(v string) *Address

SetPostalCode sets the PostalCode field's value.

func (*Address) SetPrefectureOrDistrict

func (s *Address) SetPrefectureOrDistrict(v string) *Address

SetPrefectureOrDistrict sets the PrefectureOrDistrict field's value.

func (*Address) SetStateOrProvince

func (s *Address) SetStateOrProvince(v string) *Address

SetStateOrProvince sets the StateOrProvince field's value.

func (*Address) SetStreet1

func (s *Address) SetStreet1(v string) *Address

SetStreet1 sets the Street1 field's value.

func (*Address) SetStreet2

func (s *Address) SetStreet2(v string) *Address

SetStreet2 sets the Street2 field's value.

func (*Address) SetStreet3

func (s *Address) SetStreet3(v string) *Address

SetStreet3 sets the Street3 field's value.

func (Address) String

func (s Address) String() string

String returns the string representation

func (*Address) Validate

func (s *Address) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CancelClusterInput

type CancelClusterInput struct {

	// The 39-character ID for the cluster that you want to cancel, for example
	// CID123e4567-e89b-12d3-a456-426655440000.
	//
	// ClusterId is a required field
	ClusterId *string `min:"39" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CancelClusterRequest

func (CancelClusterInput) GoString

func (s CancelClusterInput) GoString() string

GoString returns the string representation

func (*CancelClusterInput) SetClusterId

func (s *CancelClusterInput) SetClusterId(v string) *CancelClusterInput

SetClusterId sets the ClusterId field's value.

func (CancelClusterInput) String

func (s CancelClusterInput) String() string

String returns the string representation

func (*CancelClusterInput) Validate

func (s *CancelClusterInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CancelClusterOutput

type CancelClusterOutput struct {
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CancelClusterResult

func (CancelClusterOutput) GoString

func (s CancelClusterOutput) GoString() string

GoString returns the string representation

func (CancelClusterOutput) String

func (s CancelClusterOutput) String() string

String returns the string representation

type CancelJobInput

type CancelJobInput struct {

	// The 39-character job ID for the job that you want to cancel, for example
	// JID123e4567-e89b-12d3-a456-426655440000.
	//
	// JobId is a required field
	JobId *string `min:"39" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CancelJobRequest

func (CancelJobInput) GoString

func (s CancelJobInput) GoString() string

GoString returns the string representation

func (*CancelJobInput) SetJobId

func (s *CancelJobInput) SetJobId(v string) *CancelJobInput

SetJobId sets the JobId field's value.

func (CancelJobInput) String

func (s CancelJobInput) String() string

String returns the string representation

func (*CancelJobInput) Validate

func (s *CancelJobInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CancelJobOutput

type CancelJobOutput struct {
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CancelJobResult

func (CancelJobOutput) GoString

func (s CancelJobOutput) GoString() string

GoString returns the string representation

func (CancelJobOutput) String

func (s CancelJobOutput) String() string

String returns the string representation

type ClusterListEntry

type ClusterListEntry struct {

	// The 39-character ID for the cluster that you want to list, for example CID123e4567-e89b-12d3-a456-426655440000.
	ClusterId *string `min:"1" type:"string"`

	// The current state of this cluster. For information about the state of a specific
	// node, see JobListEntry$JobState.
	ClusterState *string `type:"string" enum:"ClusterState"`

	// The creation date for this cluster.
	CreationDate *time.Time `type:"timestamp" timestampFormat:"unix"`

	// Defines an optional description of the cluster, for example Environmental
	// Data Cluster-01.
	Description *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains a cluster's state, a cluster's ID, and other important information. Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ClusterListEntry

func (ClusterListEntry) GoString

func (s ClusterListEntry) GoString() string

GoString returns the string representation

func (*ClusterListEntry) SetClusterId

func (s *ClusterListEntry) SetClusterId(v string) *ClusterListEntry

SetClusterId sets the ClusterId field's value.

func (*ClusterListEntry) SetClusterState

func (s *ClusterListEntry) SetClusterState(v string) *ClusterListEntry

SetClusterState sets the ClusterState field's value.

func (*ClusterListEntry) SetCreationDate

func (s *ClusterListEntry) SetCreationDate(v time.Time) *ClusterListEntry

SetCreationDate sets the CreationDate field's value.

func (*ClusterListEntry) SetDescription

func (s *ClusterListEntry) SetDescription(v string) *ClusterListEntry

SetDescription sets the Description field's value.

func (ClusterListEntry) String

func (s ClusterListEntry) String() string

String returns the string representation

type ClusterMetadata

type ClusterMetadata struct {

	// The automatically generated ID for a specific address.
	AddressId *string `min:"40" type:"string"`

	// The automatically generated ID for a cluster.
	ClusterId *string `min:"1" type:"string"`

	// The current status of the cluster.
	ClusterState *string `type:"string" enum:"ClusterState"`

	// The creation date for this cluster.
	CreationDate *time.Time `type:"timestamp" timestampFormat:"unix"`

	// The optional description of the cluster.
	Description *string `min:"1" type:"string"`

	// The ID of the address that you want a cluster shipped to, after it will be
	// shipped to its primary address. This field is not supported in most regions.
	ForwardingAddressId *string `min:"40" type:"string"`

	// The type of job for this cluster. Currently, the only job type supported
	// for clusters is LOCAL_USE.
	JobType *string `type:"string" enum:"JobType"`

	// The KmsKeyARN Amazon Resource Name (ARN) associated with this cluster. This
	// ARN was created using the CreateKey (http://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html)
	// API action in AWS Key Management Service (AWS KMS).
	KmsKeyARN *string `type:"string"`

	// The Amazon Simple Notification Service (Amazon SNS) notification settings
	// for this cluster.
	Notification *Notification `type:"structure"`

	// The arrays of JobResource objects that can include updated S3Resource objects
	// or LambdaResource objects.
	Resources *JobResource `type:"structure"`

	// The role ARN associated with this cluster. This ARN was created using the
	// CreateRole (http://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html)
	// API action in AWS Identity and Access Management (IAM).
	RoleARN *string `type:"string"`

	// The shipping speed for each node in this cluster. This speed doesn't dictate
	// how soon you'll get each Snowball Edge appliance, rather it represents how
	// quickly each appliance moves to its destination while in transit. Regional
	// shipping speeds are as follows:
	//
	//    * In Australia, you have access to express shipping. Typically, appliances
	//    shipped express are delivered in about a day.
	//
	//    * In the European Union (EU), you have access to express shipping. Typically,
	//    Snowball Edges shipped express are delivered in about a day. In addition,
	//    most countries in the EU have access to standard shipping, which typically
	//    takes less than a week, one way.
	//
	//    * In India, Snowball Edges are delivered in one to seven days.
	//
	//    * In the US, you have access to one-day shipping and two-day shipping.
	ShippingOption *string `type:"string" enum:"ShippingOption"`

	// The type of AWS Snowball appliance to use for this cluster. Currently, the
	// only supported appliance type for cluster jobs is EDGE.
	SnowballType *string `type:"string" enum:"Type"`
	// contains filtered or unexported fields
}

Contains metadata about a specific cluster. Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ClusterMetadata

func (ClusterMetadata) GoString

func (s ClusterMetadata) GoString() string

GoString returns the string representation

func (*ClusterMetadata) SetAddressId

func (s *ClusterMetadata) SetAddressId(v string) *ClusterMetadata

SetAddressId sets the AddressId field's value.

func (*ClusterMetadata) SetClusterId

func (s *ClusterMetadata) SetClusterId(v string) *ClusterMetadata

SetClusterId sets the ClusterId field's value.

func (*ClusterMetadata) SetClusterState

func (s *ClusterMetadata) SetClusterState(v string) *ClusterMetadata

SetClusterState sets the ClusterState field's value.

func (*ClusterMetadata) SetCreationDate

func (s *ClusterMetadata) SetCreationDate(v time.Time) *ClusterMetadata

SetCreationDate sets the CreationDate field's value.

func (*ClusterMetadata) SetDescription

func (s *ClusterMetadata) SetDescription(v string) *ClusterMetadata

SetDescription sets the Description field's value.

func (*ClusterMetadata) SetForwardingAddressId

func (s *ClusterMetadata) SetForwardingAddressId(v string) *ClusterMetadata

SetForwardingAddressId sets the ForwardingAddressId field's value.

func (*ClusterMetadata) SetJobType

func (s *ClusterMetadata) SetJobType(v string) *ClusterMetadata

SetJobType sets the JobType field's value.

func (*ClusterMetadata) SetKmsKeyARN

func (s *ClusterMetadata) SetKmsKeyARN(v string) *ClusterMetadata

SetKmsKeyARN sets the KmsKeyARN field's value.

func (*ClusterMetadata) SetNotification

func (s *ClusterMetadata) SetNotification(v *Notification) *ClusterMetadata

SetNotification sets the Notification field's value.

func (*ClusterMetadata) SetResources

func (s *ClusterMetadata) SetResources(v *JobResource) *ClusterMetadata

SetResources sets the Resources field's value.

func (*ClusterMetadata) SetRoleARN

func (s *ClusterMetadata) SetRoleARN(v string) *ClusterMetadata

SetRoleARN sets the RoleARN field's value.

func (*ClusterMetadata) SetShippingOption

func (s *ClusterMetadata) SetShippingOption(v string) *ClusterMetadata

SetShippingOption sets the ShippingOption field's value.

func (*ClusterMetadata) SetSnowballType

func (s *ClusterMetadata) SetSnowballType(v string) *ClusterMetadata

SetSnowballType sets the SnowballType field's value.

func (ClusterMetadata) String

func (s ClusterMetadata) String() string

String returns the string representation

type CreateAddressInput

type CreateAddressInput struct {

	// The address that you want the Snowball shipped to.
	//
	// Address is a required field
	Address *Address `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CreateAddressRequest

func (CreateAddressInput) GoString

func (s CreateAddressInput) GoString() string

GoString returns the string representation

func (*CreateAddressInput) SetAddress

func (s *CreateAddressInput) SetAddress(v *Address) *CreateAddressInput

SetAddress sets the Address field's value.

func (CreateAddressInput) String

func (s CreateAddressInput) String() string

String returns the string representation

func (*CreateAddressInput) Validate

func (s *CreateAddressInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateAddressOutput

type CreateAddressOutput struct {

	// The automatically generated ID for a specific address. You'll use this ID
	// when you create a job to specify which address you want the Snowball for
	// that job shipped to.
	AddressId *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CreateAddressResult

func (CreateAddressOutput) GoString

func (s CreateAddressOutput) GoString() string

GoString returns the string representation

func (*CreateAddressOutput) SetAddressId

func (s *CreateAddressOutput) SetAddressId(v string) *CreateAddressOutput

SetAddressId sets the AddressId field's value.

func (CreateAddressOutput) String

func (s CreateAddressOutput) String() string

String returns the string representation

type CreateClusterInput

type CreateClusterInput struct {

	// The ID for the address that you want the cluster shipped to.>
	//
	// AddressId is a required field
	AddressId *string `min:"40" type:"string" required:"true"`

	// An optional description of this specific cluster, for example Environmental
	// Data Cluster-01.
	Description *string `min:"1" type:"string"`

	// The forwarding address ID for a cluster. This field is not supported in most
	// regions.
	ForwardingAddressId *string `min:"40" type:"string"`

	// The type of job for this cluster. Currently, the only job type supported
	// for clusters is LOCAL_USE.
	//
	// JobType is a required field
	JobType *string `type:"string" required:"true" enum:"JobType"`

	// The KmsKeyARN value that you want to associate with this cluster. KmsKeyARN
	// values are created by using the CreateKey (http://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html)
	// API action in AWS Key Management Service (AWS KMS).
	KmsKeyARN *string `type:"string"`

	// The Amazon Simple Notification Service (Amazon SNS) notification settings
	// for this cluster.
	Notification *Notification `type:"structure"`

	// The resources associated with the cluster job. These resources include Amazon
	// S3 buckets and optional AWS Lambda functions written in the Python language.
	//
	// Resources is a required field
	Resources *JobResource `type:"structure" required:"true"`

	// The RoleARN that you want to associate with this cluster. RoleArn values
	// are created by using the CreateRole (http://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html)
	// API action in AWS Identity and Access Management (IAM).
	//
	// RoleARN is a required field
	RoleARN *string `type:"string" required:"true"`

	// The shipping speed for each node in this cluster. This speed doesn't dictate
	// how soon you'll get each Snowball Edge appliance, rather it represents how
	// quickly each appliance moves to its destination while in transit. Regional
	// shipping speeds are as follows:
	//
	//    * In Australia, you have access to express shipping. Typically, appliances
	//    shipped express are delivered in about a day.
	//
	//    * In the European Union (EU), you have access to express shipping. Typically,
	//    Snowball Edges shipped express are delivered in about a day. In addition,
	//    most countries in the EU have access to standard shipping, which typically
	//    takes less than a week, one way.
	//
	//    * In India, Snowball Edges are delivered in one to seven days.
	//
	//    * In the US, you have access to one-day shipping and two-day shipping.
	//
	// ShippingOption is a required field
	ShippingOption *string `type:"string" required:"true" enum:"ShippingOption"`

	// The type of AWS Snowball appliance to use for this cluster. Currently, the
	// only supported appliance type for cluster jobs is EDGE.
	SnowballType *string `type:"string" enum:"Type"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CreateClusterRequest

func (CreateClusterInput) GoString

func (s CreateClusterInput) GoString() string

GoString returns the string representation

func (*CreateClusterInput) SetAddressId

func (s *CreateClusterInput) SetAddressId(v string) *CreateClusterInput

SetAddressId sets the AddressId field's value.

func (*CreateClusterInput) SetDescription

func (s *CreateClusterInput) SetDescription(v string) *CreateClusterInput

SetDescription sets the Description field's value.

func (*CreateClusterInput) SetForwardingAddressId

func (s *CreateClusterInput) SetForwardingAddressId(v string) *CreateClusterInput

SetForwardingAddressId sets the ForwardingAddressId field's value.

func (*CreateClusterInput) SetJobType

func (s *CreateClusterInput) SetJobType(v string) *CreateClusterInput

SetJobType sets the JobType field's value.

func (*CreateClusterInput) SetKmsKeyARN

func (s *CreateClusterInput) SetKmsKeyARN(v string) *CreateClusterInput

SetKmsKeyARN sets the KmsKeyARN field's value.

func (*CreateClusterInput) SetNotification

func (s *CreateClusterInput) SetNotification(v *Notification) *CreateClusterInput

SetNotification sets the Notification field's value.

func (*CreateClusterInput) SetResources

func (s *CreateClusterInput) SetResources(v *JobResource) *CreateClusterInput

SetResources sets the Resources field's value.

func (*CreateClusterInput) SetRoleARN

func (s *CreateClusterInput) SetRoleARN(v string) *CreateClusterInput

SetRoleARN sets the RoleARN field's value.

func (*CreateClusterInput) SetShippingOption

func (s *CreateClusterInput) SetShippingOption(v string) *CreateClusterInput

SetShippingOption sets the ShippingOption field's value.

func (*CreateClusterInput) SetSnowballType

func (s *CreateClusterInput) SetSnowballType(v string) *CreateClusterInput

SetSnowballType sets the SnowballType field's value.

func (CreateClusterInput) String

func (s CreateClusterInput) String() string

String returns the string representation

func (*CreateClusterInput) Validate

func (s *CreateClusterInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateClusterOutput

type CreateClusterOutput struct {

	// The automatically generated ID for a cluster.
	ClusterId *string `min:"39" type:"string"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CreateClusterResult

func (CreateClusterOutput) GoString

func (s CreateClusterOutput) GoString() string

GoString returns the string representation

func (*CreateClusterOutput) SetClusterId

func (s *CreateClusterOutput) SetClusterId(v string) *CreateClusterOutput

SetClusterId sets the ClusterId field's value.

func (CreateClusterOutput) String

func (s CreateClusterOutput) String() string

String returns the string representation

type CreateJobInput

type CreateJobInput struct {

	// The ID for the address that you want the Snowball shipped to.
	AddressId *string `min:"40" type:"string"`

	// The ID of a cluster. If you're creating a job for a node in a cluster, you
	// need to provide only this clusterId value. The other job attributes are inherited
	// from the cluster.
	ClusterId *string `min:"39" type:"string"`

	// Defines an optional description of this specific job, for example Important
	// Photos 2016-08-11.
	Description *string `min:"1" type:"string"`

	// The forwarding address ID for a job. This field is not supported in most
	// regions.
	ForwardingAddressId *string `min:"40" type:"string"`

	// Defines the type of job that you're creating.
	JobType *string `type:"string" enum:"JobType"`

	// The KmsKeyARN that you want to associate with this job. KmsKeyARNs are created
	// using the CreateKey (http://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html)
	// AWS Key Management Service (KMS) API action.
	KmsKeyARN *string `type:"string"`

	// Defines the Amazon Simple Notification Service (Amazon SNS) notification
	// settings for this job.
	Notification *Notification `type:"structure"`

	// Defines the Amazon S3 buckets associated with this job.
	//
	// With IMPORT jobs, you specify the bucket or buckets that your transferred
	// data will be imported into.
	//
	// With EXPORT jobs, you specify the bucket or buckets that your transferred
	// data will be exported from. Optionally, you can also specify a KeyRange value.
	// If you choose to export a range, you define the length of the range by providing
	// either an inclusive BeginMarker value, an inclusive EndMarker value, or both.
	// Ranges are UTF-8 binary sorted.
	Resources *JobResource `type:"structure"`

	// The RoleARN that you want to associate with this job. RoleArns are created
	// using the CreateRole (http://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html)
	// AWS Identity and Access Management (IAM) API action.
	RoleARN *string `type:"string"`

	// The shipping speed for this job. This speed doesn't dictate how soon you'll
	// get the Snowball, rather it represents how quickly the Snowball moves to
	// its destination while in transit. Regional shipping speeds are as follows:
	//
	//    * In Australia, you have access to express shipping. Typically, Snowballs
	//    shipped express are delivered in about a day.
	//
	//    * In the European Union (EU), you have access to express shipping. Typically,
	//    Snowballs shipped express are delivered in about a day. In addition, most
	//    countries in the EU have access to standard shipping, which typically
	//    takes less than a week, one way.
	//
	//    * In India, Snowballs are delivered in one to seven days.
	//
	//    * In the US, you have access to one-day shipping and two-day shipping.
	ShippingOption *string `type:"string" enum:"ShippingOption"`

	// If your job is being created in one of the US regions, you have the option
	// of specifying what size Snowball you'd like for this job. In all other regions,
	// Snowballs come with 80 TB in storage capacity.
	SnowballCapacityPreference *string `type:"string" enum:"Capacity"`

	// The type of AWS Snowball appliance to use for this job. Currently, the only
	// supported appliance type for cluster jobs is EDGE.
	SnowballType *string `type:"string" enum:"Type"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CreateJobRequest

func (CreateJobInput) GoString

func (s CreateJobInput) GoString() string

GoString returns the string representation

func (*CreateJobInput) SetAddressId

func (s *CreateJobInput) SetAddressId(v string) *CreateJobInput

SetAddressId sets the AddressId field's value.

func (*CreateJobInput) SetClusterId

func (s *CreateJobInput) SetClusterId(v string) *CreateJobInput

SetClusterId sets the ClusterId field's value.

func (*CreateJobInput) SetDescription

func (s *CreateJobInput) SetDescription(v string) *CreateJobInput

SetDescription sets the Description field's value.

func (*CreateJobInput) SetForwardingAddressId

func (s *CreateJobInput) SetForwardingAddressId(v string) *CreateJobInput

SetForwardingAddressId sets the ForwardingAddressId field's value.

func (*CreateJobInput) SetJobType

func (s *CreateJobInput) SetJobType(v string) *CreateJobInput

SetJobType sets the JobType field's value.

func (*CreateJobInput) SetKmsKeyARN

func (s *CreateJobInput) SetKmsKeyARN(v string) *CreateJobInput

SetKmsKeyARN sets the KmsKeyARN field's value.

func (*CreateJobInput) SetNotification

func (s *CreateJobInput) SetNotification(v *Notification) *CreateJobInput

SetNotification sets the Notification field's value.

func (*CreateJobInput) SetResources

func (s *CreateJobInput) SetResources(v *JobResource) *CreateJobInput

SetResources sets the Resources field's value.

func (*CreateJobInput) SetRoleARN

func (s *CreateJobInput) SetRoleARN(v string) *CreateJobInput

SetRoleARN sets the RoleARN field's value.

func (*CreateJobInput) SetShippingOption

func (s *CreateJobInput) SetShippingOption(v string) *CreateJobInput

SetShippingOption sets the ShippingOption field's value.

func (*CreateJobInput) SetSnowballCapacityPreference

func (s *CreateJobInput) SetSnowballCapacityPreference(v string) *CreateJobInput

SetSnowballCapacityPreference sets the SnowballCapacityPreference field's value.

func (*CreateJobInput) SetSnowballType

func (s *CreateJobInput) SetSnowballType(v string) *CreateJobInput

SetSnowballType sets the SnowballType field's value.

func (CreateJobInput) String

func (s CreateJobInput) String() string

String returns the string representation

func (*CreateJobInput) Validate

func (s *CreateJobInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateJobOutput

type CreateJobOutput struct {

	// The automatically generated ID for a job, for example JID123e4567-e89b-12d3-a456-426655440000.
	JobId *string `min:"39" type:"string"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CreateJobResult

func (CreateJobOutput) GoString

func (s CreateJobOutput) GoString() string

GoString returns the string representation

func (*CreateJobOutput) SetJobId

func (s *CreateJobOutput) SetJobId(v string) *CreateJobOutput

SetJobId sets the JobId field's value.

func (CreateJobOutput) String

func (s CreateJobOutput) String() string

String returns the string representation

type DataTransfer

type DataTransfer struct {

	// The number of bytes transferred between a Snowball and Amazon S3.
	BytesTransferred *int64 `type:"long"`

	// The number of objects transferred between a Snowball and Amazon S3.
	ObjectsTransferred *int64 `type:"long"`

	// The total bytes of data for a transfer between a Snowball and Amazon S3.
	// This value is set to 0 (zero) until all the keys that will be transferred
	// have been listed.
	TotalBytes *int64 `type:"long"`

	// The total number of objects for a transfer between a Snowball and Amazon
	// S3. This value is set to 0 (zero) until all the keys that will be transferred
	// have been listed.
	TotalObjects *int64 `type:"long"`
	// contains filtered or unexported fields
}

Defines the real-time status of a Snowball's data transfer while the appliance is at AWS. This data is only available while a job has a JobState value of InProgress, for both import and export jobs. Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DataTransfer

func (DataTransfer) GoString

func (s DataTransfer) GoString() string

GoString returns the string representation

func (*DataTransfer) SetBytesTransferred

func (s *DataTransfer) SetBytesTransferred(v int64) *DataTransfer

SetBytesTransferred sets the BytesTransferred field's value.

func (*DataTransfer) SetObjectsTransferred

func (s *DataTransfer) SetObjectsTransferred(v int64) *DataTransfer

SetObjectsTransferred sets the ObjectsTransferred field's value.

func (*DataTransfer) SetTotalBytes

func (s *DataTransfer) SetTotalBytes(v int64) *DataTransfer

SetTotalBytes sets the TotalBytes field's value.

func (*DataTransfer) SetTotalObjects

func (s *DataTransfer) SetTotalObjects(v int64) *DataTransfer

SetTotalObjects sets the TotalObjects field's value.

func (DataTransfer) String

func (s DataTransfer) String() string

String returns the string representation

type DescribeAddressInput

type DescribeAddressInput struct {

	// The automatically generated ID for a specific address.
	//
	// AddressId is a required field
	AddressId *string `min:"40" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeAddressRequest

func (DescribeAddressInput) GoString

func (s DescribeAddressInput) GoString() string

GoString returns the string representation

func (*DescribeAddressInput) SetAddressId

func (s *DescribeAddressInput) SetAddressId(v string) *DescribeAddressInput

SetAddressId sets the AddressId field's value.

func (DescribeAddressInput) String

func (s DescribeAddressInput) String() string

String returns the string representation

func (*DescribeAddressInput) Validate

func (s *DescribeAddressInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DescribeAddressOutput

type DescribeAddressOutput struct {

	// The address that you want the Snowball or Snowballs associated with a specific
	// job to be shipped to.
	Address *Address `type:"structure"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeAddressResult

func (DescribeAddressOutput) GoString

func (s DescribeAddressOutput) GoString() string

GoString returns the string representation

func (*DescribeAddressOutput) SetAddress

SetAddress sets the Address field's value.

func (DescribeAddressOutput) String

func (s DescribeAddressOutput) String() string

String returns the string representation

type DescribeAddressesInput

type DescribeAddressesInput struct {

	// The number of ADDRESS objects to return.
	MaxResults *int64 `type:"integer"`

	// HTTP requests are stateless. To identify what object comes "next" in the
	// list of ADDRESS objects, you have the option of specifying a value for NextToken
	// as the starting point for your list of returned addresses.
	NextToken *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeAddressesRequest

func (DescribeAddressesInput) GoString

func (s DescribeAddressesInput) GoString() string

GoString returns the string representation

func (*DescribeAddressesInput) SetMaxResults

SetMaxResults sets the MaxResults field's value.

func (*DescribeAddressesInput) SetNextToken

SetNextToken sets the NextToken field's value.

func (DescribeAddressesInput) String

func (s DescribeAddressesInput) String() string

String returns the string representation

func (*DescribeAddressesInput) Validate

func (s *DescribeAddressesInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DescribeAddressesOutput

type DescribeAddressesOutput struct {

	// The Snowball shipping addresses that were created for this account.
	Addresses []*Address `type:"list"`

	// HTTP requests are stateless. If you use the automatically generated NextToken
	// value in your next DescribeAddresses call, your list of returned addresses
	// will start from this point in the array.
	NextToken *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeAddressesResult

func (DescribeAddressesOutput) GoString

func (s DescribeAddressesOutput) GoString() string

GoString returns the string representation

func (*DescribeAddressesOutput) SetAddresses

SetAddresses sets the Addresses field's value.

func (*DescribeAddressesOutput) SetNextToken

SetNextToken sets the NextToken field's value.

func (DescribeAddressesOutput) String

func (s DescribeAddressesOutput) String() string

String returns the string representation

type DescribeClusterInput

type DescribeClusterInput struct {

	// The automatically generated ID for a cluster.
	//
	// ClusterId is a required field
	ClusterId *string `min:"39" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeClusterRequest

func (DescribeClusterInput) GoString

func (s DescribeClusterInput) GoString() string

GoString returns the string representation

func (*DescribeClusterInput) SetClusterId

func (s *DescribeClusterInput) SetClusterId(v string) *DescribeClusterInput

SetClusterId sets the ClusterId field's value.

func (DescribeClusterInput) String

func (s DescribeClusterInput) String() string

String returns the string representation

func (*DescribeClusterInput) Validate

func (s *DescribeClusterInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DescribeClusterOutput

type DescribeClusterOutput struct {

	// Information about a specific cluster, including shipping information, cluster
	// status, and other important metadata.
	ClusterMetadata *ClusterMetadata `type:"structure"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeClusterResult

func (DescribeClusterOutput) GoString

func (s DescribeClusterOutput) GoString() string

GoString returns the string representation

func (*DescribeClusterOutput) SetClusterMetadata

func (s *DescribeClusterOutput) SetClusterMetadata(v *ClusterMetadata) *DescribeClusterOutput

SetClusterMetadata sets the ClusterMetadata field's value.

func (DescribeClusterOutput) String

func (s DescribeClusterOutput) String() string

String returns the string representation

type DescribeJobInput

type DescribeJobInput struct {

	// The automatically generated ID for a job, for example JID123e4567-e89b-12d3-a456-426655440000.
	//
	// JobId is a required field
	JobId *string `min:"39" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeJobRequest

func (DescribeJobInput) GoString

func (s DescribeJobInput) GoString() string

GoString returns the string representation

func (*DescribeJobInput) SetJobId

func (s *DescribeJobInput) SetJobId(v string) *DescribeJobInput

SetJobId sets the JobId field's value.

func (DescribeJobInput) String

func (s DescribeJobInput) String() string

String returns the string representation

func (*DescribeJobInput) Validate

func (s *DescribeJobInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DescribeJobOutput

type DescribeJobOutput struct {

	// Information about a specific job, including shipping information, job status,
	// and other important metadata.
	JobMetadata *JobMetadata `type:"structure"`

	// Information about a specific job part (in the case of an export job), including
	// shipping information, job status, and other important metadata.
	SubJobMetadata []*JobMetadata `type:"list"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeJobResult

func (DescribeJobOutput) GoString

func (s DescribeJobOutput) GoString() string

GoString returns the string representation

func (*DescribeJobOutput) SetJobMetadata

func (s *DescribeJobOutput) SetJobMetadata(v *JobMetadata) *DescribeJobOutput

SetJobMetadata sets the JobMetadata field's value.

func (*DescribeJobOutput) SetSubJobMetadata

func (s *DescribeJobOutput) SetSubJobMetadata(v []*JobMetadata) *DescribeJobOutput

SetSubJobMetadata sets the SubJobMetadata field's value.

func (DescribeJobOutput) String

func (s DescribeJobOutput) String() string

String returns the string representation

type EventTriggerDefinition

type EventTriggerDefinition struct {

	// The Amazon Resource Name (ARN) for any local Amazon S3 resource that is an
	// AWS Lambda function's event trigger associated with this job.
	EventResourceARN *string `type:"string"`
	// contains filtered or unexported fields
}

The container for the EventTriggerDefinition$EventResourceARN. Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/EventTriggerDefinition

func (EventTriggerDefinition) GoString

func (s EventTriggerDefinition) GoString() string

GoString returns the string representation

func (*EventTriggerDefinition) SetEventResourceARN

func (s *EventTriggerDefinition) SetEventResourceARN(v string) *EventTriggerDefinition

SetEventResourceARN sets the EventResourceARN field's value.

func (EventTriggerDefinition) String

func (s EventTriggerDefinition) String() string

String returns the string representation

type GetJobManifestInput

type GetJobManifestInput struct {

	// The ID for a job that you want to get the manifest file for, for example
	// JID123e4567-e89b-12d3-a456-426655440000.
	//
	// JobId is a required field
	JobId *string `min:"39" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/GetJobManifestRequest

func (GetJobManifestInput) GoString

func (s GetJobManifestInput) GoString() string

GoString returns the string representation

func (*GetJobManifestInput) SetJobId

SetJobId sets the JobId field's value.

func (GetJobManifestInput) String

func (s GetJobManifestInput) String() string

String returns the string representation

func (*GetJobManifestInput) Validate

func (s *GetJobManifestInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetJobManifestOutput

type GetJobManifestOutput struct {

	// The Amazon S3 presigned URL for the manifest file associated with the specified
	// JobId value.
	ManifestURI *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/GetJobManifestResult

func (GetJobManifestOutput) GoString

func (s GetJobManifestOutput) GoString() string

GoString returns the string representation

func (*GetJobManifestOutput) SetManifestURI

func (s *GetJobManifestOutput) SetManifestURI(v string) *GetJobManifestOutput

SetManifestURI sets the ManifestURI field's value.

func (GetJobManifestOutput) String

func (s GetJobManifestOutput) String() string

String returns the string representation

type GetJobUnlockCodeInput

type GetJobUnlockCodeInput struct {

	// The ID for the job that you want to get the UnlockCode value for, for example
	// JID123e4567-e89b-12d3-a456-426655440000.
	//
	// JobId is a required field
	JobId *string `min:"39" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/GetJobUnlockCodeRequest

func (GetJobUnlockCodeInput) GoString

func (s GetJobUnlockCodeInput) GoString() string

GoString returns the string representation

func (*GetJobUnlockCodeInput) SetJobId

SetJobId sets the JobId field's value.

func (GetJobUnlockCodeInput) String

func (s GetJobUnlockCodeInput) String() string

String returns the string representation

func (*GetJobUnlockCodeInput) Validate

func (s *GetJobUnlockCodeInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetJobUnlockCodeOutput

type GetJobUnlockCodeOutput struct {

	// The UnlockCode value for the specified job. The UnlockCode value can be accessed
	// for up to 90 days after the job has been created.
	UnlockCode *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/GetJobUnlockCodeResult

func (GetJobUnlockCodeOutput) GoString

func (s GetJobUnlockCodeOutput) GoString() string

GoString returns the string representation

func (*GetJobUnlockCodeOutput) SetUnlockCode

SetUnlockCode sets the UnlockCode field's value.

func (GetJobUnlockCodeOutput) String

func (s GetJobUnlockCodeOutput) String() string

String returns the string representation

type GetSnowballUsageInput

type GetSnowballUsageInput struct {
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/GetSnowballUsageRequest

func (GetSnowballUsageInput) GoString

func (s GetSnowballUsageInput) GoString() string

GoString returns the string representation

func (GetSnowballUsageInput) String

func (s GetSnowballUsageInput) String() string

String returns the string representation

type GetSnowballUsageOutput

type GetSnowballUsageOutput struct {

	// The service limit for number of Snowballs this account can have at once.
	// The default service limit is 1 (one).
	SnowballLimit *int64 `type:"integer"`

	// The number of Snowballs that this account is currently using.
	SnowballsInUse *int64 `type:"integer"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/GetSnowballUsageResult

func (GetSnowballUsageOutput) GoString

func (s GetSnowballUsageOutput) GoString() string

GoString returns the string representation

func (*GetSnowballUsageOutput) SetSnowballLimit

func (s *GetSnowballUsageOutput) SetSnowballLimit(v int64) *GetSnowballUsageOutput

SetSnowballLimit sets the SnowballLimit field's value.

func (*GetSnowballUsageOutput) SetSnowballsInUse

func (s *GetSnowballUsageOutput) SetSnowballsInUse(v int64) *GetSnowballUsageOutput

SetSnowballsInUse sets the SnowballsInUse field's value.

func (GetSnowballUsageOutput) String

func (s GetSnowballUsageOutput) String() string

String returns the string representation

type JobListEntry

type JobListEntry struct {

	// The creation date for this job.
	CreationDate *time.Time `type:"timestamp" timestampFormat:"unix"`

	// The optional description of this specific job, for example Important Photos
	// 2016-08-11.
	Description *string `min:"1" type:"string"`

	// A value that indicates that this job is a master job. A master job represents
	// a successful request to create an export job. Master jobs aren't associated
	// with any Snowballs. Instead, each master job will have at least one job part,
	// and each job part is associated with a Snowball. It might take some time
	// before the job parts associated with a particular master job are listed,
	// because they are created after the master job is created.
	IsMaster *bool `type:"boolean"`

	// The automatically generated ID for a job, for example JID123e4567-e89b-12d3-a456-426655440000.
	JobId *string `min:"1" type:"string"`

	// The current state of this job.
	JobState *string `type:"string" enum:"JobState"`

	// The type of job.
	JobType *string `type:"string" enum:"JobType"`

	// The type of appliance used with this job.
	SnowballType *string `type:"string" enum:"Type"`
	// contains filtered or unexported fields
}

Each 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 an export job. Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/JobListEntry

func (JobListEntry) GoString

func (s JobListEntry) GoString() string

GoString returns the string representation

func (*JobListEntry) SetCreationDate

func (s *JobListEntry) SetCreationDate(v time.Time) *JobListEntry

SetCreationDate sets the CreationDate field's value.

func (*JobListEntry) SetDescription

func (s *JobListEntry) SetDescription(v string) *JobListEntry

SetDescription sets the Description field's value.

func (*JobListEntry) SetIsMaster

func (s *JobListEntry) SetIsMaster(v bool) *JobListEntry

SetIsMaster sets the IsMaster field's value.

func (*JobListEntry) SetJobId

func (s *JobListEntry) SetJobId(v string) *JobListEntry

SetJobId sets the JobId field's value.

func (*JobListEntry) SetJobState

func (s *JobListEntry) SetJobState(v string) *JobListEntry

SetJobState sets the JobState field's value.

func (*JobListEntry) SetJobType

func (s *JobListEntry) SetJobType(v string) *JobListEntry

SetJobType sets the JobType field's value.

func (*JobListEntry) SetSnowballType

func (s *JobListEntry) SetSnowballType(v string) *JobListEntry

SetSnowballType sets the SnowballType field's value.

func (JobListEntry) String

func (s JobListEntry) String() string

String returns the string representation

type JobLogs

type JobLogs struct {

	// A link to an Amazon S3 presigned URL where the job completion report is located.
	JobCompletionReportURI *string `min:"1" type:"string"`

	// A link to an Amazon S3 presigned URL where the job failure log is located.
	JobFailureLogURI *string `min:"1" type:"string"`

	// A link to an Amazon S3 presigned URL where the job success log is located.
	JobSuccessLogURI *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains job logs. Whenever Snowball is used to import data into or export data out of Amazon S3, you'll have the option of downloading a PDF job report. Job logs are returned as a part of the response syntax of the DescribeJob action in the JobMetadata data type. The job logs can be accessed for up to 60 minutes after this request has been made. To access any of the job logs after 60 minutes have passed, you'll have to make another call to the DescribeJob action.

For import jobs, the PDF job report becomes available at the end of the import process. For export jobs, your job report typically becomes available while the Snowball for your job part is being delivered to you.

The job report provides you insight into the state of your Amazon S3 data transfer. The report includes details about your job or job part for your records.

For deeper visibility into the status of your transferred objects, you can look at the two associated logs: a success log and a failure log. The logs are saved in comma-separated value (CSV) format, and the name of each log includes the ID of the job or job part that the log describes. Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/JobLogs

func (JobLogs) GoString

func (s JobLogs) GoString() string

GoString returns the string representation

func (*JobLogs) SetJobCompletionReportURI

func (s *JobLogs) SetJobCompletionReportURI(v string) *JobLogs

SetJobCompletionReportURI sets the JobCompletionReportURI field's value.

func (*JobLogs) SetJobFailureLogURI

func (s *JobLogs) SetJobFailureLogURI(v string) *JobLogs

SetJobFailureLogURI sets the JobFailureLogURI field's value.

func (*JobLogs) SetJobSuccessLogURI

func (s *JobLogs) SetJobSuccessLogURI(v string) *JobLogs

SetJobSuccessLogURI sets the JobSuccessLogURI field's value.

func (JobLogs) String

func (s JobLogs) String() string

String returns the string representation

type JobMetadata

type JobMetadata struct {

	// The ID for the address that you want the Snowball shipped to.
	AddressId *string `min:"40" type:"string"`

	// The 39-character ID for the cluster, for example CID123e4567-e89b-12d3-a456-426655440000.
	ClusterId *string `min:"1" type:"string"`

	// The creation date for this job.
	CreationDate *time.Time `type:"timestamp" timestampFormat:"unix"`

	// A value that defines the real-time status of a Snowball's data transfer while
	// the appliance is at AWS. This data is only available while a job has a JobState
	// value of InProgress, for both import and export jobs.
	DataTransferProgress *DataTransfer `type:"structure"`

	// The description of the job, provided at job creation.
	Description *string `min:"1" type:"string"`

	// The ID of the address that you want a job shipped to, after it will be shipped
	// to its primary address. This field is not supported in most regions.
	ForwardingAddressId *string `min:"40" type:"string"`

	// The automatically generated ID for a job, for example JID123e4567-e89b-12d3-a456-426655440000.
	JobId *string `min:"1" type:"string"`

	// Links to Amazon S3 presigned URLs for the job report and logs. For import
	// jobs, the PDF job report becomes available at the end of the import process.
	// For export jobs, your job report typically becomes available while the Snowball
	// for your job part is being delivered to you.
	JobLogInfo *JobLogs `type:"structure"`

	// The current status of the jobs.
	JobState *string `type:"string" enum:"JobState"`

	// The type of job.
	JobType *string `type:"string" enum:"JobType"`

	// The Amazon Resource Name (ARN) for the AWS Key Management Service (AWS KMS)
	// key associated with this job. This ARN was created using the CreateKey (http://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html)
	// API action in AWS KMS.
	KmsKeyARN *string `type:"string"`

	// The Amazon Simple Notification Service (Amazon SNS) notification settings
	// associated with a specific job. The Notification object is returned as a
	// part of the response syntax of the DescribeJob action in the JobMetadata
	// data type.
	Notification *Notification `type:"structure"`

	// An array of S3Resource objects. Each S3Resource object represents an Amazon
	// S3 bucket that your transferred data will be exported from or imported into.
	Resources *JobResource `type:"structure"`

	// The role ARN associated with this job. This ARN was created using the CreateRole
	// (http://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html)
	// API action in AWS Identity and Access Management (IAM).
	RoleARN *string `type:"string"`

	// A job's shipping information, including inbound and outbound tracking numbers
	// and shipping speed options.
	ShippingDetails *ShippingDetails `type:"structure"`

	// The Snowball capacity preference for this job, specified at job creation.
	// In US regions, you can choose between 50 TB and 80 TB Snowballs. All other
	// regions use 80 TB capacity Snowballs.
	SnowballCapacityPreference *string `type:"string" enum:"Capacity"`

	// The type of appliance used with this job.
	SnowballType *string `type:"string" enum:"Type"`
	// contains filtered or unexported fields
}

Contains information about a specific job including shipping information, job status, and other important metadata. This information is returned as a part of the response syntax of the DescribeJob action. Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/JobMetadata

func (JobMetadata) GoString

func (s JobMetadata) GoString() string

GoString returns the string representation

func (*JobMetadata) SetAddressId

func (s *JobMetadata) SetAddressId(v string) *JobMetadata

SetAddressId sets the AddressId field's value.

func (*JobMetadata) SetClusterId

func (s *JobMetadata) SetClusterId(v string) *JobMetadata

SetClusterId sets the ClusterId field's value.

func (*JobMetadata) SetCreationDate

func (s *JobMetadata) SetCreationDate(v time.Time) *JobMetadata

SetCreationDate sets the CreationDate field's value.

func (*JobMetadata) SetDataTransferProgress

func (s *JobMetadata) SetDataTransferProgress(v *DataTransfer) *JobMetadata

SetDataTransferProgress sets the DataTransferProgress field's value.

func (*JobMetadata) SetDescription

func (s *JobMetadata) SetDescription(v string) *JobMetadata

SetDescription sets the Description field's value.

func (*JobMetadata) SetForwardingAddressId

func (s *JobMetadata) SetForwardingAddressId(v string) *JobMetadata

SetForwardingAddressId sets the ForwardingAddressId field's value.

func (*JobMetadata) SetJobId

func (s *JobMetadata) SetJobId(v string) *JobMetadata

SetJobId sets the JobId field's value.

func (*JobMetadata) SetJobLogInfo

func (s *JobMetadata) SetJobLogInfo(v *JobLogs) *JobMetadata

SetJobLogInfo sets the JobLogInfo field's value.

func (*JobMetadata) SetJobState

func (s *JobMetadata) SetJobState(v string) *JobMetadata

SetJobState sets the JobState field's value.

func (*JobMetadata) SetJobType

func (s *JobMetadata) SetJobType(v string) *JobMetadata

SetJobType sets the JobType field's value.

func (*JobMetadata) SetKmsKeyARN

func (s *JobMetadata) SetKmsKeyARN(v string) *JobMetadata

SetKmsKeyARN sets the KmsKeyARN field's value.

func (*JobMetadata) SetNotification

func (s *JobMetadata) SetNotification(v *Notification) *JobMetadata

SetNotification sets the Notification field's value.

func (*JobMetadata) SetResources

func (s *JobMetadata) SetResources(v *JobResource) *JobMetadata

SetResources sets the Resources field's value.

func (*JobMetadata) SetRoleARN

func (s *JobMetadata) SetRoleARN(v string) *JobMetadata

SetRoleARN sets the RoleARN field's value.

func (*JobMetadata) SetShippingDetails

func (s *JobMetadata) SetShippingDetails(v *ShippingDetails) *JobMetadata

SetShippingDetails sets the ShippingDetails field's value.

func (*JobMetadata) SetSnowballCapacityPreference

func (s *JobMetadata) SetSnowballCapacityPreference(v string) *JobMetadata

SetSnowballCapacityPreference sets the SnowballCapacityPreference field's value.

func (*JobMetadata) SetSnowballType

func (s *JobMetadata) SetSnowballType(v string) *JobMetadata

SetSnowballType sets the SnowballType field's value.

func (JobMetadata) String

func (s JobMetadata) String() string

String returns the string representation

type JobResource

type JobResource struct {

	// The Python-language Lambda functions for this job.
	LambdaResources []*LambdaResource `type:"list"`

	// An array of S3Resource objects.
	S3Resources []*S3Resource `type:"list"`
	// contains filtered or unexported fields
}

Contains an array of S3Resource objects. Each S3Resource object represents an Amazon S3 bucket that your transferred data will be exported from or imported into. Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/JobResource

func (JobResource) GoString

func (s JobResource) GoString() string

GoString returns the string representation

func (*JobResource) SetLambdaResources

func (s *JobResource) SetLambdaResources(v []*LambdaResource) *JobResource

SetLambdaResources sets the LambdaResources field's value.

func (*JobResource) SetS3Resources

func (s *JobResource) SetS3Resources(v []*S3Resource) *JobResource

SetS3Resources sets the S3Resources field's value.

func (JobResource) String

func (s JobResource) String() string

String returns the string representation

func (*JobResource) Validate

func (s *JobResource) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type KeyRange

type KeyRange struct {

	// The key that starts an optional key range for an export job. Ranges are inclusive
	// and UTF-8 binary sorted.
	BeginMarker *string `min:"1" type:"string"`

	// The key that ends an optional key range for an export job. Ranges are inclusive
	// and UTF-8 binary sorted.
	EndMarker *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains a key range. For export jobs, a S3Resource object can have an optional KeyRange value. The length of the range is defined at job creation, and has either an inclusive BeginMarker, an inclusive EndMarker, or both. Ranges are UTF-8 binary sorted. Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/KeyRange

func (KeyRange) GoString

func (s KeyRange) GoString() string

GoString returns the string representation

func (*KeyRange) SetBeginMarker

func (s *KeyRange) SetBeginMarker(v string) *KeyRange

SetBeginMarker sets the BeginMarker field's value.

func (*KeyRange) SetEndMarker

func (s *KeyRange) SetEndMarker(v string) *KeyRange

SetEndMarker sets the EndMarker field's value.

func (KeyRange) String

func (s KeyRange) String() string

String returns the string representation

func (*KeyRange) Validate

func (s *KeyRange) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type LambdaResource

type LambdaResource struct {

	// The array of ARNs for S3Resource objects to trigger the LambdaResource objects
	// associated with this job.
	EventTriggers []*EventTriggerDefinition `type:"list"`

	// An Amazon Resource Name (ARN) that represents an AWS Lambda function to be
	// triggered by PUT object actions on the associated local Amazon S3 resource.
	LambdaArn *string `type:"string"`
	// contains filtered or unexported fields
}

Identifies Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/LambdaResource

func (LambdaResource) GoString

func (s LambdaResource) GoString() string

GoString returns the string representation

func (*LambdaResource) SetEventTriggers

func (s *LambdaResource) SetEventTriggers(v []*EventTriggerDefinition) *LambdaResource

SetEventTriggers sets the EventTriggers field's value.

func (*LambdaResource) SetLambdaArn

func (s *LambdaResource) SetLambdaArn(v string) *LambdaResource

SetLambdaArn sets the LambdaArn field's value.

func (LambdaResource) String

func (s LambdaResource) String() string

String returns the string representation

type ListClusterJobsInput

type ListClusterJobsInput struct {

	// The 39-character ID for the cluster that you want to list, for example CID123e4567-e89b-12d3-a456-426655440000.
	//
	// ClusterId is a required field
	ClusterId *string `min:"39" type:"string" required:"true"`

	// The number of JobListEntry objects to return.
	MaxResults *int64 `type:"integer"`

	// HTTP requests are stateless. To identify what object comes "next" in the
	// list of JobListEntry objects, you have the option of specifying NextToken
	// as the starting point for your returned list.
	NextToken *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ListClusterJobsRequest

func (ListClusterJobsInput) GoString

func (s ListClusterJobsInput) GoString() string

GoString returns the string representation

func (*ListClusterJobsInput) SetClusterId

func (s *ListClusterJobsInput) SetClusterId(v string) *ListClusterJobsInput

SetClusterId sets the ClusterId field's value.

func (*ListClusterJobsInput) SetMaxResults

func (s *ListClusterJobsInput) SetMaxResults(v int64) *ListClusterJobsInput

SetMaxResults sets the MaxResults field's value.

func (*ListClusterJobsInput) SetNextToken

func (s *ListClusterJobsInput) SetNextToken(v string) *ListClusterJobsInput

SetNextToken sets the NextToken field's value.

func (ListClusterJobsInput) String

func (s ListClusterJobsInput) String() string

String returns the string representation

func (*ListClusterJobsInput) Validate

func (s *ListClusterJobsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListClusterJobsOutput

type ListClusterJobsOutput struct {

	// Each 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.
	JobListEntries []*JobListEntry `type:"list"`

	// HTTP requests are stateless. If you use the automatically generated NextToken
	// value in your next ListClusterJobsResult call, your list of returned jobs
	// will start from this point in the array.
	NextToken *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ListClusterJobsResult

func (ListClusterJobsOutput) GoString

func (s ListClusterJobsOutput) GoString() string

GoString returns the string representation

func (*ListClusterJobsOutput) SetJobListEntries

func (s *ListClusterJobsOutput) SetJobListEntries(v []*JobListEntry) *ListClusterJobsOutput

SetJobListEntries sets the JobListEntries field's value.

func (*ListClusterJobsOutput) SetNextToken

SetNextToken sets the NextToken field's value.

func (ListClusterJobsOutput) String

func (s ListClusterJobsOutput) String() string

String returns the string representation

type ListClustersInput

type ListClustersInput struct {

	// The number of ClusterListEntry objects to return.
	MaxResults *int64 `type:"integer"`

	// HTTP requests are stateless. To identify what object comes "next" in the
	// list of ClusterListEntry objects, you have the option of specifying NextToken
	// as the starting point for your returned list.
	NextToken *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ListClustersRequest

func (ListClustersInput) GoString

func (s ListClustersInput) GoString() string

GoString returns the string representation

func (*ListClustersInput) SetMaxResults

func (s *ListClustersInput) SetMaxResults(v int64) *ListClustersInput

SetMaxResults sets the MaxResults field's value.

func (*ListClustersInput) SetNextToken

func (s *ListClustersInput) SetNextToken(v string) *ListClustersInput

SetNextToken sets the NextToken field's value.

func (ListClustersInput) String

func (s ListClustersInput) String() string

String returns the string representation

func (*ListClustersInput) Validate

func (s *ListClustersInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListClustersOutput

type ListClustersOutput struct {

	// Each ClusterListEntry object contains a cluster's state, a cluster's ID,
	// and other important status information.
	ClusterListEntries []*ClusterListEntry `type:"list"`

	// HTTP requests are stateless. If you use the automatically generated NextToken
	// value in your next ClusterListEntry call, your list of returned clusters
	// will start from this point in the array.
	NextToken *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ListClustersResult

func (ListClustersOutput) GoString

func (s ListClustersOutput) GoString() string

GoString returns the string representation

func (*ListClustersOutput) SetClusterListEntries

func (s *ListClustersOutput) SetClusterListEntries(v []*ClusterListEntry) *ListClustersOutput

SetClusterListEntries sets the ClusterListEntries field's value.

func (*ListClustersOutput) SetNextToken

func (s *ListClustersOutput) SetNextToken(v string) *ListClustersOutput

SetNextToken sets the NextToken field's value.

func (ListClustersOutput) String

func (s ListClustersOutput) String() string

String returns the string representation

type ListJobsInput

type ListJobsInput struct {

	// The number of JobListEntry objects to return.
	MaxResults *int64 `type:"integer"`

	// HTTP requests are stateless. To identify what object comes "next" in the
	// list of JobListEntry objects, you have the option of specifying NextToken
	// as the starting point for your returned list.
	NextToken *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ListJobsRequest

func (ListJobsInput) GoString

func (s ListJobsInput) GoString() string

GoString returns the string representation

func (*ListJobsInput) SetMaxResults

func (s *ListJobsInput) SetMaxResults(v int64) *ListJobsInput

SetMaxResults sets the MaxResults field's value.

func (*ListJobsInput) SetNextToken

func (s *ListJobsInput) SetNextToken(v string) *ListJobsInput

SetNextToken sets the NextToken field's value.

func (ListJobsInput) String

func (s ListJobsInput) String() string

String returns the string representation

func (*ListJobsInput) Validate

func (s *ListJobsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListJobsOutput

type ListJobsOutput struct {

	// Each 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.
	JobListEntries []*JobListEntry `type:"list"`

	// HTTP requests are stateless. If you use this automatically generated NextToken
	// value in your next ListJobs call, your returned JobListEntry objects will
	// start from this point in the array.
	NextToken *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ListJobsResult

func (ListJobsOutput) GoString

func (s ListJobsOutput) GoString() string

GoString returns the string representation

func (*ListJobsOutput) SetJobListEntries

func (s *ListJobsOutput) SetJobListEntries(v []*JobListEntry) *ListJobsOutput

SetJobListEntries sets the JobListEntries field's value.

func (*ListJobsOutput) SetNextToken

func (s *ListJobsOutput) SetNextToken(v string) *ListJobsOutput

SetNextToken sets the NextToken field's value.

func (ListJobsOutput) String

func (s ListJobsOutput) String() string

String returns the string representation

type Notification

type Notification struct {

	// The list of job states that will trigger a notification for this job.
	JobStatesToNotify []*string `type:"list"`

	// Any change in job state will trigger a notification for this job.
	NotifyAll *bool `type:"boolean"`

	// The new SNS TopicArn that you want to associate with this job. You can create
	// Amazon Resource Names (ARNs) for topics by using the CreateTopic (http://docs.aws.amazon.com/sns/latest/api/API_CreateTopic.html)
	// Amazon SNS API action.
	//
	// You can subscribe email addresses to an Amazon SNS topic through the AWS
	// Management Console, or by using the Subscribe (http://docs.aws.amazon.com/sns/latest/api/API_Subscribe.html)
	// AWS Simple Notification Service (SNS) API action.
	SnsTopicARN *string `type:"string"`
	// contains filtered or unexported fields
}

The Amazon Simple Notification Service (Amazon SNS) notification settings associated with a specific job. The Notification object is returned as a part of the response syntax of the DescribeJob action in the JobMetadata data type.

When the notification settings are defined during job creation, you can choose to notify based on a specific set of job states using the JobStatesToNotify array of strings, or you can specify that you want to have Amazon SNS notifications sent out for all job states with NotifyAll set to true. Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/Notification

func (Notification) GoString

func (s Notification) GoString() string

GoString returns the string representation

func (*Notification) SetJobStatesToNotify

func (s *Notification) SetJobStatesToNotify(v []*string) *Notification

SetJobStatesToNotify sets the JobStatesToNotify field's value.

func (*Notification) SetNotifyAll

func (s *Notification) SetNotifyAll(v bool) *Notification

SetNotifyAll sets the NotifyAll field's value.

func (*Notification) SetSnsTopicARN

func (s *Notification) SetSnsTopicARN(v string) *Notification

SetSnsTopicARN sets the SnsTopicARN field's value.

func (Notification) String

func (s Notification) String() string

String returns the string representation

type S3Resource

type S3Resource struct {

	// The Amazon Resource Name (ARN) of an Amazon S3 bucket.
	BucketArn *string `type:"string"`

	// For export jobs, you can provide an optional KeyRange within a specific Amazon
	// S3 bucket. The length of the range is defined at job creation, and has either
	// an inclusive BeginMarker, an inclusive EndMarker, or both. Ranges are UTF-8
	// binary sorted.
	KeyRange *KeyRange `type:"structure"`
	// contains filtered or unexported fields
}

Each S3Resource object represents an Amazon S3 bucket that your transferred data will be exported from or imported into. For export jobs, this object can have an optional KeyRange value. The length of the range is defined at job creation, and has either an inclusive BeginMarker, an inclusive EndMarker, or both. Ranges are UTF-8 binary sorted. Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/S3Resource

func (S3Resource) GoString

func (s S3Resource) GoString() string

GoString returns the string representation

func (*S3Resource) SetBucketArn

func (s *S3Resource) SetBucketArn(v string) *S3Resource

SetBucketArn sets the BucketArn field's value.

func (*S3Resource) SetKeyRange

func (s *S3Resource) SetKeyRange(v *KeyRange) *S3Resource

SetKeyRange sets the KeyRange field's value.

func (S3Resource) String

func (s S3Resource) String() string

String returns the string representation

func (*S3Resource) Validate

func (s *S3Resource) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type Shipment

type Shipment struct {

	// Status information for a shipment.
	Status *string `min:"1" type:"string"`

	// The tracking number for this job. Using this tracking number with your region's
	// carrier's website, you can track a Snowball as the carrier transports it.
	//
	// For India, the carrier is Amazon Logistics. For all other regions, UPS is
	// the carrier.
	TrackingNumber *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

The Status and TrackingNumber information for an inbound or outbound shipment. Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/Shipment

func (Shipment) GoString

func (s Shipment) GoString() string

GoString returns the string representation

func (*Shipment) SetStatus

func (s *Shipment) SetStatus(v string) *Shipment

SetStatus sets the Status field's value.

func (*Shipment) SetTrackingNumber

func (s *Shipment) SetTrackingNumber(v string) *Shipment

SetTrackingNumber sets the TrackingNumber field's value.

func (Shipment) String

func (s Shipment) String() string

String returns the string representation

type ShippingDetails

type ShippingDetails struct {

	// The Status and TrackingNumber values for a Snowball being delivered to the
	// address that you specified for a particular job.
	InboundShipment *Shipment `type:"structure"`

	// The Status and TrackingNumber values for a Snowball being returned to AWS
	// for a particular job.
	OutboundShipment *Shipment `type:"structure"`

	// The shipping speed for a particular job. This speed doesn't dictate how soon
	// you'll get the Snowball from the job's creation date. This speed represents
	// how quickly it moves to its destination while in transit. Regional shipping
	// speeds are as follows:
	//
	//    * In Australia, you have access to express shipping. Typically, Snowballs
	//    shipped express are delivered in about a day.
	//
	//    * In the European Union (EU), you have access to express shipping. Typically,
	//    Snowballs shipped express are delivered in about a day. In addition, most
	//    countries in the EU have access to standard shipping, which typically
	//    takes less than a week, one way.
	//
	//    * In India, Snowballs are delivered in one to seven days.
	//
	//    * In the United States of America (US), you have access to one-day shipping
	//    and two-day shipping.
	ShippingOption *string `type:"string" enum:"ShippingOption"`
	// contains filtered or unexported fields
}

A job's shipping information, including inbound and outbound tracking numbers and shipping speed options. Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ShippingDetails

func (ShippingDetails) GoString

func (s ShippingDetails) GoString() string

GoString returns the string representation

func (*ShippingDetails) SetInboundShipment

func (s *ShippingDetails) SetInboundShipment(v *Shipment) *ShippingDetails

SetInboundShipment sets the InboundShipment field's value.

func (*ShippingDetails) SetOutboundShipment

func (s *ShippingDetails) SetOutboundShipment(v *Shipment) *ShippingDetails

SetOutboundShipment sets the OutboundShipment field's value.

func (*ShippingDetails) SetShippingOption

func (s *ShippingDetails) SetShippingOption(v string) *ShippingDetails

SetShippingOption sets the ShippingOption field's value.

func (ShippingDetails) String

func (s ShippingDetails) String() string

String returns the string representation

type Snowball

type Snowball struct {
	*client.Client
}

Snowball provides the API operation methods for making requests to Amazon Import/Export Snowball. See this package's package overview docs for details on the service.

Snowball methods are safe to use concurrently. It is not safe to modify mutate any of the struct's properties though.

func New

func New(p client.ConfigProvider, cfgs ...*aws.Config) *Snowball

New creates a new instance of the Snowball client with a session. If additional configuration is needed for the client instance use the optional aws.Config parameter to add your extra config.

Example:

// Create a Snowball client from just a session.
svc := snowball.New(mySession)

// Create a Snowball client with additional configuration
svc := snowball.New(mySession, aws.NewConfig().WithRegion("us-west-2"))

func (*Snowball) CancelCluster

func (c *Snowball) CancelCluster(input *CancelClusterInput) (*CancelClusterOutput, error)

CancelCluster API operation for Amazon Import/Export Snowball.

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

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Import/Export Snowball's API operation CancelCluster for usage and error information.

Returned Error Codes:

* ErrCodeKMSRequestFailedException "KMSRequestFailedException"
The provided AWS Key Management Service key lacks the permissions to perform
the specified CreateJob or UpdateJob action.

* ErrCodeInvalidJobStateException "InvalidJobStateException"
The action can't be performed because the job's current state doesn't allow
that action to be performed.

* ErrCodeInvalidResourceException "InvalidResourceException"
The specified resource can't be found. Check the information you provided
in your last request, and try again.

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CancelCluster

Example (Shared00)

To cancel a cluster job

This operation cancels a cluster job. You can only cancel a cluster job while it's in the AwaitingQuorum status.

package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/snowball"
)

func main() {
	svc := snowball.New(session.New())
	input := &snowball.CancelClusterInput{
		ClusterId: aws.String("CID123e4567-e89b-12d3-a456-426655440000"),
	}

	result, err := svc.CancelCluster(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case snowball.ErrCodeKMSRequestFailedException:
				fmt.Println(snowball.ErrCodeKMSRequestFailedException, aerr.Error())
			case snowball.ErrCodeInvalidJobStateException:
				fmt.Println(snowball.ErrCodeInvalidJobStateException, aerr.Error())
			case snowball.ErrCodeInvalidResourceException:
				fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Snowball) CancelClusterRequest

func (c *Snowball) CancelClusterRequest(input *CancelClusterInput) (req *request.Request, output *CancelClusterOutput)

CancelClusterRequest generates a "aws/request.Request" representing the client's request for the CancelCluster operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See CancelCluster for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the CancelCluster method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the CancelClusterRequest method.
req, resp := client.CancelClusterRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CancelCluster

func (*Snowball) CancelClusterWithContext

func (c *Snowball) CancelClusterWithContext(ctx aws.Context, input *CancelClusterInput, opts ...request.Option) (*CancelClusterOutput, error)

CancelClusterWithContext is the same as CancelCluster with the addition of the ability to pass a context and additional request options.

See CancelCluster for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Snowball) CancelJob

func (c *Snowball) CancelJob(input *CancelJobInput) (*CancelJobOutput, error)

CancelJob API operation for Amazon Import/Export Snowball.

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

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Import/Export Snowball's API operation CancelJob for usage and error information.

Returned Error Codes:

* ErrCodeInvalidResourceException "InvalidResourceException"
The specified resource can't be found. Check the information you provided
in your last request, and try again.

* ErrCodeInvalidJobStateException "InvalidJobStateException"
The action can't be performed because the job's current state doesn't allow
that action to be performed.

* ErrCodeKMSRequestFailedException "KMSRequestFailedException"
The provided AWS Key Management Service key lacks the permissions to perform
the specified CreateJob or UpdateJob action.

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CancelJob

Example (Shared00)

To cancel a job for a Snowball device

This operation cancels a job. You can only cancel a job before its JobState value changes to PreparingAppliance.

package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/snowball"
)

func main() {
	svc := snowball.New(session.New())
	input := &snowball.CancelJobInput{
		JobId: aws.String("JID123e4567-e89b-12d3-a456-426655440000"),
	}

	result, err := svc.CancelJob(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case snowball.ErrCodeInvalidResourceException:
				fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
			case snowball.ErrCodeInvalidJobStateException:
				fmt.Println(snowball.ErrCodeInvalidJobStateException, aerr.Error())
			case snowball.ErrCodeKMSRequestFailedException:
				fmt.Println(snowball.ErrCodeKMSRequestFailedException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Snowball) CancelJobRequest

func (c *Snowball) CancelJobRequest(input *CancelJobInput) (req *request.Request, output *CancelJobOutput)

CancelJobRequest generates a "aws/request.Request" representing the client's request for the CancelJob operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See CancelJob for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the CancelJob method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the CancelJobRequest method.
req, resp := client.CancelJobRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CancelJob

func (*Snowball) CancelJobWithContext

func (c *Snowball) CancelJobWithContext(ctx aws.Context, input *CancelJobInput, opts ...request.Option) (*CancelJobOutput, error)

CancelJobWithContext is the same as CancelJob with the addition of the ability to pass a context and additional request options.

See CancelJob for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Snowball) CreateAddress

func (c *Snowball) CreateAddress(input *CreateAddressInput) (*CreateAddressOutput, error)

CreateAddress API operation for Amazon Import/Export Snowball.

Creates an address for a Snowball to be shipped to. In most regions, 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.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Import/Export Snowball's API operation CreateAddress for usage and error information.

Returned Error Codes:

* ErrCodeInvalidAddressException "InvalidAddressException"
The address provided was invalid. Check the address with your region's carrier,
and try again.

* ErrCodeUnsupportedAddressException "UnsupportedAddressException"
The address is either outside the serviceable area for your region, or an
error occurred. Check the address with your region's carrier and try again.
If the issue persists, contact AWS Support.

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CreateAddress

Example (Shared00)

To create an address for a job

This operation creates an address for a job. 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.

package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/snowball"
)

func main() {
	svc := snowball.New(session.New())
	input := &snowball.CreateAddressInput{
		Address: &snowball.Address{
			City:            aws.String("Seattle"),
			Company:         aws.String("My Company's Name"),
			Country:         aws.String("USA"),
			Name:            aws.String("My Name"),
			PhoneNumber:     aws.String("425-555-5555"),
			PostalCode:      aws.String("98101"),
			StateOrProvince: aws.String("WA"),
			Street1:         aws.String("123 Main Street"),
		},
	}

	result, err := svc.CreateAddress(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case snowball.ErrCodeInvalidAddressException:
				fmt.Println(snowball.ErrCodeInvalidAddressException, aerr.Error())
			case snowball.ErrCodeUnsupportedAddressException:
				fmt.Println(snowball.ErrCodeUnsupportedAddressException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Snowball) CreateAddressRequest

func (c *Snowball) CreateAddressRequest(input *CreateAddressInput) (req *request.Request, output *CreateAddressOutput)

CreateAddressRequest generates a "aws/request.Request" representing the client's request for the CreateAddress operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See CreateAddress for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the CreateAddress method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the CreateAddressRequest method.
req, resp := client.CreateAddressRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CreateAddress

func (*Snowball) CreateAddressWithContext

func (c *Snowball) CreateAddressWithContext(ctx aws.Context, input *CreateAddressInput, opts ...request.Option) (*CreateAddressOutput, error)

CreateAddressWithContext is the same as CreateAddress with the addition of the ability to pass a context and additional request options.

See CreateAddress for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Snowball) CreateCluster

func (c *Snowball) CreateCluster(input *CreateClusterInput) (*CreateClusterOutput, error)

CreateCluster API operation for Amazon Import/Export Snowball.

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.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Import/Export Snowball's API operation CreateCluster for usage and error information.

Returned Error Codes:

* ErrCodeInvalidResourceException "InvalidResourceException"
The specified resource can't be found. Check the information you provided
in your last request, and try again.

* ErrCodeKMSRequestFailedException "KMSRequestFailedException"
The provided AWS Key Management Service key lacks the permissions to perform
the specified CreateJob or UpdateJob action.

* ErrCodeInvalidInputCombinationException "InvalidInputCombinationException"
Job or cluster creation failed. One ore more inputs were invalid. Confirm
that the CreateClusterRequest$SnowballType value supports your CreateJobRequest$JobType,
and try again.

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CreateCluster

Example (Shared00)

To create a cluster

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.

package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/snowball"
)

func main() {
	svc := snowball.New(session.New())
	input := &snowball.CreateClusterInput{
		AddressId:   aws.String("ADID1234ab12-3eec-4eb3-9be6-9374c10eb51b"),
		Description: aws.String("MyCluster"),
		JobType:     aws.String("LOCAL_USE"),
		KmsKeyARN:   aws.String("arn:aws:kms:us-east-1:123456789012:key/abcd1234-12ab-34cd-56ef-123456123456"),
		Notification: &snowball.Notification{
			NotifyAll: aws.Bool(false),
		},
		Resources: &snowball.JobResource{
			S3Resources: []*snowball.S3Resource{
				{
					BucketArn: aws.String("arn:aws:s3:::MyBucket"),
				},
			},
		},
		RoleARN:        aws.String("arn:aws:iam::123456789012:role/snowball-import-S3-role"),
		ShippingOption: aws.String("SECOND_DAY"),
		SnowballType:   aws.String("EDGE"),
	}

	result, err := svc.CreateCluster(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case snowball.ErrCodeInvalidResourceException:
				fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
			case snowball.ErrCodeKMSRequestFailedException:
				fmt.Println(snowball.ErrCodeKMSRequestFailedException, aerr.Error())
			case snowball.ErrCodeInvalidInputCombinationException:
				fmt.Println(snowball.ErrCodeInvalidInputCombinationException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Snowball) CreateClusterRequest

func (c *Snowball) CreateClusterRequest(input *CreateClusterInput) (req *request.Request, output *CreateClusterOutput)

CreateClusterRequest generates a "aws/request.Request" representing the client's request for the CreateCluster operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See CreateCluster for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the CreateCluster method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the CreateClusterRequest method.
req, resp := client.CreateClusterRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CreateCluster

func (*Snowball) CreateClusterWithContext

func (c *Snowball) CreateClusterWithContext(ctx aws.Context, input *CreateClusterInput, opts ...request.Option) (*CreateClusterOutput, error)

CreateClusterWithContext is the same as CreateCluster with the addition of the ability to pass a context and additional request options.

See CreateCluster for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Snowball) CreateJob

func (c *Snowball) CreateJob(input *CreateJobInput) (*CreateJobOutput, error)

CreateJob API operation for Amazon Import/Export Snowball.

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 clusterId value; the other job attributes are inherited from the cluster.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Import/Export Snowball's API operation CreateJob for usage and error information.

Returned Error Codes:

* ErrCodeInvalidResourceException "InvalidResourceException"
The specified resource can't be found. Check the information you provided
in your last request, and try again.

* ErrCodeKMSRequestFailedException "KMSRequestFailedException"
The provided AWS Key Management Service key lacks the permissions to perform
the specified CreateJob or UpdateJob action.

* ErrCodeInvalidInputCombinationException "InvalidInputCombinationException"
Job or cluster creation failed. One ore more inputs were invalid. Confirm
that the CreateClusterRequest$SnowballType value supports your CreateJobRequest$JobType,
and try again.

* ErrCodeClusterLimitExceededException "ClusterLimitExceededException"
Job creation failed. Currently, clusters support five nodes. If you have
less than five nodes for your cluster and you have more nodes to create for
this cluster, try again and create jobs until your cluster has exactly five
notes.

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CreateJob

Example (Shared00)

To create a job

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 clusterId value; the other job attributes are inherited from the cluster.

package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/snowball"
)

func main() {
	svc := snowball.New(session.New())
	input := &snowball.CreateJobInput{
		AddressId:   aws.String("ADID1234ab12-3eec-4eb3-9be6-9374c10eb51b"),
		Description: aws.String("My Job"),
		JobType:     aws.String("IMPORT"),
		KmsKeyARN:   aws.String("arn:aws:kms:us-east-1:123456789012:key/abcd1234-12ab-34cd-56ef-123456123456"),
		Notification: &snowball.Notification{
			NotifyAll: aws.Bool(false),
		},
		Resources: &snowball.JobResource{
			S3Resources: []*snowball.S3Resource{
				{
					BucketArn: aws.String("arn:aws:s3:::MyBucket"),
				},
			},
		},
		RoleARN:                    aws.String("arn:aws:iam::123456789012:role/snowball-import-S3-role"),
		ShippingOption:             aws.String("SECOND_DAY"),
		SnowballCapacityPreference: aws.String("T80"),
		SnowballType:               aws.String("STANDARD"),
	}

	result, err := svc.CreateJob(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case snowball.ErrCodeInvalidResourceException:
				fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
			case snowball.ErrCodeKMSRequestFailedException:
				fmt.Println(snowball.ErrCodeKMSRequestFailedException, aerr.Error())
			case snowball.ErrCodeInvalidInputCombinationException:
				fmt.Println(snowball.ErrCodeInvalidInputCombinationException, aerr.Error())
			case snowball.ErrCodeClusterLimitExceededException:
				fmt.Println(snowball.ErrCodeClusterLimitExceededException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Snowball) CreateJobRequest

func (c *Snowball) CreateJobRequest(input *CreateJobInput) (req *request.Request, output *CreateJobOutput)

CreateJobRequest generates a "aws/request.Request" representing the client's request for the CreateJob operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See CreateJob for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the CreateJob method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the CreateJobRequest method.
req, resp := client.CreateJobRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CreateJob

func (*Snowball) CreateJobWithContext

func (c *Snowball) CreateJobWithContext(ctx aws.Context, input *CreateJobInput, opts ...request.Option) (*CreateJobOutput, error)

CreateJobWithContext is the same as CreateJob with the addition of the ability to pass a context and additional request options.

See CreateJob for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Snowball) DescribeAddress

func (c *Snowball) DescribeAddress(input *DescribeAddressInput) (*DescribeAddressOutput, error)

DescribeAddress API operation for Amazon Import/Export Snowball.

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

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Import/Export Snowball's API operation DescribeAddress for usage and error information.

Returned Error Codes:

* ErrCodeInvalidResourceException "InvalidResourceException"
The specified resource can't be found. Check the information you provided
in your last request, and try again.

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeAddress

Example (Shared00)

To describe an address for a job

This operation describes an address for a job.

package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/snowball"
)

func main() {
	svc := snowball.New(session.New())
	input := &snowball.DescribeAddressInput{
		AddressId: aws.String("ADID1234ab12-3eec-4eb3-9be6-9374c10eb51b"),
	}

	result, err := svc.DescribeAddress(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case snowball.ErrCodeInvalidResourceException:
				fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Snowball) DescribeAddressRequest

func (c *Snowball) DescribeAddressRequest(input *DescribeAddressInput) (req *request.Request, output *DescribeAddressOutput)

DescribeAddressRequest generates a "aws/request.Request" representing the client's request for the DescribeAddress operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See DescribeAddress for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the DescribeAddress method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the DescribeAddressRequest method.
req, resp := client.DescribeAddressRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeAddress

func (*Snowball) DescribeAddressWithContext

func (c *Snowball) DescribeAddressWithContext(ctx aws.Context, input *DescribeAddressInput, opts ...request.Option) (*DescribeAddressOutput, error)

DescribeAddressWithContext is the same as DescribeAddress with the addition of the ability to pass a context and additional request options.

See DescribeAddress for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Snowball) DescribeAddresses

func (c *Snowball) DescribeAddresses(input *DescribeAddressesInput) (*DescribeAddressesOutput, error)

DescribeAddresses API operation for Amazon Import/Export Snowball.

Returns a specified number of 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.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Import/Export Snowball's API operation DescribeAddresses for usage and error information.

Returned Error Codes:

* ErrCodeInvalidResourceException "InvalidResourceException"
The specified resource can't be found. Check the information you provided
in your last request, and try again.

* ErrCodeInvalidNextTokenException "InvalidNextTokenException"
The NextToken string was altered unexpectedly, and the operation has stopped.
Run the operation without changing the NextToken string, and try again.

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeAddresses

Example (Shared00)

To describe all the addresses you've created for AWS Snowball

This operation describes all the addresses that you've created for AWS Snowball. 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.

package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/snowball"
)

func main() {
	svc := snowball.New(session.New())
	input := &snowball.DescribeAddressesInput{}

	result, err := svc.DescribeAddresses(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case snowball.ErrCodeInvalidResourceException:
				fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
			case snowball.ErrCodeInvalidNextTokenException:
				fmt.Println(snowball.ErrCodeInvalidNextTokenException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Snowball) DescribeAddressesPages

func (c *Snowball) DescribeAddressesPages(input *DescribeAddressesInput, fn func(*DescribeAddressesOutput, bool) bool) error

DescribeAddressesPages iterates over the pages of a DescribeAddresses operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See DescribeAddresses method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a DescribeAddresses operation.
pageNum := 0
err := client.DescribeAddressesPages(params,
    func(page *DescribeAddressesOutput, lastPage bool) bool {
        pageNum++
        fmt.Println(page)
        return pageNum <= 3
    })

func (*Snowball) DescribeAddressesPagesWithContext

func (c *Snowball) DescribeAddressesPagesWithContext(ctx aws.Context, input *DescribeAddressesInput, fn func(*DescribeAddressesOutput, bool) bool, opts ...request.Option) error

DescribeAddressesPagesWithContext same as DescribeAddressesPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Snowball) DescribeAddressesRequest

func (c *Snowball) DescribeAddressesRequest(input *DescribeAddressesInput) (req *request.Request, output *DescribeAddressesOutput)

DescribeAddressesRequest generates a "aws/request.Request" representing the client's request for the DescribeAddresses operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See DescribeAddresses for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the DescribeAddresses method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the DescribeAddressesRequest method.
req, resp := client.DescribeAddressesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeAddresses

func (*Snowball) DescribeAddressesWithContext

func (c *Snowball) DescribeAddressesWithContext(ctx aws.Context, input *DescribeAddressesInput, opts ...request.Option) (*DescribeAddressesOutput, error)

DescribeAddressesWithContext is the same as DescribeAddresses with the addition of the ability to pass a context and additional request options.

See DescribeAddresses for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Snowball) DescribeCluster

func (c *Snowball) DescribeCluster(input *DescribeClusterInput) (*DescribeClusterOutput, error)

DescribeCluster API operation for Amazon Import/Export Snowball.

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

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Import/Export Snowball's API operation DescribeCluster for usage and error information.

Returned Error Codes:

* ErrCodeInvalidResourceException "InvalidResourceException"
The specified resource can't be found. Check the information you provided
in your last request, and try again.

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeCluster

Example (Shared00)

To describe a cluster

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

package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/snowball"
)

func main() {
	svc := snowball.New(session.New())
	input := &snowball.DescribeClusterInput{
		ClusterId: aws.String("CID123e4567-e89b-12d3-a456-426655440000"),
	}

	result, err := svc.DescribeCluster(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case snowball.ErrCodeInvalidResourceException:
				fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Snowball) DescribeClusterRequest

func (c *Snowball) DescribeClusterRequest(input *DescribeClusterInput) (req *request.Request, output *DescribeClusterOutput)

DescribeClusterRequest generates a "aws/request.Request" representing the client's request for the DescribeCluster operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See DescribeCluster for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the DescribeCluster method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the DescribeClusterRequest method.
req, resp := client.DescribeClusterRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeCluster

func (*Snowball) DescribeClusterWithContext

func (c *Snowball) DescribeClusterWithContext(ctx aws.Context, input *DescribeClusterInput, opts ...request.Option) (*DescribeClusterOutput, error)

DescribeClusterWithContext is the same as DescribeCluster with the addition of the ability to pass a context and additional request options.

See DescribeCluster for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Snowball) DescribeJob

func (c *Snowball) DescribeJob(input *DescribeJobInput) (*DescribeJobOutput, error)

DescribeJob API operation for Amazon Import/Export Snowball.

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

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Import/Export Snowball's API operation DescribeJob for usage and error information.

Returned Error Codes:

* ErrCodeInvalidResourceException "InvalidResourceException"
The specified resource can't be found. Check the information you provided
in your last request, and try again.

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeJob

Example (Shared00)

To describe a job you've created for AWS Snowball

This operation describes a job you've created for AWS Snowball.

package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/snowball"
)

func main() {
	svc := snowball.New(session.New())
	input := &snowball.DescribeJobInput{
		JobId: aws.String("JID123e4567-e89b-12d3-a456-426655440000"),
	}

	result, err := svc.DescribeJob(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case snowball.ErrCodeInvalidResourceException:
				fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Snowball) DescribeJobRequest

func (c *Snowball) DescribeJobRequest(input *DescribeJobInput) (req *request.Request, output *DescribeJobOutput)

DescribeJobRequest generates a "aws/request.Request" representing the client's request for the DescribeJob operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See DescribeJob for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the DescribeJob method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the DescribeJobRequest method.
req, resp := client.DescribeJobRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeJob

func (*Snowball) DescribeJobWithContext

func (c *Snowball) DescribeJobWithContext(ctx aws.Context, input *DescribeJobInput, opts ...request.Option) (*DescribeJobOutput, error)

DescribeJobWithContext is the same as DescribeJob with the addition of the ability to pass a context and additional request options.

See DescribeJob for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Snowball) GetJobManifest

func (c *Snowball) GetJobManifest(input *GetJobManifestInput) (*GetJobManifestOutput, error)

GetJobManifest API operation for Amazon Import/Export Snowball.

Returns a link to an Amazon S3 presigned URL for the manifest file associated with the specified 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 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.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Import/Export Snowball's API operation GetJobManifest for usage and error information.

Returned Error Codes:

* ErrCodeInvalidResourceException "InvalidResourceException"
The specified resource can't be found. Check the information you provided
in your last request, and try again.

* ErrCodeInvalidJobStateException "InvalidJobStateException"
The action can't be performed because the job's current state doesn't allow
that action to be performed.

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/GetJobManifest

Example (Shared00)

To get the manifest for a job you've created for AWS Snowball

Returns a link to an Amazon S3 presigned URL for the manifest file associated with the specified 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 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.

package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/snowball"
)

func main() {
	svc := snowball.New(session.New())
	input := &snowball.GetJobManifestInput{
		JobId: aws.String("JID123e4567-e89b-12d3-a456-426655440000"),
	}

	result, err := svc.GetJobManifest(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case snowball.ErrCodeInvalidResourceException:
				fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
			case snowball.ErrCodeInvalidJobStateException:
				fmt.Println(snowball.ErrCodeInvalidJobStateException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Snowball) GetJobManifestRequest

func (c *Snowball) GetJobManifestRequest(input *GetJobManifestInput) (req *request.Request, output *GetJobManifestOutput)

GetJobManifestRequest generates a "aws/request.Request" representing the client's request for the GetJobManifest operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See GetJobManifest for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the GetJobManifest method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the GetJobManifestRequest method.
req, resp := client.GetJobManifestRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/GetJobManifest

func (*Snowball) GetJobManifestWithContext

func (c *Snowball) GetJobManifestWithContext(ctx aws.Context, input *GetJobManifestInput, opts ...request.Option) (*GetJobManifestOutput, error)

GetJobManifestWithContext is the same as GetJobManifest with the addition of the ability to pass a context and additional request options.

See GetJobManifest for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Snowball) GetJobUnlockCode

func (c *Snowball) GetJobUnlockCode(input *GetJobUnlockCodeInput) (*GetJobUnlockCodeOutput, error)

GetJobUnlockCode API operation for Amazon Import/Export Snowball.

Returns the UnlockCode code value for the specified job. A particular 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.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Import/Export Snowball's API operation GetJobUnlockCode for usage and error information.

Returned Error Codes:

* ErrCodeInvalidResourceException "InvalidResourceException"
The specified resource can't be found. Check the information you provided
in your last request, and try again.

* ErrCodeInvalidJobStateException "InvalidJobStateException"
The action can't be performed because the job's current state doesn't allow
that action to be performed.

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/GetJobUnlockCode

Example (Shared00)

To get the unlock code for a job you've created for AWS Snowball

Returns the UnlockCode code value for the specified job. A particular 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.

package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/snowball"
)

func main() {
	svc := snowball.New(session.New())
	input := &snowball.GetJobUnlockCodeInput{
		JobId: aws.String("JID123e4567-e89b-12d3-a456-426655440000"),
	}

	result, err := svc.GetJobUnlockCode(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case snowball.ErrCodeInvalidResourceException:
				fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
			case snowball.ErrCodeInvalidJobStateException:
				fmt.Println(snowball.ErrCodeInvalidJobStateException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Snowball) GetJobUnlockCodeRequest

func (c *Snowball) GetJobUnlockCodeRequest(input *GetJobUnlockCodeInput) (req *request.Request, output *GetJobUnlockCodeOutput)

GetJobUnlockCodeRequest generates a "aws/request.Request" representing the client's request for the GetJobUnlockCode operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See GetJobUnlockCode for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the GetJobUnlockCode method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the GetJobUnlockCodeRequest method.
req, resp := client.GetJobUnlockCodeRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/GetJobUnlockCode

func (*Snowball) GetJobUnlockCodeWithContext

func (c *Snowball) GetJobUnlockCodeWithContext(ctx aws.Context, input *GetJobUnlockCodeInput, opts ...request.Option) (*GetJobUnlockCodeOutput, error)

GetJobUnlockCodeWithContext is the same as GetJobUnlockCode with the addition of the ability to pass a context and additional request options.

See GetJobUnlockCode for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Snowball) GetSnowballUsage

func (c *Snowball) GetSnowballUsage(input *GetSnowballUsageInput) (*GetSnowballUsageOutput, error)

GetSnowballUsage API operation for Amazon Import/Export Snowball.

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.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Import/Export Snowball's API operation GetSnowballUsage for usage and error information. Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/GetSnowballUsage

Example (Shared00)

To see your Snowball service limit and the number of Snowballs you have in use

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.

package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/snowball"
)

func main() {
	svc := snowball.New(session.New())
	input := &snowball.GetSnowballUsageInput{}

	result, err := svc.GetSnowballUsage(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Snowball) GetSnowballUsageRequest

func (c *Snowball) GetSnowballUsageRequest(input *GetSnowballUsageInput) (req *request.Request, output *GetSnowballUsageOutput)

GetSnowballUsageRequest generates a "aws/request.Request" representing the client's request for the GetSnowballUsage operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See GetSnowballUsage for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the GetSnowballUsage method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the GetSnowballUsageRequest method.
req, resp := client.GetSnowballUsageRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/GetSnowballUsage

func (*Snowball) GetSnowballUsageWithContext

func (c *Snowball) GetSnowballUsageWithContext(ctx aws.Context, input *GetSnowballUsageInput, opts ...request.Option) (*GetSnowballUsageOutput, error)

GetSnowballUsageWithContext is the same as GetSnowballUsage with the addition of the ability to pass a context and additional request options.

See GetSnowballUsage for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Snowball) ListClusterJobs

func (c *Snowball) ListClusterJobs(input *ListClusterJobsInput) (*ListClusterJobsOutput, error)

ListClusterJobs API operation for Amazon Import/Export Snowball.

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

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Import/Export Snowball's API operation ListClusterJobs for usage and error information.

Returned Error Codes:

* ErrCodeInvalidResourceException "InvalidResourceException"
The specified resource can't be found. Check the information you provided
in your last request, and try again.

* ErrCodeInvalidNextTokenException "InvalidNextTokenException"
The NextToken string was altered unexpectedly, and the operation has stopped.
Run the operation without changing the NextToken string, and try again.

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ListClusterJobs

Example (Shared00)

To get a list of jobs in a cluster that you've created for AWS Snowball

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

package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/snowball"
)

func main() {
	svc := snowball.New(session.New())
	input := &snowball.ListClusterJobsInput{
		ClusterId: aws.String("CID123e4567-e89b-12d3-a456-426655440000"),
	}

	result, err := svc.ListClusterJobs(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case snowball.ErrCodeInvalidResourceException:
				fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
			case snowball.ErrCodeInvalidNextTokenException:
				fmt.Println(snowball.ErrCodeInvalidNextTokenException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Snowball) ListClusterJobsRequest

func (c *Snowball) ListClusterJobsRequest(input *ListClusterJobsInput) (req *request.Request, output *ListClusterJobsOutput)

ListClusterJobsRequest generates a "aws/request.Request" representing the client's request for the ListClusterJobs operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See ListClusterJobs for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the ListClusterJobs method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the ListClusterJobsRequest method.
req, resp := client.ListClusterJobsRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ListClusterJobs

func (*Snowball) ListClusterJobsWithContext

func (c *Snowball) ListClusterJobsWithContext(ctx aws.Context, input *ListClusterJobsInput, opts ...request.Option) (*ListClusterJobsOutput, error)

ListClusterJobsWithContext is the same as ListClusterJobs with the addition of the ability to pass a context and additional request options.

See ListClusterJobs for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Snowball) ListClusters

func (c *Snowball) ListClusters(input *ListClustersInput) (*ListClustersOutput, error)

ListClusters API operation for Amazon Import/Export Snowball.

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

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Import/Export Snowball's API operation ListClusters for usage and error information.

Returned Error Codes:

* ErrCodeInvalidNextTokenException "InvalidNextTokenException"
The NextToken string was altered unexpectedly, and the operation has stopped.
Run the operation without changing the NextToken string, and try again.

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ListClusters

Example (Shared00)

To get a list of clusters that you've created for AWS Snowball

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

package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/snowball"
)

func main() {
	svc := snowball.New(session.New())
	input := &snowball.ListClustersInput{}

	result, err := svc.ListClusters(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case snowball.ErrCodeInvalidNextTokenException:
				fmt.Println(snowball.ErrCodeInvalidNextTokenException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Snowball) ListClustersRequest

func (c *Snowball) ListClustersRequest(input *ListClustersInput) (req *request.Request, output *ListClustersOutput)

ListClustersRequest generates a "aws/request.Request" representing the client's request for the ListClusters operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See ListClusters for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the ListClusters method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the ListClustersRequest method.
req, resp := client.ListClustersRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ListClusters

func (*Snowball) ListClustersWithContext

func (c *Snowball) ListClustersWithContext(ctx aws.Context, input *ListClustersInput, opts ...request.Option) (*ListClustersOutput, error)

ListClustersWithContext is the same as ListClusters with the addition of the ability to pass a context and additional request options.

See ListClusters for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Snowball) ListJobs

func (c *Snowball) ListJobs(input *ListJobsInput) (*ListJobsOutput, error)

ListJobs API operation for Amazon Import/Export Snowball.

Returns an array of JobListEntry objects of the specified length. Each 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.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Import/Export Snowball's API operation ListJobs for usage and error information.

Returned Error Codes:

* ErrCodeInvalidNextTokenException "InvalidNextTokenException"
The NextToken string was altered unexpectedly, and the operation has stopped.
Run the operation without changing the NextToken string, and try again.

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ListJobs

Example (Shared00)

To get a list of jobs that you've created for AWS Snowball

Returns an array of JobListEntry objects of the specified length. Each 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.

package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/snowball"
)

func main() {
	svc := snowball.New(session.New())
	input := &snowball.ListJobsInput{}

	result, err := svc.ListJobs(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case snowball.ErrCodeInvalidNextTokenException:
				fmt.Println(snowball.ErrCodeInvalidNextTokenException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Snowball) ListJobsPages

func (c *Snowball) ListJobsPages(input *ListJobsInput, fn func(*ListJobsOutput, bool) bool) error

ListJobsPages iterates over the pages of a ListJobs operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See ListJobs method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a ListJobs operation.
pageNum := 0
err := client.ListJobsPages(params,
    func(page *ListJobsOutput, lastPage bool) bool {
        pageNum++
        fmt.Println(page)
        return pageNum <= 3
    })

func (*Snowball) ListJobsPagesWithContext

func (c *Snowball) ListJobsPagesWithContext(ctx aws.Context, input *ListJobsInput, fn func(*ListJobsOutput, bool) bool, opts ...request.Option) error

ListJobsPagesWithContext same as ListJobsPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Snowball) ListJobsRequest

func (c *Snowball) ListJobsRequest(input *ListJobsInput) (req *request.Request, output *ListJobsOutput)

ListJobsRequest generates a "aws/request.Request" representing the client's request for the ListJobs operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See ListJobs for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the ListJobs method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the ListJobsRequest method.
req, resp := client.ListJobsRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ListJobs

func (*Snowball) ListJobsWithContext

func (c *Snowball) ListJobsWithContext(ctx aws.Context, input *ListJobsInput, opts ...request.Option) (*ListJobsOutput, error)

ListJobsWithContext is the same as ListJobs with the addition of the ability to pass a context and additional request options.

See ListJobs for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Snowball) UpdateCluster

func (c *Snowball) UpdateCluster(input *UpdateClusterInput) (*UpdateClusterOutput, error)

UpdateCluster API operation for Amazon Import/Export Snowball.

While a cluster's ClusterState value is in the 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.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Import/Export Snowball's API operation UpdateCluster for usage and error information.

Returned Error Codes:

* ErrCodeInvalidResourceException "InvalidResourceException"
The specified resource can't be found. Check the information you provided
in your last request, and try again.

* ErrCodeInvalidJobStateException "InvalidJobStateException"
The action can't be performed because the job's current state doesn't allow
that action to be performed.

* ErrCodeKMSRequestFailedException "KMSRequestFailedException"
The provided AWS Key Management Service key lacks the permissions to perform
the specified CreateJob or UpdateJob action.

* ErrCodeInvalidInputCombinationException "InvalidInputCombinationException"
Job or cluster creation failed. One ore more inputs were invalid. Confirm
that the CreateClusterRequest$SnowballType value supports your CreateJobRequest$JobType,
and try again.

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/UpdateCluster

Example (Shared00)

To update a cluster

This action allows you to update certain parameters for a cluster. Once the cluster changes to a different state, usually within 60 minutes of it being created, this action is no longer available.

package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/snowball"
)

func main() {
	svc := snowball.New(session.New())
	input := &snowball.UpdateClusterInput{
		AddressId:   aws.String("ADID1234ab12-3eec-4eb3-9be6-9374c10eb51b"),
		ClusterId:   aws.String("CID123e4567-e89b-12d3-a456-426655440000"),
		Description: aws.String("Updated the address to send this to image processing - RJ"),
	}

	result, err := svc.UpdateCluster(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case snowball.ErrCodeInvalidResourceException:
				fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
			case snowball.ErrCodeInvalidJobStateException:
				fmt.Println(snowball.ErrCodeInvalidJobStateException, aerr.Error())
			case snowball.ErrCodeKMSRequestFailedException:
				fmt.Println(snowball.ErrCodeKMSRequestFailedException, aerr.Error())
			case snowball.ErrCodeInvalidInputCombinationException:
				fmt.Println(snowball.ErrCodeInvalidInputCombinationException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Snowball) UpdateClusterRequest

func (c *Snowball) UpdateClusterRequest(input *UpdateClusterInput) (req *request.Request, output *UpdateClusterOutput)

UpdateClusterRequest generates a "aws/request.Request" representing the client's request for the UpdateCluster operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See UpdateCluster for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the UpdateCluster method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the UpdateClusterRequest method.
req, resp := client.UpdateClusterRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/UpdateCluster

func (*Snowball) UpdateClusterWithContext

func (c *Snowball) UpdateClusterWithContext(ctx aws.Context, input *UpdateClusterInput, opts ...request.Option) (*UpdateClusterOutput, error)

UpdateClusterWithContext is the same as UpdateCluster with the addition of the ability to pass a context and additional request options.

See UpdateCluster for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Snowball) UpdateJob

func (c *Snowball) UpdateJob(input *UpdateJobInput) (*UpdateJobOutput, error)

UpdateJob API operation for Amazon Import/Export Snowball.

While a job's JobState value is 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.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Import/Export Snowball's API operation UpdateJob for usage and error information.

Returned Error Codes:

* ErrCodeInvalidResourceException "InvalidResourceException"
The specified resource can't be found. Check the information you provided
in your last request, and try again.

* ErrCodeInvalidJobStateException "InvalidJobStateException"
The action can't be performed because the job's current state doesn't allow
that action to be performed.

* ErrCodeKMSRequestFailedException "KMSRequestFailedException"
The provided AWS Key Management Service key lacks the permissions to perform
the specified CreateJob or UpdateJob action.

* ErrCodeInvalidInputCombinationException "InvalidInputCombinationException"
Job or cluster creation failed. One ore more inputs were invalid. Confirm
that the CreateClusterRequest$SnowballType value supports your CreateJobRequest$JobType,
and try again.

* ErrCodeClusterLimitExceededException "ClusterLimitExceededException"
Job creation failed. Currently, clusters support five nodes. If you have
less than five nodes for your cluster and you have more nodes to create for
this cluster, try again and create jobs until your cluster has exactly five
notes.

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/UpdateJob

Example (Shared00)

To update a job

This action allows you to update certain parameters for 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.

package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/snowball"
)

func main() {
	svc := snowball.New(session.New())
	input := &snowball.UpdateJobInput{
		AddressId:                  aws.String("ADID1234ab12-3eec-4eb3-9be6-9374c10eb51b"),
		Description:                aws.String("Upgraded to Edge, shipped to Finance Dept, and requested faster shipping speed - TS."),
		JobId:                      aws.String("JID123e4567-e89b-12d3-a456-426655440000"),
		ShippingOption:             aws.String("NEXT_DAY"),
		SnowballCapacityPreference: aws.String("T100"),
	}

	result, err := svc.UpdateJob(input)
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case snowball.ErrCodeInvalidResourceException:
				fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error())
			case snowball.ErrCodeInvalidJobStateException:
				fmt.Println(snowball.ErrCodeInvalidJobStateException, aerr.Error())
			case snowball.ErrCodeKMSRequestFailedException:
				fmt.Println(snowball.ErrCodeKMSRequestFailedException, aerr.Error())
			case snowball.ErrCodeInvalidInputCombinationException:
				fmt.Println(snowball.ErrCodeInvalidInputCombinationException, aerr.Error())
			case snowball.ErrCodeClusterLimitExceededException:
				fmt.Println(snowball.ErrCodeClusterLimitExceededException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Snowball) UpdateJobRequest

func (c *Snowball) UpdateJobRequest(input *UpdateJobInput) (req *request.Request, output *UpdateJobOutput)

UpdateJobRequest generates a "aws/request.Request" representing the client's request for the UpdateJob operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See UpdateJob for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the UpdateJob method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the UpdateJobRequest method.
req, resp := client.UpdateJobRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/UpdateJob

func (*Snowball) UpdateJobWithContext

func (c *Snowball) UpdateJobWithContext(ctx aws.Context, input *UpdateJobInput, opts ...request.Option) (*UpdateJobOutput, error)

UpdateJobWithContext is the same as UpdateJob with the addition of the ability to pass a context and additional request options.

See UpdateJob for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

type UpdateClusterInput

type UpdateClusterInput struct {

	// The ID of the updated Address object.
	AddressId *string `min:"40" type:"string"`

	// The cluster ID of the cluster that you want to update, for example CID123e4567-e89b-12d3-a456-426655440000.
	//
	// ClusterId is a required field
	ClusterId *string `min:"39" type:"string" required:"true"`

	// The updated description of this cluster.
	Description *string `min:"1" type:"string"`

	// The updated ID for the forwarding address for a cluster. This field is not
	// supported in most regions.
	ForwardingAddressId *string `min:"40" type:"string"`

	// The new or updated Notification object.
	Notification *Notification `type:"structure"`

	// The updated arrays of JobResource objects that can include updated S3Resource
	// objects or LambdaResource objects.
	Resources *JobResource `type:"structure"`

	// The new role Amazon Resource Name (ARN) that you want to associate with this
	// cluster. To create a role ARN, use the CreateRole (http://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html)
	// API action in AWS Identity and Access Management (IAM).
	RoleARN *string `type:"string"`

	// The updated shipping option value of this cluster's ShippingDetails object.
	ShippingOption *string `type:"string" enum:"ShippingOption"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/UpdateClusterRequest

func (UpdateClusterInput) GoString

func (s UpdateClusterInput) GoString() string

GoString returns the string representation

func (*UpdateClusterInput) SetAddressId

func (s *UpdateClusterInput) SetAddressId(v string) *UpdateClusterInput

SetAddressId sets the AddressId field's value.

func (*UpdateClusterInput) SetClusterId

func (s *UpdateClusterInput) SetClusterId(v string) *UpdateClusterInput

SetClusterId sets the ClusterId field's value.

func (*UpdateClusterInput) SetDescription

func (s *UpdateClusterInput) SetDescription(v string) *UpdateClusterInput

SetDescription sets the Description field's value.

func (*UpdateClusterInput) SetForwardingAddressId

func (s *UpdateClusterInput) SetForwardingAddressId(v string) *UpdateClusterInput

SetForwardingAddressId sets the ForwardingAddressId field's value.

func (*UpdateClusterInput) SetNotification

func (s *UpdateClusterInput) SetNotification(v *Notification) *UpdateClusterInput

SetNotification sets the Notification field's value.

func (*UpdateClusterInput) SetResources

func (s *UpdateClusterInput) SetResources(v *JobResource) *UpdateClusterInput

SetResources sets the Resources field's value.

func (*UpdateClusterInput) SetRoleARN

func (s *UpdateClusterInput) SetRoleARN(v string) *UpdateClusterInput

SetRoleARN sets the RoleARN field's value.

func (*UpdateClusterInput) SetShippingOption

func (s *UpdateClusterInput) SetShippingOption(v string) *UpdateClusterInput

SetShippingOption sets the ShippingOption field's value.

func (UpdateClusterInput) String

func (s UpdateClusterInput) String() string

String returns the string representation

func (*UpdateClusterInput) Validate

func (s *UpdateClusterInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UpdateClusterOutput

type UpdateClusterOutput struct {
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/UpdateClusterResult

func (UpdateClusterOutput) GoString

func (s UpdateClusterOutput) GoString() string

GoString returns the string representation

func (UpdateClusterOutput) String

func (s UpdateClusterOutput) String() string

String returns the string representation

type UpdateJobInput

type UpdateJobInput struct {

	// The ID of the updated Address object.
	AddressId *string `min:"40" type:"string"`

	// The updated description of this job's JobMetadata object.
	Description *string `min:"1" type:"string"`

	// The updated ID for the forwarding address for a job. This field is not supported
	// in most regions.
	ForwardingAddressId *string `min:"40" type:"string"`

	// The job ID of the job that you want to update, for example JID123e4567-e89b-12d3-a456-426655440000.
	//
	// JobId is a required field
	JobId *string `min:"39" type:"string" required:"true"`

	// The new or updated Notification object.
	Notification *Notification `type:"structure"`

	// The updated S3Resource object (for a single Amazon S3 bucket or key range),
	// or the updated JobResource object (for multiple buckets or key ranges).
	Resources *JobResource `type:"structure"`

	// The new role Amazon Resource Name (ARN) that you want to associate with this
	// job. To create a role ARN, use the CreateRole (http://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html)AWS
	// Identity and Access Management (IAM) API action.
	RoleARN *string `type:"string"`

	// The updated shipping option value of this job's ShippingDetails object.
	ShippingOption *string `type:"string" enum:"ShippingOption"`

	// The updated SnowballCapacityPreference of this job's JobMetadata object.
	// The 50 TB Snowballs are only available in the US regions.
	SnowballCapacityPreference *string `type:"string" enum:"Capacity"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/UpdateJobRequest

func (UpdateJobInput) GoString

func (s UpdateJobInput) GoString() string

GoString returns the string representation

func (*UpdateJobInput) SetAddressId

func (s *UpdateJobInput) SetAddressId(v string) *UpdateJobInput

SetAddressId sets the AddressId field's value.

func (*UpdateJobInput) SetDescription

func (s *UpdateJobInput) SetDescription(v string) *UpdateJobInput

SetDescription sets the Description field's value.

func (*UpdateJobInput) SetForwardingAddressId

func (s *UpdateJobInput) SetForwardingAddressId(v string) *UpdateJobInput

SetForwardingAddressId sets the ForwardingAddressId field's value.

func (*UpdateJobInput) SetJobId

func (s *UpdateJobInput) SetJobId(v string) *UpdateJobInput

SetJobId sets the JobId field's value.

func (*UpdateJobInput) SetNotification

func (s *UpdateJobInput) SetNotification(v *Notification) *UpdateJobInput

SetNotification sets the Notification field's value.

func (*UpdateJobInput) SetResources

func (s *UpdateJobInput) SetResources(v *JobResource) *UpdateJobInput

SetResources sets the Resources field's value.

func (*UpdateJobInput) SetRoleARN

func (s *UpdateJobInput) SetRoleARN(v string) *UpdateJobInput

SetRoleARN sets the RoleARN field's value.

func (*UpdateJobInput) SetShippingOption

func (s *UpdateJobInput) SetShippingOption(v string) *UpdateJobInput

SetShippingOption sets the ShippingOption field's value.

func (*UpdateJobInput) SetSnowballCapacityPreference

func (s *UpdateJobInput) SetSnowballCapacityPreference(v string) *UpdateJobInput

SetSnowballCapacityPreference sets the SnowballCapacityPreference field's value.

func (UpdateJobInput) String

func (s UpdateJobInput) String() string

String returns the string representation

func (*UpdateJobInput) Validate

func (s *UpdateJobInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UpdateJobOutput

type UpdateJobOutput struct {
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/UpdateJobResult

func (UpdateJobOutput) GoString

func (s UpdateJobOutput) GoString() string

GoString returns the string representation

func (UpdateJobOutput) String

func (s UpdateJobOutput) String() string

String returns the string representation

Directories

Path Synopsis
Package snowballiface provides an interface to enable mocking the Amazon Import/Export Snowball service client for testing your code.
Package snowballiface provides an interface to enable mocking the Amazon Import/Export Snowball service client for testing your code.