Menu
AWS Certificate Manager
API Reference (API Version 2015-12-08)

RequestCertificate

Requests an ACM Certificate for use with other AWS services. To request an ACM Certificate, you must specify the fully qualified domain name (FQDN) for your site in the DomainName parameter. You can also specify additional FQDNs in the SubjectAlternativeNames parameter if users can reach your site by using other names.

For each domain name you specify, email is sent to the domain owner to request approval to issue the certificate. Email is sent to three registered contact addresses in the WHOIS database and to five common system administration addresses formed from the DomainName you enter or the optional ValidationDomain parameter. For more information, see Validate Domain Ownership.

After receiving approval from the domain owner, the ACM Certificate is issued. For more information, see the AWS Certificate Manager User Guide.

Request Syntax

{ "DomainName": "string", "DomainValidationOptions": [ { "DomainName": "string", "ValidationDomain": "string" } ], "IdempotencyToken": "string", "SubjectAlternativeNames": [ "string" ], "ValidationMethod": "string" }

Request Parameters

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

The request accepts the following data in JSON format.

Note

In the following list, the required parameters are described first.

DomainName

Fully qualified domain name (FQDN), such as www.example.com, of the site 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, *.example.com protects www.example.com, site.example.com, and images.example.com.

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

Type: String

Length Constraints: Minimum length of 1. Maximum length of 253.

Pattern: ^(\*\.)?(((?!-)[A-Za-z0-9-]{0,62}[A-Za-z0-9])\.)+((?!-)[A-Za-z0-9-]{1,62}[A-Za-z0-9])$

Required: Yes

DomainValidationOptions

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

Type: Array of DomainValidationOption objects

Array Members: Minimum number of 1 item. Maximum number of 100 items.

Required: No

IdempotencyToken

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.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 32.

Pattern: \w+

Required: No

SubjectAlternativeNames

Additional FQDNs to be included in the Subject Alternative Name extension of the ACM Certificate. For example, add the name www.example.net to a certificate for which the DomainName field is www.example.com 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 limit is 10 domain names. If you need more than 10 names, you must request a limit increase. For more information, see Limits.

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.

Type: Array of strings

Array Members: Minimum number of 1 item. Maximum number of 100 items.

Length Constraints: Minimum length of 1. Maximum length of 253.

Pattern: ^(\*\.)?(((?!-)[A-Za-z0-9-]{0,62}[A-Za-z0-9])\.)+((?!-)[A-Za-z0-9-]{1,62}[A-Za-z0-9])$

Required: No

ValidationMethod

The method you want to use to validate your domain.

Type: String

Valid Values: EMAIL | DNS

Required: No

Response Syntax

{ "CertificateArn": "string" }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

CertificateArn

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

arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012

Type: String

Length Constraints: Minimum length of 20. Maximum length of 2048.

Pattern: arn:[\w+=/,.@-]+:[\w+=/,.@-]+:[\w+=/,.@-]*:[0-9]+:[\w+=,.@-]+(/[\w+=,.@-]+)*

Errors

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

InvalidDomainValidationOptionsException

One or more values in the DomainValidationOption structure is incorrect.

HTTP Status Code: 400

LimitExceededException

An ACM limit has been exceeded. For example, you may have input more domains than are allowed or you've requested too many certificates for your account. See the exception message returned by ACM to determine which limit you have violated. For more information about ACM limits, see the Limits topic.

HTTP Status Code: 400

Example

Request an ACM Certificate

Sample Request

POST / HTTP/1.1 Host: acm.us-east-1.amazonaws.com Accept-Encoding: identity Content-Length: 75 X-Amz-Target: CertificateManager.RequestCertificate X-Amz-Date: 20151222T165732Z User-Agent: aws-cli/1.9.7 Python/2.7.3 Linux/3.13.0-73-generic botocore/1.3.7 Content-Type: application/x-amz-json-1.1 Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20151222/us-east-1/acm/aws4_request, SignedHeaders=content-type;host;user-agent;x-amz-date;x-amz-target, Signature=dbba4b1fa1199c011c0b781b94c97b14cbe75fa64dc6424232c903798d2a83b5 { "SubjectAlternativeNames": ["example.com"], "DomainName": "www.example.com" }

Sample Response

HTTP/1.1 200 OK x-amzn-RequestId: 15320637-a8cd-11e5-9141-fbb8a078e3eb Content-Type: application/x-amz-json-1.1 Content-Length: 104 Date: Tue, 22 Dec 2015 16:57:28 GMT { "CertificateArn":"arn:aws:acm:us-east-1:123456789012:certificate/1ad574bd-eeb0-466e-b961-74ec8b405093" }

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: