Table Of Contents


User Guide

First time using the AWS CLI? See the User Guide for help getting started.

Note: You are viewing the documentation for an older major version of the AWS CLI (version 1).

AWS CLI version 2, the latest major version of AWS CLI, is now stable and recommended for general use. To view this page for the AWS CLI version 2, click here. For more information see the AWS CLI version 2 installation instructions and migration guide.

[ aws . acm ]



Requests an ACM certificate for use with other AWS services. To request an ACM certificate, you must specify a fully qualified domain name (FQDN) in the DomainName parameter. You can also specify additional FQDNs in the SubjectAlternativeNames parameter.

If you are requesting a private certificate, domain validation is not required. If you are requesting a public certificate, each domain name that you specify must be validated to verify that you own or control the domain. You can use DNS validation or email validation . We recommend that you use DNS validation. ACM issues public certificates after receiving approval from the domain owner.

See also: AWS API Documentation

See 'aws help' for descriptions of global parameters.


--domain-name <value>
[--validation-method <value>]
[--subject-alternative-names <value>]
[--idempotency-token <value>]
[--domain-validation-options <value>]
[--options <value>]
[--certificate-authority-arn <value>]
[--tags <value>]
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]


--domain-name (string)

Fully qualified domain name (FQDN), such as, that you want to secure with an ACM certificate. Use an asterisk (*) to create a wildcard certificate that protects several sites in the same domain. For example, * protects,, and

The first domain name you enter cannot exceed 64 octets, including periods. Each subsequent Subject Alternative Name (SAN), however, can be up to 253 octets in length.

--validation-method (string)

The method you want to use if you are requesting a public certificate to validate that you own or control domain. You can validate with DNS or validate with email . We recommend that you use DNS validation.

Possible values:

  • DNS

--subject-alternative-names (list)

Additional FQDNs to be included in the Subject Alternative Name extension of the ACM certificate. For example, add the name to a certificate for which the DomainName field is if users can reach your site by using either name. The maximum number of domain names that you can add to an ACM certificate is 100. However, the initial quota is 10 domain names. If you need more than 10 names, you must request a quota increase. For more information, see Quotas .

The maximum length of a SAN DNS name is 253 octets. The name is made up of multiple labels separated by periods. No label can be longer than 63 octets. Consider the following examples:

  • (63 octets).(63 octets).(63 octets).(61 octets) is legal because the total length is 253 octets (63+1+63+1+63+1+61) and no label exceeds 63 octets.
  • (64 octets).(63 octets).(63 octets).(61 octets) is not legal because the total length exceeds 253 octets (64+1+63+1+63+1+61) and the first label exceeds 63 octets.
  • (63 octets).(63 octets).(63 octets).(62 octets) is not legal because the total length of the DNS name (63+1+63+1+63+1+62) exceeds 253 octets.


"string" "string" ...

--idempotency-token (string)

Customer chosen string that can be used to distinguish between calls to RequestCertificate . Idempotency tokens time out after one hour. Therefore, if you call RequestCertificate multiple times with the same idempotency token within one hour, ACM recognizes that you are requesting only one certificate and will issue only one. If you change the idempotency token for each call, ACM recognizes that you are requesting multiple certificates.

--domain-validation-options (list)

The domain name that you want ACM to use to send you emails so that you can validate domain ownership.

Shorthand Syntax:

DomainName=string,ValidationDomain=string ...

JSON Syntax:

    "DomainName": "string",
    "ValidationDomain": "string"

--options (structure)

Currently, you can use this parameter to specify whether to add the certificate to a certificate transparency log. Certificate transparency makes it possible to detect SSL/TLS certificates that have been mistakenly or maliciously issued. Certificates that have not been logged typically produce an error message in a browser. For more information, see Opting Out of Certificate Transparency Logging .

Shorthand Syntax:


JSON Syntax:

  "CertificateTransparencyLoggingPreference": "ENABLED"|"DISABLED"

--certificate-authority-arn (string)

The Amazon Resource Name (ARN) of the private certificate authority (CA) that will be used to issue the certificate. If you do not provide an ARN and you are trying to request a private certificate, ACM will attempt to issue a public certificate. For more information about private CAs, see the AWS Certificate Manager Private Certificate Authority (PCA) user guide. The ARN must have the following form:


--tags (list)

One or more resource tags to associate with the certificate.

Shorthand Syntax:

Key=string,Value=string ...

JSON Syntax:

    "Key": "string",
    "Value": "string"

--cli-input-json (string) Performs service operation based on the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, the CLI values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

See 'aws help' for descriptions of global parameters.


To request a new ACM certificate

The following request-certificate command requests a new certificate for the domain using DNS validation:

aws acm request-certificate --domain-name --validation-method DNS

You can enter an idempotency token to distinguish between calls to request-certificate:

aws acm request-certificate --domain-name --validation-method DNS --idempotency-token 91adc45q

You can enter one or more subject alternative names to request a certificate that will protect more than one apex domain:

aws acm request-certificate --domain-name --validation-method DNS --idempotency-token 91adc45q --subject-alternative-names

You can enter an alternative name that can also be used to reach your website:

aws acm request-certificate --domain-name --validation-method DNS --idempotency-token 91adc45q --subject-alternative-names

You can use an asterisk (*) as a wildcard to create a certificate for several subdomains in the same domain:

aws acm request-certificate --domain-name --validation-method DNS --idempotency-token 91adc45q --subject-alternative-names *

You can also enter multiple alternative names:

aws acm request-certificate --domain-name --validation-method DNS --subject-alternative-names

If you are using email for validation, you can enter domain validation options to specify the domain to which the validation email will be sent:

aws acm request-certificate --domain-name --validation-method EMAIL --subject-alternative-names --domain-validation-options,

The following command opts out of certificate transparency logging when you request a new certificate:

aws acm request-certificate --domain-name --validation-method DNS --certificate-options CertificateTransparencyLoggingPreference=DISABLED --idempotency-token 184627


CertificateArn -> (string)

String that contains the ARN of the issued certificate. This must be of the form: