NOTE: For Version 3 of the AWS SDK for PHP, please see the V3 User Guide and V3 API Reference.

# Class ImportExportClient

Client to interact with AWS Import/Export

  Guzzle\Common\AbstractHasDispatcher implements Guzzle\Common\HasDispatcherInterface
  Guzzle\Http\Client implements Guzzle\Http\ClientInterface
  Guzzle\Service\Client implements Guzzle\Service\ClientInterface
  Aws\Common\Client\AbstractClient implements Aws\Common\Client\AwsClientInterface
  Aws\ImportExport\ImportExportClient

Namespace: Aws\ImportExport
Link: User guide
Link: API docs
Located at Aws/ImportExport/ImportExportClient.php

## Methods summary

- `public static` `factory ( array|Collection $config = array() )`

  Factory method to create a new AWS Import/Export client using an array of configuration options.

- `public` `cancelJob ( array $args = array() )`

  Executes the CancelJob operation.

- `public` `createJob ( array $args = array() )`

  Executes the CreateJob operation.

- `public` `getShippingLabel ( array $args = array() )`

  Executes the GetShippingLabel operation.

- `public` `getStatus ( array $args = array() )`

  Executes the GetStatus operation.

- `public` `listJobs ( array $args = array() )`

  Executes the ListJobs operation.

- `public` `updateJob ( array $args = array() )`

  Executes the UpdateJob operation.

- `public` `getListJobsIterator ( array $args = array() )`

  The input array uses the parameters of the ListJobs operation

## Methods detail

# `public static `Aws\ImportExport\ImportExportClient``
`factory( array|`Guzzle\Common\Collection` $config = array() )`

Factory method to create a new AWS Import/Export client using an array of configuration options.

#### Parameters

$config
  `array|`Guzzle\Common\Collection``
  $config Client configuration data

#### Returns

``Aws\ImportExport\ImportExportClient``

#### Link

http://docs.aws.amazon.com/aws-sdk-php/v2/guide/configuration.html#client-configuration-options

#### Overrides

`Guzzle\Service\Client::factory`
# `public `Guzzle\Service\Resource\Model``
`cancelJob( array $args = array() )`

Executes the CancelJob operation.

This operation cancels a specified job. Only the job owner can cancel it. The operation fails if the job has already started or is complete.

#### Examples

- Basic formatting example

      $result = $client->cancelJob(array(
          // JobId is required
          'JobId' => 'string',
          'APIVersion' => 'string',
      ));

#### Parameters

$args
  `array`
  $arg Associative array containing the following keys (required keys are bold):
  - JobId => (string)
    A unique identifier which refers to a particular job.
  - APIVersion => (string)
    Specifies the version of the client tool.

#### Returns

``Guzzle\Service\Resource\Model``
Returns a response Model object

- Success => (bool)
  Specifies whether (true) or not (false) AWS Import/Export updated your job.

# `public `Guzzle\Service\Resource\Model``
`createJob( array $args = array() )`

Executes the CreateJob operation.

This operation initiates the process of scheduling an upload or download of your data. You include in the request a manifest that describes the data transfer specifics. The response to the request includes a job ID, which you can use in other operations, a signature that you use to identify your storage device, and the address where you should ship your storage device.

#### Examples

- Basic formatting example

      $result = $client->createJob(array(
          // JobType is required
          'JobType' => 'string',
          // Manifest is required
          'Manifest' => 'string',
          'ManifestAddendum' => 'string',
          // ValidateOnly is required
          'ValidateOnly' => true || false,
          'APIVersion' => 'string',
      ));

#### Parameters

$args
  `array`
  $arg Associative array containing the following keys (required keys are bold):
  - JobType => (string: Import | Export )
    Specifies whether the job to initiate is an import or export job.
  - Manifest => (string)
    The UTF-8 encoded text of the manifest file.
  - ManifestAddendum => (string)
    For internal use only.
  - ValidateOnly => (bool)
    Validate the manifest and parameter values in the request but do not actually create a job.
  - APIVersion => (string)
    Specifies the version of the client tool.

#### Returns

``Guzzle\Service\Resource\Model``
Returns a response Model object

- JobId => (string)
  A unique identifier which refers to a particular job.
- JobType => (string)
  Specifies whether the job to initiate is an import or export job.
- Signature => (string)
  An encrypted code used to authenticate the request and response, for example, "DV+TpDfx1/TdSE9ktyK9k/bDTVI=". Only use this value is you want to create the signature file yourself. Generally you should use the SignatureFileContents value.
- SignatureFileContents => (string)
  The actual text of the SIGNATURE file to be written to disk.
- WarningMessage => (string)
  An optional message notifying you of non-fatal issues with the job, such as use of an incompatible Amazon S3 bucket name.
- ArtifactList => (array<associative-array>)
  A collection of artifacts.
  - (associative-array)
    A discrete item that contains the description and URL of an artifact (such as a PDF).
    - Description => (string)
      The associated description for this object.
    - URL => (string)
      The URL for a given Artifact.

# `public `Guzzle\Service\Resource\Model``
`getShippingLabel( array $args = array() )`

Executes the GetShippingLabel operation.

This operation generates a pre-paid UPS shipping label that you will use to ship your device to AWS for processing.

#### Examples

- Basic formatting example

      $result = $client->getShippingLabel(array(
          // jobIds is required
          'jobIds' => array('string', ... ),
          'name' => 'string',
          'company' => 'string',
          'phoneNumber' => 'string',
          'country' => 'string',
          'stateOrProvince' => 'string',
          'city' => 'string',
          'postalCode' => 'string',
          'street1' => 'string',
          'street2' => 'string',
          'street3' => 'string',
          'APIVersion' => 'string',
      ));

#### Parameters

$args
  `array`
  $arg Associative array containing the following keys (required keys are bold):
  - jobIds => (array<string>)
  - name => (string)
    Specifies the name of the person responsible for shipping this package.
  - company => (string)
    Specifies the name of the company that will ship this package.
  - phoneNumber => (string)
    Specifies the phone number of the person responsible for shipping this package.
  - country => (string)
    Specifies the name of your country for the return address.
  - stateOrProvince => (string)
    Specifies the name of your state or your province for the return address.
  - city => (string)
    Specifies the name of your city for the return address.
  - postalCode => (string)
    Specifies the postal code for the return address.
  - street1 => (string)
    Specifies the first part of the street address for the return address, for example 1234 Main Street.
  - street2 => (string)
    Specifies the optional second part of the street address for the return address, for example Suite 100.
  - street3 => (string)
    Specifies the optional third part of the street address for the return address, for example c/o Jane Doe.
  - APIVersion => (string)
    Specifies the version of the client tool.

#### Returns

``Guzzle\Service\Resource\Model``
Returns a response Model object

- ShippingLabelURL => (string)
- Warning => (string)

# `public `Guzzle\Service\Resource\Model``
`getStatus( array $args = array() )`

Executes the GetStatus operation.

This operation returns information about a job, including where the job is in the processing pipeline, the status of the results, and the signature value associated with the job. You can only return information about jobs you own.

#### Examples

- Basic formatting example

      $result = $client->getStatus(array(
          // JobId is required
          'JobId' => 'string',
          'APIVersion' => 'string',
      ));

#### Parameters

$args
  `array`
  $arg Associative array containing the following keys (required keys are bold):
  - JobId => (string)
    A unique identifier which refers to a particular job.
  - APIVersion => (string)
    Specifies the version of the client tool.

#### Returns

``Guzzle\Service\Resource\Model``
Returns a response Model object

- JobId => (string)
  A unique identifier which refers to a particular job.
- JobType => (string)
  Specifies whether the job to initiate is an import or export job.
- LocationCode => (string)
  A token representing the location of the storage device, such as "AtAWS".
- LocationMessage => (string)
  A more human readable form of the physical location of the storage device.
- ProgressCode => (string)
  A token representing the state of the job, such as "Started".
- ProgressMessage => (string)
  A more human readable form of the job status.
- Carrier => (string)
  Name of the shipping company. This value is included when the LocationCode is "Returned".
