canonical: https://jentic.com/apis/amazonaws.com/amazon-snowball

# AWS Amazon Import/Export Snowball

Jentic publishes the only available OpenAPI specification for Amazon Import/Export Snowball, keeping it validated and agent-ready. The Snow Family management API lets organisations create and track jobs that move large volumes of data between on-premises sites and Amazon S3 using physical Snowball, Snowball Edge, and Snowcone devices. Agents can create addresses, request jobs and clusters, fetch job manifests and unlock codes, generate return shipping labels, and manage long-term pricing arrangements. The 26 operations cover addresses, jobs, clusters, manifests, return shipping, and Snow device pricing.

## For AI agents

Manage AWS Snow Family data-transfer jobs from request to return shipping. Agents can create addresses, request import or export jobs, retrieve manifests and unlock codes, and track job status.

## Scope

Does not transfer data between regions over the network, manage S3 object lifecycle, or perform on-device data manipulation - use for ordering and tracking Snow Family physical data-transfer jobs only.

## Capabilities

- Create shipping addresses with CreateAddress so jobs can be sent to a physical site
- Request import or export jobs against an S3 bucket using CreateJob
- Group multiple devices into a Snowball Edge cluster with CreateCluster
- Retrieve the encrypted job manifest and unlock code needed to access a device on arrival
- Generate or check return shipping labels with CreateReturnShippingLabel and DescribeReturnShippingLabel
- Inspect job, cluster, and address state with Describe and List operations
- Configure long-term pricing for repeated Snow device usage

## Use cases

### Bulk Data Migration into Amazon S3

Enterprises moving petabyte-scale data into AWS use Snowball to ship physical devices rather than saturate their network. Operators CreateAddress, CreateJob with JobType=IMPORT and the destination S3 bucket, and use the returned JobId to fetch the manifest and unlock code via GetJobManifest and GetJobUnlockCode once the device arrives.

Example prompt: CreateAddress for the data centre, CreateJob with JobType=IMPORT, RoleARN, and S3 destination bucket, then GetJobManifest and GetJobUnlockCode once Status=IN_TRANSIT_TO_CUSTOMER.

### Edge Computing Cluster for Disconnected Sites

Field operations (research vessels, remote installations) order Snowball Edge clusters to run compute and storage in environments without reliable internet. CreateCluster provisions multiple devices that operate as a unit, and DescribeCluster tracks shipment, deployment, and return status.

Example prompt: CreateCluster with JobType=LOCAL_USE, AddressId, and node count, then DescribeCluster periodically to track ClusterState moving from AwaitingQuorum to InUse.

### Job Lifecycle Tracking and Return Logistics

Operations teams track Snowball job state across creation, shipping, customer use, and return - using ListJobs, DescribeJob, CreateReturnShippingLabel, and DescribeReturnShippingLabel. Agents can flag jobs that are overdue for return or generate replacement labels when one is lost.

Example prompt: ListJobs filtered by JobState=WITH_CUSTOMER, then for any job past its expected return date call CreateReturnShippingLabel and DescribeReturnShippingLabel to confirm generation.

### AI Agent Operational Status via Jentic

AI agents using Jentic can answer fleet-management questions like 'which Snowball jobs are still active?' or 'what is the unlock code for job X?' by calling the Snowball API through Jentic. Searches by intent return the right operation, and vault-stored AWS credentials sign each call.

Example prompt: Search Jentic for 'list snowball jobs', execute ListJobs filtered by JobState=IN_TRANSIT_TO_AWS, and return JobId, JobState, and CreationDate for each.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /#X-Amz-Target=AWSIESnowballJobManagementService.CreateJob | Create an import, export, or local-use Snowball job |
| POST | /#X-Amz-Target=AWSIESnowballJobManagementService.CreateAddress | Register a shipping address for jobs |
| POST | /#X-Amz-Target=AWSIESnowballJobManagementService.DescribeJob | Fetch job state, shipping, and configuration |
| POST | /#X-Amz-Target=AWSIESnowballJobManagementService.GetJobManifest | Retrieve the encrypted manifest for a delivered device |
| POST | /#X-Amz-Target=AWSIESnowballJobManagementService.GetJobUnlockCode | Fetch the device unlock code |
| POST | /#X-Amz-Target=AWSIESnowballJobManagementService.CreateReturnShippingLabel | Generate a return shipping label for a completed job |
| POST | /#X-Amz-Target=AWSIESnowballJobManagementService.CancelJob | Cancel a Snowball job that has not yet shipped |

## Key resources

- **Addresses** — Shipping addresses; CreateAddress, DescribeAddress, DescribeAddresses
- **Jobs** — Snow data-transfer jobs; CreateJob, DescribeJob, ListJobs, UpdateJob, CancelJob
- **Clusters** — Multi-device Snowball Edge clusters; CreateCluster, DescribeCluster, ListClusters, UpdateCluster, CancelCluster
- **Manifest and Unlock** — Per-job credentials needed to operate a delivered device; GetJobManifest, GetJobUnlockCode
- **Return Shipping** — CreateReturnShippingLabel, DescribeReturnShippingLabel, UpdateJobShipmentState
- **Long-Term Pricing** — Multi-year device commitments; CreateLongTermPricing, ListLongTermPricing, UpdateLongTermPricing

## Why Jentic

- **Setup:** Wiring Amazon Import/Export Snowball by hand means computing SigV4 signatures, selecting the right regional snowball host, and routing calls through the X-Amz-Target action header yourself. Through Jentic you install once, import Snowball from the API Directory, store the access keys once, and your agent calls it.
- **Permission scoping:** Snowball's actions route through one endpoint by X-Amz-Target rather than resource ids in the path, so scope the agent to the operations it needs, such as CreateJob and DescribeJob. You choose the operations it may call, so destructive ones like CancelJob are not included unless you add them.
- **Credential handling:** Your AWS access keys are stored once, encrypted, by your own Jentic One instance and used to sign each Snowball request with SigV4 at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'create a snowball job' or 'track a job in transit', and Jentic returns the matching Snowball operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **AWS Database Migration Service** — Online database migration over the network rather than physical device shipping
- **AWS Backup** — Centralised backup management; complements Snowball for ongoing protection after initial bulk import
- **AWS Data Pipeline** — Workflow scheduling that can orchestrate post-import processing of S3 data delivered by Snowball

## FAQ

### Why is there no official OpenAPI spec for Amazon Import/Export Snowball?

AWS does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Amazon Import/Export Snowball via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Amazon Import/Export Snowball use?

Snowball uses AWS Signature Version 4 with IAM credentials and permissions on the snowball:* and importexport:* actions. Through Jentic, AWS keys are stored encrypted in the vault and signed into each call - the raw credentials never enter the agent's runtime.

### Can I track a Snowball device after it ships to me?

Yes. DescribeJob returns the JobState (NEW, PREPARING_APPLIANCE, IN_TRANSIT_TO_CUSTOMER, WITH_CUSTOMER, IN_TRANSIT_TO_AWS, COMPLETE) along with shipping carrier and tracking number details. GetJobManifest and GetJobUnlockCode are required once the device is on site to access the encrypted contents.

### What are the rate limits for the Amazon Import/Export Snowball?

Snowball applies standard AWS API throttling - most operations are limited to a few requests per second per account per region with brief burst capacity. Throttled requests return a ThrottlingException; clients should retry with exponential backoff.

### How do I create a Snowball import job through Jentic?

Through Jentic, search for 'create a snowball import job', load the CreateJob schema, and execute with JobType=IMPORT, RoleARN, AddressId, and the Resources block listing destination S3 buckets. Jentic returns the JobId so the agent can poll DescribeJob until the device ships.

### Is the Amazon Import/Export Snowball free?

Snowball charges per device-job (a service fee that includes 10 days of on-site use) plus shipping and per-day rental beyond the included period. Long-term pricing offers reduced rates for multi-year commitments; see https://aws.amazon.com/snowball/pricing/.

### Can I limit what my agent is allowed to do with the Amazon Import/Export Snowball API?

Yes. Because Jentic One is self-hosted, your own rules decide which Snowball operations and credentials the agent may use. Snowball routes every action through a single endpoint via the X-Amz-Target header rather than resource ids in the path, so you scope the agent to just the operations it needs, such as CreateJob and DescribeJob. Since you choose the operations it may call, destructive ones like CancelJob are excluded unless you add them.
