AWS Identity and Access Management
API Reference (API Version 2010-05-08)


Creates a new virtual MFA device for the AWS account. After creating the virtual MFA, use EnableMFADevice to attach the MFA device to an IAM user. For more information about creating and working with virtual MFA devices, go to Using a Virtual MFA Device in the Using IAM guide.

For information about limits on the number of MFA devices you can create, see Limitations on Entities in the Using IAM guide.


The seed information contained in the QR code and the Base32 string should be treated like any other secret access information, such as your AWS access keys or your passwords. After you provision your virtual device, you should ensure that the information is destroyed following secure procedures.

Request Parameters

For information about the common parameters that all actions use, see Common Parameters.


The path for the virtual MFA device. For more information about paths, see IAM Identifiers in the Using IAM guide.

This parameter is optional. If it is not included, it defaults to a slash (/).

Type: String

Length constraints: Minimum length of 1. Maximum length of 512.

Pattern: (\u002F)|(\u002F[\u0021-\u007F]+\u002F)

Required: No


The name of the virtual MFA device. Use with path to uniquely identify a virtual MFA device.

Type: String

Length constraints: Minimum length of 1.

Pattern: [\w+=,.@-]+

Required: Yes

Response Elements

The following element is returned.


A newly created virtual MFA device.

Type: VirtualMFADevice


For information about the errors that are common to all actions, see Common Errors.


The request was rejected because it attempted to create a resource that already exists.

HTTP Status Code: 409


The request was rejected because it attempted to create resources beyond the current AWS account limits. The error message describes the limit exceeded.

HTTP Status Code: 409


The request processing has failed because of an unknown error, exception or failure.

HTTP Status Code: 500


Sample Request


Sample Response

<CreateVirtualMFADeviceResponse xmlns="">
        89504E470D0A1A0AASDFAHSDFKJKLJFKALSDFJASDF <!-- byte array of png file -->