- TrackingNumber => (string)
  The shipping tracking number assigned by AWS Import/Export to the storage device when it's returned to you. We return this value when the LocationCode is "Returned".
- LogBucket => (string)
  Amazon S3 bucket for user logs.
- LogKey => (string)
  The key where the user logs were stored.
- ErrorCount => (int)
  Number of errors. We return this value when the ProgressCode is Success or SuccessWithErrors.
- Signature => (string)
  An encrypted code used to authenticate the request and response, for example, "DV+TpDfx1/TdSE9ktyK9k/bDTVI=". Only use this value is you want to create the signature file yourself. Generally you should use the SignatureFileContents value.
- SignatureFileContents => (string)
  An encrypted code used to authenticate the request and response, for example, "DV+TpDfx1/TdSE9ktyK9k/bDTVI=". Only use this value is you want to create the signature file yourself. Generally you should use the SignatureFileContents value.
- CurrentManifest => (string)
  The last manifest submitted, which will be used to process the job.
- CreationDate => (string)
  Timestamp of the CreateJob request in ISO8601 date format. For example "2010-03-28T20:27:35Z".
- ArtifactList => (array<associative-array>)
  A collection of artifacts.
  - (associative-array)
    A discrete item that contains the description and URL of an artifact (such as a PDF).
    - Description => (string)
      The associated description for this object.
    - URL => (string)
      The URL for a given Artifact.

# `public `Guzzle\Service\Resource\Model``
`listJobs( array $args = array() )`

Executes the ListJobs operation.

This operation returns the jobs associated with the requester. AWS Import/Export lists the jobs in reverse chronological order based on the date of creation. For example if Job Test1 was created 2009Dec30 and Test2 was created 2010Feb05, the ListJobs operation would return Test2 followed by Test1.

#### Examples

- Basic formatting example

      $result = $client->listJobs(array(
          'MaxJobs' => integer,
          'Marker' => 'string',
          'APIVersion' => 'string',
      ));

#### Parameters

$args
  `array`
  $arg Associative array containing the following keys (required keys are bold):
  - MaxJobs => (int)
    Sets the maximum number of jobs returned in the response. If there are additional jobs that were not returned because MaxJobs was exceeded, the response contains <IsTruncated>true</IsTruncated>. To return the additional jobs, see Marker.
  - Marker => (string)
    Specifies the JOBID to start after when listing the jobs created with your account. AWS Import/Export lists your jobs in reverse chronological order. See MaxJobs.
  - APIVersion => (string)
    Specifies the version of the client tool.

#### Returns

``Guzzle\Service\Resource\Model``
Returns a response Model object

- Jobs => (array<associative-array>)
  A list container for Jobs returned by the ListJobs operation.
  - (associative-array)
    Representation of a job returned by the ListJobs operation.
    - JobId => (string)
      A unique identifier which refers to a particular job.
    - CreationDate => (string)
      Timestamp of the CreateJob request in ISO8601 date format. For example "2010-03-28T20:27:35Z".
    - IsCanceled => (bool)
      Indicates whether the job was canceled.
    - JobType => (string)
      Specifies whether the job to initiate is an import or export job.
- IsTruncated => (bool)
  Indicates whether the list of jobs was truncated. If true, then call ListJobs again using the last JobId element as the marker.

# `public `Guzzle\Service\Resource\Model``
`updateJob( array $args = array() )`

Executes the UpdateJob operation.

You use this operation to change the parameters specified in the original manifest file by supplying a new manifest file. The manifest file attached to this request replaces the original manifest file. You can only use the operation after a CreateJob request but before the data transfer starts and you can only use it on jobs you own.

#### Examples

- Basic formatting example

      $result = $client->updateJob(array(
          // JobId is required
          'JobId' => 'string',
          // Manifest is required
          'Manifest' => 'string',
          // JobType is required
          'JobType' => 'string',
          // ValidateOnly is required
          'ValidateOnly' => true || false,
          'APIVersion' => 'string',
      ));

#### Parameters

$args
  `array`
  $arg Associative array containing the following keys (required keys are bold):
  - JobId => (string)
    A unique identifier which refers to a particular job.
  - Manifest => (string)
    The UTF-8 encoded text of the manifest file.
  - JobType => (string: Import | Export )
    Specifies whether the job to initiate is an import or export job.
  - ValidateOnly => (bool)
    Validate the manifest and parameter values in the request but do not actually create a job.
  - APIVersion => (string)
    Specifies the version of the client tool.

#### Returns

``Guzzle\Service\Resource\Model``
Returns a response Model object

- Success => (bool)
  Specifies whether (true) or not (false) AWS Import/Export updated your job.
- WarningMessage => (string)
  An optional message notifying you of non-fatal issues with the job, such as use of an incompatible Amazon S3 bucket name.
- ArtifactList => (array<associative-array>)
  A collection of artifacts.
  - (associative-array)
    A discrete item that contains the description and URL of an artifact (such as a PDF).
    - Description => (string)
      The associated description for this object.
    - URL => (string)
      The URL for a given Artifact.

# `public `Guzzle\Service\Resource\ResourceIteratorInterface``
`getListJobsIterator( array $args = array() )`

The input array uses the parameters of the ListJobs operation

#### Parameters

$args
  `array`
  $args

#### Returns

``Guzzle\Service\Resource\ResourceIteratorInterface``

### Methods inherited from Aws\Common\Client\AbstractClient

`__call()`, `__construct()`, `createRequest()`, `getAllEvents()`, `getApiVersion()`, `getCredentials()`, `getRegion()`, `getRegions()`, `getSignature()`, `getWaiter()`, `getWaiterFactory()`, `send()`, `setCredentials()`, `setRegion()`, `setWaiterFactory()`, `waitUntil()`

### Methods inherited from Guzzle\Service\Client

`execute()`, `executeMultiple()`, `getCommand()`, `getCommandFactory()`, `getDescription()`, `getInflector()`, `getIterator()`, `getResourceIteratorFactory()`, `prepareCommand()`, `setCommandFactory()`, `setDescription()`, `setInflector()`, `setResourceIteratorFactory()`

### Methods inherited from Guzzle\Http\Client

`delete()`, `expandTemplate()`, `extractPharCacert()`, `get()`, `getBaseUrl()`, `getConfig()`, `getCurlMulti()`, `getDefaultOption()`, `getDefaultUserAgent()`, `getUriTemplate()`, `head()`, `initSsl()`, `options()`, `patch()`, `post()`, `prepareRequest()`, `put()`, `sendMultiple()`, `setBaseUrl()`, `setConfig()`, `setCurlMulti()`, `setDefaultOption()`, `setRequestFactory()`, `setSslVerification()`, `setUriTemplate()`, `setUserAgent()`

### Methods inherited from Guzzle\Common\AbstractHasDispatcher

`addSubscriber()`, `dispatch()`, `getEventDispatcher()`, `setEventDispatcher()`

### Magic methods summary

## Constants summary

`string` | `LATEST_API_VERSION` | `'2010-06-01'` | #

### Constants inherited from Guzzle\Service\Client

`COMMAND_PARAMS`

### Constants inherited from Guzzle\Http\Client

`CURL_OPTIONS`, `DEFAULT_SELECT_TIMEOUT`, `DISABLE_REDIRECTS`, `MAX_HANDLES`, `REQUEST_OPTIONS`, `SSL_CERT_AUTHORITY`

### Constants inherited from Guzzle\Http\ClientInterface

`CREATE_REQUEST`, `HTTP_DATE`

## Properties summary

### Properties inherited from Aws\Common\Client\AbstractClient

`$aggregator`, `$credentials`, `$signature`, `$waiterFactory`

### Properties inherited from Guzzle\Service\Client

`$commandFactory`, `$inflector`, `$resourceIteratorFactory`, `$serviceDescription`

### Properties inherited from Guzzle\Http\Client

`$defaultHeaders`, `$requestFactory`, `$userAgent`

### Properties inherited from Guzzle\Common\AbstractHasDispatcher

`$eventDispatcher`