ExportImageCommand

Exports an Amazon Machine Image (AMI) to a VM file. For more information, see Exporting a VM directly from an Amazon Machine Image (AMI)  in the VM Import/Export User Guide.

Example Syntax

Use a bare-bones client and the command you need to make an API call.

import { EC2Client, ExportImageCommand } from "@aws-sdk/client-ec2"; // ES Modules import
// const { EC2Client, ExportImageCommand } = require("@aws-sdk/client-ec2"); // CommonJS import
const client = new EC2Client(config);
const input = { // ExportImageRequest
  ClientToken: "STRING_VALUE",
  Description: "STRING_VALUE",
  DiskImageFormat: "VMDK" || "RAW" || "VHD", // required
  DryRun: true || false,
  ImageId: "STRING_VALUE", // required
  S3ExportLocation: { // ExportTaskS3LocationRequest
    S3Bucket: "STRING_VALUE", // required
    S3Prefix: "STRING_VALUE",
  },
  RoleName: "STRING_VALUE",
  TagSpecifications: [ // TagSpecificationList
    { // TagSpecification
      ResourceType: "capacity-reservation" || "client-vpn-endpoint" || "customer-gateway" || "carrier-gateway" || "coip-pool" || "declarative-policies-report" || "dedicated-host" || "dhcp-options" || "egress-only-internet-gateway" || "elastic-ip" || "elastic-gpu" || "export-image-task" || "export-instance-task" || "fleet" || "fpga-image" || "host-reservation" || "image" || "import-image-task" || "import-snapshot-task" || "instance" || "instance-event-window" || "internet-gateway" || "ipam" || "ipam-pool" || "ipam-scope" || "ipv4pool-ec2" || "ipv6pool-ec2" || "key-pair" || "launch-template" || "local-gateway" || "local-gateway-route-table" || "local-gateway-virtual-interface" || "local-gateway-virtual-interface-group" || "local-gateway-route-table-vpc-association" || "local-gateway-route-table-virtual-interface-group-association" || "natgateway" || "network-acl" || "network-interface" || "network-insights-analysis" || "network-insights-path" || "network-insights-access-scope" || "network-insights-access-scope-analysis" || "placement-group" || "prefix-list" || "replace-root-volume-task" || "reserved-instances" || "route-table" || "security-group" || "security-group-rule" || "snapshot" || "spot-fleet-request" || "spot-instances-request" || "subnet" || "subnet-cidr-reservation" || "traffic-mirror-filter" || "traffic-mirror-session" || "traffic-mirror-target" || "transit-gateway" || "transit-gateway-attachment" || "transit-gateway-connect-peer" || "transit-gateway-multicast-domain" || "transit-gateway-policy-table" || "transit-gateway-route-table" || "transit-gateway-route-table-announcement" || "volume" || "vpc" || "vpc-endpoint" || "vpc-endpoint-connection" || "vpc-endpoint-service" || "vpc-endpoint-service-permission" || "vpc-peering-connection" || "vpn-connection" || "vpn-gateway" || "vpc-flow-log" || "capacity-reservation-fleet" || "traffic-mirror-filter-rule" || "vpc-endpoint-connection-device-type" || "verified-access-instance" || "verified-access-group" || "verified-access-endpoint" || "verified-access-policy" || "verified-access-trust-provider" || "vpn-connection-device-type" || "vpc-block-public-access-exclusion" || "route-server" || "route-server-endpoint" || "route-server-peer" || "ipam-resource-discovery" || "ipam-resource-discovery-association" || "instance-connect-endpoint" || "verified-access-endpoint-target" || "ipam-external-resource-verification-token",
      Tags: [ // TagList
        { // Tag
          Key: "STRING_VALUE",
          Value: "STRING_VALUE",
        },
      ],
    },
  ],
};
const command = new ExportImageCommand(input);
const response = await client.send(command);
// { // ExportImageResult
//   Description: "STRING_VALUE",
//   DiskImageFormat: "VMDK" || "RAW" || "VHD",
//   ExportImageTaskId: "STRING_VALUE",
//   ImageId: "STRING_VALUE",
//   RoleName: "STRING_VALUE",
//   Progress: "STRING_VALUE",
//   S3ExportLocation: { // ExportTaskS3Location
//     S3Bucket: "STRING_VALUE",
//     S3Prefix: "STRING_VALUE",
//   },
//   Status: "STRING_VALUE",
//   StatusMessage: "STRING_VALUE",
//   Tags: [ // TagList
//     { // Tag
//       Key: "STRING_VALUE",
//       Value: "STRING_VALUE",
//     },
//   ],
// };

ExportImageCommand Input

See ExportImageCommandInput for more details

Parameter
Type
Description
DiskImageFormat
Required
DiskImageFormat | undefined

The disk image format.

ImageId
Required
string | undefined

The ID of the image.

S3ExportLocation
Required
ExportTaskS3LocationRequest | undefined

The Amazon S3 bucket for the destination image. The destination bucket must exist.

ClientToken
string | undefined

Token to enable idempotency for export image requests.

Description
string | undefined

A description of the image being exported. The maximum length is 255 characters.

DryRun
boolean | undefined

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

RoleName
string | undefined

The name of the role that grants VM Import/Export permission to export images to your Amazon S3 bucket. If this parameter is not specified, the default role is named 'vmimport'.

TagSpecifications
TagSpecification[] | undefined

The tags to apply to the export image task during creation.

ExportImageCommand Output

See ExportImageCommandOutput for details

Parameter
Type
Description
$metadata
Required
ResponseMetadata
Metadata pertaining to this request.
Description
string | undefined

A description of the image being exported.

DiskImageFormat
DiskImageFormat | undefined

The disk image format for the exported image.

ExportImageTaskId
string | undefined

The ID of the export image task.

ImageId
string | undefined

The ID of the image.

Progress
string | undefined

The percent complete of the export image task.

RoleName
string | undefined

The name of the role that grants VM Import/Export permission to export images to your Amazon S3 bucket.

S3ExportLocation
ExportTaskS3Location | undefined

Information about the destination Amazon S3 bucket.

Status
string | undefined

The status of the export image task. The possible values are active, completed, deleting, and deleted.

StatusMessage
string | undefined

The status message for the export image task.

Tags
Tag[] | undefined

Any tags assigned to the export image task.

Throws

Name
Fault
Details
EC2ServiceException
Base exception class for all service exceptions from EC2 service.