aws-sdk-acm 1.0.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,319 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module ACM
10
+ # @api private
11
+ module ClientApi
12
+
13
+ include Seahorse::Model
14
+
15
+ AddTagsToCertificateRequest = Shapes::StructureShape.new(name: 'AddTagsToCertificateRequest')
16
+ Arn = Shapes::StringShape.new(name: 'Arn')
17
+ CertificateBody = Shapes::StringShape.new(name: 'CertificateBody')
18
+ CertificateBodyBlob = Shapes::BlobShape.new(name: 'CertificateBodyBlob')
19
+ CertificateChain = Shapes::StringShape.new(name: 'CertificateChain')
20
+ CertificateChainBlob = Shapes::BlobShape.new(name: 'CertificateChainBlob')
21
+ CertificateDetail = Shapes::StructureShape.new(name: 'CertificateDetail')
22
+ CertificateStatus = Shapes::StringShape.new(name: 'CertificateStatus')
23
+ CertificateStatuses = Shapes::ListShape.new(name: 'CertificateStatuses')
24
+ CertificateSummary = Shapes::StructureShape.new(name: 'CertificateSummary')
25
+ CertificateSummaryList = Shapes::ListShape.new(name: 'CertificateSummaryList')
26
+ CertificateType = Shapes::StringShape.new(name: 'CertificateType')
27
+ DeleteCertificateRequest = Shapes::StructureShape.new(name: 'DeleteCertificateRequest')
28
+ DescribeCertificateRequest = Shapes::StructureShape.new(name: 'DescribeCertificateRequest')
29
+ DescribeCertificateResponse = Shapes::StructureShape.new(name: 'DescribeCertificateResponse')
30
+ DomainList = Shapes::ListShape.new(name: 'DomainList')
31
+ DomainNameString = Shapes::StringShape.new(name: 'DomainNameString')
32
+ DomainValidation = Shapes::StructureShape.new(name: 'DomainValidation')
33
+ DomainValidationList = Shapes::ListShape.new(name: 'DomainValidationList')
34
+ DomainValidationOption = Shapes::StructureShape.new(name: 'DomainValidationOption')
35
+ DomainValidationOptionList = Shapes::ListShape.new(name: 'DomainValidationOptionList')
36
+ FailureReason = Shapes::StringShape.new(name: 'FailureReason')
37
+ GetCertificateRequest = Shapes::StructureShape.new(name: 'GetCertificateRequest')
38
+ GetCertificateResponse = Shapes::StructureShape.new(name: 'GetCertificateResponse')
39
+ IdempotencyToken = Shapes::StringShape.new(name: 'IdempotencyToken')
40
+ ImportCertificateRequest = Shapes::StructureShape.new(name: 'ImportCertificateRequest')
41
+ ImportCertificateResponse = Shapes::StructureShape.new(name: 'ImportCertificateResponse')
42
+ InUseList = Shapes::ListShape.new(name: 'InUseList')
43
+ InvalidArnException = Shapes::StructureShape.new(name: 'InvalidArnException')
44
+ InvalidDomainValidationOptionsException = Shapes::StructureShape.new(name: 'InvalidDomainValidationOptionsException')
45
+ InvalidStateException = Shapes::StructureShape.new(name: 'InvalidStateException')
46
+ InvalidTagException = Shapes::StructureShape.new(name: 'InvalidTagException')
47
+ KeyAlgorithm = Shapes::StringShape.new(name: 'KeyAlgorithm')
48
+ LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
49
+ ListCertificatesRequest = Shapes::StructureShape.new(name: 'ListCertificatesRequest')
50
+ ListCertificatesResponse = Shapes::StructureShape.new(name: 'ListCertificatesResponse')
51
+ ListTagsForCertificateRequest = Shapes::StructureShape.new(name: 'ListTagsForCertificateRequest')
52
+ ListTagsForCertificateResponse = Shapes::StructureShape.new(name: 'ListTagsForCertificateResponse')
53
+ MaxItems = Shapes::IntegerShape.new(name: 'MaxItems')
54
+ NextToken = Shapes::StringShape.new(name: 'NextToken')
55
+ PrivateKeyBlob = Shapes::BlobShape.new(name: 'PrivateKeyBlob')
56
+ RemoveTagsFromCertificateRequest = Shapes::StructureShape.new(name: 'RemoveTagsFromCertificateRequest')
57
+ RequestCertificateRequest = Shapes::StructureShape.new(name: 'RequestCertificateRequest')
58
+ RequestCertificateResponse = Shapes::StructureShape.new(name: 'RequestCertificateResponse')
59
+ RequestInProgressException = Shapes::StructureShape.new(name: 'RequestInProgressException')
60
+ ResendValidationEmailRequest = Shapes::StructureShape.new(name: 'ResendValidationEmailRequest')
61
+ ResourceInUseException = Shapes::StructureShape.new(name: 'ResourceInUseException')
62
+ ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
63
+ RevocationReason = Shapes::StringShape.new(name: 'RevocationReason')
64
+ String = Shapes::StringShape.new(name: 'String')
65
+ TStamp = Shapes::TimestampShape.new(name: 'TStamp')
66
+ Tag = Shapes::StructureShape.new(name: 'Tag')
67
+ TagKey = Shapes::StringShape.new(name: 'TagKey')
68
+ TagList = Shapes::ListShape.new(name: 'TagList')
69
+ TagValue = Shapes::StringShape.new(name: 'TagValue')
70
+ TooManyTagsException = Shapes::StructureShape.new(name: 'TooManyTagsException')
71
+ ValidationEmailList = Shapes::ListShape.new(name: 'ValidationEmailList')
72
+
73
+ AddTagsToCertificateRequest.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "CertificateArn"))
74
+ AddTagsToCertificateRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, required: true, location_name: "Tags"))
75
+ AddTagsToCertificateRequest.struct_class = Types::AddTagsToCertificateRequest
76
+
77
+ CertificateDetail.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "CertificateArn"))
78
+ CertificateDetail.add_member(:domain_name, Shapes::ShapeRef.new(shape: DomainNameString, location_name: "DomainName"))
79
+ CertificateDetail.add_member(:subject_alternative_names, Shapes::ShapeRef.new(shape: DomainList, location_name: "SubjectAlternativeNames"))
80
+ CertificateDetail.add_member(:domain_validation_options, Shapes::ShapeRef.new(shape: DomainValidationList, location_name: "DomainValidationOptions"))
81
+ CertificateDetail.add_member(:serial, Shapes::ShapeRef.new(shape: String, location_name: "Serial"))
82
+ CertificateDetail.add_member(:subject, Shapes::ShapeRef.new(shape: String, location_name: "Subject"))
83
+ CertificateDetail.add_member(:issuer, Shapes::ShapeRef.new(shape: String, location_name: "Issuer"))
84
+ CertificateDetail.add_member(:created_at, Shapes::ShapeRef.new(shape: TStamp, location_name: "CreatedAt"))
85
+ CertificateDetail.add_member(:issued_at, Shapes::ShapeRef.new(shape: TStamp, location_name: "IssuedAt"))
86
+ CertificateDetail.add_member(:imported_at, Shapes::ShapeRef.new(shape: TStamp, location_name: "ImportedAt"))
87
+ CertificateDetail.add_member(:status, Shapes::ShapeRef.new(shape: CertificateStatus, location_name: "Status"))
88
+ CertificateDetail.add_member(:revoked_at, Shapes::ShapeRef.new(shape: TStamp, location_name: "RevokedAt"))
89
+ CertificateDetail.add_member(:revocation_reason, Shapes::ShapeRef.new(shape: RevocationReason, location_name: "RevocationReason"))
90
+ CertificateDetail.add_member(:not_before, Shapes::ShapeRef.new(shape: TStamp, location_name: "NotBefore"))
91
+ CertificateDetail.add_member(:not_after, Shapes::ShapeRef.new(shape: TStamp, location_name: "NotAfter"))
92
+ CertificateDetail.add_member(:key_algorithm, Shapes::ShapeRef.new(shape: KeyAlgorithm, location_name: "KeyAlgorithm"))
93
+ CertificateDetail.add_member(:signature_algorithm, Shapes::ShapeRef.new(shape: String, location_name: "SignatureAlgorithm"))
94
+ CertificateDetail.add_member(:in_use_by, Shapes::ShapeRef.new(shape: InUseList, location_name: "InUseBy"))
95
+ CertificateDetail.add_member(:failure_reason, Shapes::ShapeRef.new(shape: FailureReason, location_name: "FailureReason"))
96
+ CertificateDetail.add_member(:type, Shapes::ShapeRef.new(shape: CertificateType, location_name: "Type"))
97
+ CertificateDetail.struct_class = Types::CertificateDetail
98
+
99
+ CertificateStatuses.member = Shapes::ShapeRef.new(shape: CertificateStatus)
100
+
101
+ CertificateSummary.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "CertificateArn"))
102
+ CertificateSummary.add_member(:domain_name, Shapes::ShapeRef.new(shape: DomainNameString, location_name: "DomainName"))
103
+ CertificateSummary.struct_class = Types::CertificateSummary
104
+
105
+ CertificateSummaryList.member = Shapes::ShapeRef.new(shape: CertificateSummary)
106
+
107
+ DeleteCertificateRequest.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "CertificateArn"))
108
+ DeleteCertificateRequest.struct_class = Types::DeleteCertificateRequest
109
+
110
+ DescribeCertificateRequest.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "CertificateArn"))
111
+ DescribeCertificateRequest.struct_class = Types::DescribeCertificateRequest
112
+
113
+ DescribeCertificateResponse.add_member(:certificate, Shapes::ShapeRef.new(shape: CertificateDetail, location_name: "Certificate"))
114
+ DescribeCertificateResponse.struct_class = Types::DescribeCertificateResponse
115
+
116
+ DomainList.member = Shapes::ShapeRef.new(shape: DomainNameString)
117
+
118
+ DomainValidation.add_member(:domain_name, Shapes::ShapeRef.new(shape: DomainNameString, required: true, location_name: "DomainName"))
119
+ DomainValidation.add_member(:validation_emails, Shapes::ShapeRef.new(shape: ValidationEmailList, location_name: "ValidationEmails"))
120
+ DomainValidation.add_member(:validation_domain, Shapes::ShapeRef.new(shape: DomainNameString, location_name: "ValidationDomain"))
121
+ DomainValidation.struct_class = Types::DomainValidation
122
+
123
+ DomainValidationList.member = Shapes::ShapeRef.new(shape: DomainValidation)
124
+
125
+ DomainValidationOption.add_member(:domain_name, Shapes::ShapeRef.new(shape: DomainNameString, required: true, location_name: "DomainName"))
126
+ DomainValidationOption.add_member(:validation_domain, Shapes::ShapeRef.new(shape: DomainNameString, required: true, location_name: "ValidationDomain"))
127
+ DomainValidationOption.struct_class = Types::DomainValidationOption
128
+
129
+ DomainValidationOptionList.member = Shapes::ShapeRef.new(shape: DomainValidationOption)
130
+
131
+ GetCertificateRequest.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "CertificateArn"))
132
+ GetCertificateRequest.struct_class = Types::GetCertificateRequest
133
+
134
+ GetCertificateResponse.add_member(:certificate, Shapes::ShapeRef.new(shape: CertificateBody, location_name: "Certificate"))
135
+ GetCertificateResponse.add_member(:certificate_chain, Shapes::ShapeRef.new(shape: CertificateChain, location_name: "CertificateChain"))
136
+ GetCertificateResponse.struct_class = Types::GetCertificateResponse
137
+
138
+ ImportCertificateRequest.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "CertificateArn"))
139
+ ImportCertificateRequest.add_member(:certificate, Shapes::ShapeRef.new(shape: CertificateBodyBlob, required: true, location_name: "Certificate"))
140
+ ImportCertificateRequest.add_member(:private_key, Shapes::ShapeRef.new(shape: PrivateKeyBlob, required: true, location_name: "PrivateKey"))
141
+ ImportCertificateRequest.add_member(:certificate_chain, Shapes::ShapeRef.new(shape: CertificateChainBlob, location_name: "CertificateChain"))
142
+ ImportCertificateRequest.struct_class = Types::ImportCertificateRequest
143
+
144
+ ImportCertificateResponse.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "CertificateArn"))
145
+ ImportCertificateResponse.struct_class = Types::ImportCertificateResponse
146
+
147
+ InUseList.member = Shapes::ShapeRef.new(shape: String)
148
+
149
+ ListCertificatesRequest.add_member(:certificate_statuses, Shapes::ShapeRef.new(shape: CertificateStatuses, location_name: "CertificateStatuses"))
150
+ ListCertificatesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
151
+ ListCertificatesRequest.add_member(:max_items, Shapes::ShapeRef.new(shape: MaxItems, location_name: "MaxItems"))
152
+ ListCertificatesRequest.struct_class = Types::ListCertificatesRequest
153
+
154
+ ListCertificatesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
155
+ ListCertificatesResponse.add_member(:certificate_summary_list, Shapes::ShapeRef.new(shape: CertificateSummaryList, location_name: "CertificateSummaryList"))
156
+ ListCertificatesResponse.struct_class = Types::ListCertificatesResponse
157
+
158
+ ListTagsForCertificateRequest.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "CertificateArn"))
159
+ ListTagsForCertificateRequest.struct_class = Types::ListTagsForCertificateRequest
160
+
161
+ ListTagsForCertificateResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
162
+ ListTagsForCertificateResponse.struct_class = Types::ListTagsForCertificateResponse
163
+
164
+ RemoveTagsFromCertificateRequest.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "CertificateArn"))
165
+ RemoveTagsFromCertificateRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, required: true, location_name: "Tags"))
166
+ RemoveTagsFromCertificateRequest.struct_class = Types::RemoveTagsFromCertificateRequest
167
+
168
+ RequestCertificateRequest.add_member(:domain_name, Shapes::ShapeRef.new(shape: DomainNameString, required: true, location_name: "DomainName"))
169
+ RequestCertificateRequest.add_member(:subject_alternative_names, Shapes::ShapeRef.new(shape: DomainList, location_name: "SubjectAlternativeNames"))
170
+ RequestCertificateRequest.add_member(:idempotency_token, Shapes::ShapeRef.new(shape: IdempotencyToken, location_name: "IdempotencyToken"))
171
+ RequestCertificateRequest.add_member(:domain_validation_options, Shapes::ShapeRef.new(shape: DomainValidationOptionList, location_name: "DomainValidationOptions"))
172
+ RequestCertificateRequest.struct_class = Types::RequestCertificateRequest
173
+
174
+ RequestCertificateResponse.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "CertificateArn"))
175
+ RequestCertificateResponse.struct_class = Types::RequestCertificateResponse
176
+
177
+ ResendValidationEmailRequest.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "CertificateArn"))
178
+ ResendValidationEmailRequest.add_member(:domain, Shapes::ShapeRef.new(shape: DomainNameString, required: true, location_name: "Domain"))
179
+ ResendValidationEmailRequest.add_member(:validation_domain, Shapes::ShapeRef.new(shape: DomainNameString, required: true, location_name: "ValidationDomain"))
180
+ ResendValidationEmailRequest.struct_class = Types::ResendValidationEmailRequest
181
+
182
+ Tag.add_member(:key, Shapes::ShapeRef.new(shape: TagKey, required: true, location_name: "Key"))
183
+ Tag.add_member(:value, Shapes::ShapeRef.new(shape: TagValue, location_name: "Value"))
184
+ Tag.struct_class = Types::Tag
185
+
186
+ TagList.member = Shapes::ShapeRef.new(shape: Tag)
187
+
188
+ ValidationEmailList.member = Shapes::ShapeRef.new(shape: String)
189
+
190
+
191
+ # @api private
192
+ API = Seahorse::Model::Api.new.tap do |api|
193
+
194
+ api.version = "2015-12-08"
195
+
196
+ api.metadata = {
197
+ "endpointPrefix" => "acm",
198
+ "jsonVersion" => "1.1",
199
+ "protocol" => "json",
200
+ "serviceFullName" => "AWS Certificate Manager",
201
+ "signatureVersion" => "v4",
202
+ "targetPrefix" => "CertificateManager",
203
+ }
204
+
205
+ api.add_operation(:add_tags_to_certificate, Seahorse::Model::Operation.new.tap do |o|
206
+ o.name = "AddTagsToCertificate"
207
+ o.http_method = "POST"
208
+ o.http_request_uri = "/"
209
+ o.input = Shapes::ShapeRef.new(shape: AddTagsToCertificateRequest)
210
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
211
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
212
+ o.errors << Shapes::ShapeRef.new(shape: InvalidArnException)
213
+ o.errors << Shapes::ShapeRef.new(shape: InvalidTagException)
214
+ o.errors << Shapes::ShapeRef.new(shape: TooManyTagsException)
215
+ end)
216
+
217
+ api.add_operation(:delete_certificate, Seahorse::Model::Operation.new.tap do |o|
218
+ o.name = "DeleteCertificate"
219
+ o.http_method = "POST"
220
+ o.http_request_uri = "/"
221
+ o.input = Shapes::ShapeRef.new(shape: DeleteCertificateRequest)
222
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
223
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
224
+ o.errors << Shapes::ShapeRef.new(shape: ResourceInUseException)
225
+ o.errors << Shapes::ShapeRef.new(shape: InvalidArnException)
226
+ end)
227
+
228
+ api.add_operation(:describe_certificate, Seahorse::Model::Operation.new.tap do |o|
229
+ o.name = "DescribeCertificate"
230
+ o.http_method = "POST"
231
+ o.http_request_uri = "/"
232
+ o.input = Shapes::ShapeRef.new(shape: DescribeCertificateRequest)
233
+ o.output = Shapes::ShapeRef.new(shape: DescribeCertificateResponse)
234
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
235
+ o.errors << Shapes::ShapeRef.new(shape: InvalidArnException)
236
+ end)
237
+
238
+ api.add_operation(:get_certificate, Seahorse::Model::Operation.new.tap do |o|
239
+ o.name = "GetCertificate"
240
+ o.http_method = "POST"
241
+ o.http_request_uri = "/"
242
+ o.input = Shapes::ShapeRef.new(shape: GetCertificateRequest)
243
+ o.output = Shapes::ShapeRef.new(shape: GetCertificateResponse)
244
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
245
+ o.errors << Shapes::ShapeRef.new(shape: RequestInProgressException)
246
+ o.errors << Shapes::ShapeRef.new(shape: InvalidArnException)
247
+ end)
248
+
249
+ api.add_operation(:import_certificate, Seahorse::Model::Operation.new.tap do |o|
250
+ o.name = "ImportCertificate"
251
+ o.http_method = "POST"
252
+ o.http_request_uri = "/"
253
+ o.input = Shapes::ShapeRef.new(shape: ImportCertificateRequest)
254
+ o.output = Shapes::ShapeRef.new(shape: ImportCertificateResponse)
255
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
256
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
257
+ end)
258
+
259
+ api.add_operation(:list_certificates, Seahorse::Model::Operation.new.tap do |o|
260
+ o.name = "ListCertificates"
261
+ o.http_method = "POST"
262
+ o.http_request_uri = "/"
263
+ o.input = Shapes::ShapeRef.new(shape: ListCertificatesRequest)
264
+ o.output = Shapes::ShapeRef.new(shape: ListCertificatesResponse)
265
+ o[:pager] = Aws::Pager.new(
266
+ limit_key: "max_items",
267
+ tokens: {
268
+ "next_token" => "next_token"
269
+ }
270
+ )
271
+ end)
272
+
273
+ api.add_operation(:list_tags_for_certificate, Seahorse::Model::Operation.new.tap do |o|
274
+ o.name = "ListTagsForCertificate"
275
+ o.http_method = "POST"
276
+ o.http_request_uri = "/"
277
+ o.input = Shapes::ShapeRef.new(shape: ListTagsForCertificateRequest)
278
+ o.output = Shapes::ShapeRef.new(shape: ListTagsForCertificateResponse)
279
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
280
+ o.errors << Shapes::ShapeRef.new(shape: InvalidArnException)
281
+ end)
282
+
283
+ api.add_operation(:remove_tags_from_certificate, Seahorse::Model::Operation.new.tap do |o|
284
+ o.name = "RemoveTagsFromCertificate"
285
+ o.http_method = "POST"
286
+ o.http_request_uri = "/"
287
+ o.input = Shapes::ShapeRef.new(shape: RemoveTagsFromCertificateRequest)
288
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
289
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
290
+ o.errors << Shapes::ShapeRef.new(shape: InvalidArnException)
291
+ o.errors << Shapes::ShapeRef.new(shape: InvalidTagException)
292
+ end)
293
+
294
+ api.add_operation(:request_certificate, Seahorse::Model::Operation.new.tap do |o|
295
+ o.name = "RequestCertificate"
296
+ o.http_method = "POST"
297
+ o.http_request_uri = "/"
298
+ o.input = Shapes::ShapeRef.new(shape: RequestCertificateRequest)
299
+ o.output = Shapes::ShapeRef.new(shape: RequestCertificateResponse)
300
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
301
+ o.errors << Shapes::ShapeRef.new(shape: InvalidDomainValidationOptionsException)
302
+ end)
303
+
304
+ api.add_operation(:resend_validation_email, Seahorse::Model::Operation.new.tap do |o|
305
+ o.name = "ResendValidationEmail"
306
+ o.http_method = "POST"
307
+ o.http_request_uri = "/"
308
+ o.input = Shapes::ShapeRef.new(shape: ResendValidationEmailRequest)
309
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
310
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
311
+ o.errors << Shapes::ShapeRef.new(shape: InvalidStateException)
312
+ o.errors << Shapes::ShapeRef.new(shape: InvalidArnException)
313
+ o.errors << Shapes::ShapeRef.new(shape: InvalidDomainValidationOptionsException)
314
+ end)
315
+ end
316
+
317
+ end
318
+ end
319
+ end
@@ -0,0 +1,7 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
@@ -0,0 +1,23 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module ACM
10
+ module Errors
11
+
12
+ extend Aws::Errors::DynamicErrors
13
+
14
+ # Raised when calling #load or #data on a resource class that can not be
15
+ # loaded. This can happen when:
16
+ #
17
+ # * A resource class has identifiers, but no data attributes.
18
+ # * Resource data is only available when making an API call that
19
+ # enumerates all resources of that type.
20
+ class ResourceNotLoadable < RuntimeError; end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,25 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module ACM
10
+ class Resource
11
+
12
+ # @param options ({})
13
+ # @option options [Client] :client
14
+ def initialize(options = {})
15
+ @client = options[:client] || Client.new(options)
16
+ end
17
+
18
+ # @return [Client]
19
+ def client
20
+ @client
21
+ end
22
+
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,709 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module ACM
10
+ module Types
11
+
12
+ # @note When making an API call, pass AddTagsToCertificateRequest
13
+ # data as a hash:
14
+ #
15
+ # {
16
+ # certificate_arn: "Arn", # required
17
+ # tags: [ # required
18
+ # {
19
+ # key: "TagKey", # required
20
+ # value: "TagValue",
21
+ # },
22
+ # ],
23
+ # }
24
+ # @!attribute [rw] certificate_arn
25
+ # String that contains the ARN of the ACM Certificate to which the tag
26
+ # is to be applied. This must be of the form:
27
+ #
28
+ # `arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012`
29
+ #
30
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)
31
+ # and AWS Service Namespaces][1].
32
+ #
33
+ #
34
+ #
35
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
36
+ # @return [String]
37
+ #
38
+ # @!attribute [rw] tags
39
+ # The key-value pair that defines the tag. The tag value is optional.
40
+ # @return [Array<Types::Tag>]
41
+ class AddTagsToCertificateRequest < Struct.new(
42
+ :certificate_arn,
43
+ :tags)
44
+ include Aws::Structure
45
+ end
46
+
47
+ # Contains detailed metadata about an ACM Certificate. This structure is
48
+ # returned in the response to a DescribeCertificate request.
49
+ # @!attribute [rw] certificate_arn
50
+ # The Amazon Resource Name (ARN) of the certificate. For more
51
+ # information about ARNs, see [Amazon Resource Names (ARNs) and AWS
52
+ # Service Namespaces][1] in the *AWS General Reference*.
53
+ #
54
+ #
55
+ #
56
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
57
+ # @return [String]
58
+ #
59
+ # @!attribute [rw] domain_name
60
+ # The fully qualified domain name for the certificate, such as
61
+ # www.example.com or example.com.
62
+ # @return [String]
63
+ #
64
+ # @!attribute [rw] subject_alternative_names
65
+ # One or more domain names (subject alternative names) included in the
66
+ # certificate. This list contains the domain names that are bound to
67
+ # the public key that is contained in the certificate. The subject
68
+ # alternative names include the canonical domain name (CN) of the
69
+ # certificate and additional domain names that can be used to connect
70
+ # to the website.
71
+ # @return [Array<String>]
72
+ #
73
+ # @!attribute [rw] domain_validation_options
74
+ # Contains information about the email address or addresses used for
75
+ # domain validation. This field exists only when the certificate type
76
+ # is `AMAZON_ISSUED`.
77
+ # @return [Array<Types::DomainValidation>]
78
+ #
79
+ # @!attribute [rw] serial
80
+ # The serial number of the certificate.
81
+ # @return [String]
82
+ #
83
+ # @!attribute [rw] subject
84
+ # The name of the entity that is associated with the public key
85
+ # contained in the certificate.
86
+ # @return [String]
87
+ #
88
+ # @!attribute [rw] issuer
89
+ # The name of the certificate authority that issued and signed the
90
+ # certificate.
91
+ # @return [String]
92
+ #
93
+ # @!attribute [rw] created_at
94
+ # The time at which the certificate was requested. This value exists
95
+ # only when the certificate type is `AMAZON_ISSUED`.
96
+ # @return [Time]
97
+ #
98
+ # @!attribute [rw] issued_at
99
+ # The time at which the certificate was issued. This value exists only
100
+ # when the certificate type is `AMAZON_ISSUED`.
101
+ # @return [Time]
102
+ #
103
+ # @!attribute [rw] imported_at
104
+ # The date and time at which the certificate was imported. This value
105
+ # exists only when the certificate type is `IMPORTED`.
106
+ # @return [Time]
107
+ #
108
+ # @!attribute [rw] status
109
+ # The status of the certificate.
110
+ # @return [String]
111
+ #
112
+ # @!attribute [rw] revoked_at
113
+ # The time at which the certificate was revoked. This value exists
114
+ # only when the certificate status is `REVOKED`.
115
+ # @return [Time]
116
+ #
117
+ # @!attribute [rw] revocation_reason
118
+ # The reason the certificate was revoked. This value exists only when
119
+ # the certificate status is `REVOKED`.
120
+ # @return [String]
121
+ #
122
+ # @!attribute [rw] not_before
123
+ # The time before which the certificate is not valid.
124
+ # @return [Time]
125
+ #
126
+ # @!attribute [rw] not_after
127
+ # The time after which the certificate is not valid.
128
+ # @return [Time]
129
+ #
130
+ # @!attribute [rw] key_algorithm
131
+ # The algorithm that was used to generate the key pair (the public and
132
+ # private key).
133
+ # @return [String]
134
+ #
135
+ # @!attribute [rw] signature_algorithm
136
+ # The algorithm that was used to sign the certificate.
137
+ # @return [String]
138
+ #
139
+ # @!attribute [rw] in_use_by
140
+ # A list of ARNs for the AWS resources that are using the certificate.
141
+ # A certificate can be used by multiple AWS resources.
142
+ # @return [Array<String>]
143
+ #
144
+ # @!attribute [rw] failure_reason
145
+ # The reason the certificate request failed. This value exists only
146
+ # when the certificate status is `FAILED`. For more information, see
147
+ # [Certificate Request Failed][1] in the *AWS Certificate Manager User
148
+ # Guide*.
149
+ #
150
+ #
151
+ #
152
+ # [1]: http://docs.aws.amazon.com/acm/latest/userguide/troubleshooting.html#troubleshooting-failed
153
+ # @return [String]
154
+ #
155
+ # @!attribute [rw] type
156
+ # The source of the certificate. For certificates provided by ACM,
157
+ # this value is `AMAZON_ISSUED`. For certificates that you imported
158
+ # with ImportCertificate, this value is `IMPORTED`. ACM does not
159
+ # provide [managed renewal][1] for imported certificates. For more
160
+ # information about the differences between certificates that you
161
+ # import and those that ACM provides, see [Importing Certificates][2]
162
+ # in the *AWS Certificate Manager User Guide*.
163
+ #
164
+ #
165
+ #
166
+ # [1]: http://docs.aws.amazon.com/acm/latest/userguide/acm-renewal.html
167
+ # [2]: http://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html
168
+ # @return [String]
169
+ class CertificateDetail < Struct.new(
170
+ :certificate_arn,
171
+ :domain_name,
172
+ :subject_alternative_names,
173
+ :domain_validation_options,
174
+ :serial,
175
+ :subject,
176
+ :issuer,
177
+ :created_at,
178
+ :issued_at,
179
+ :imported_at,
180
+ :status,
181
+ :revoked_at,
182
+ :revocation_reason,
183
+ :not_before,
184
+ :not_after,
185
+ :key_algorithm,
186
+ :signature_algorithm,
187
+ :in_use_by,
188
+ :failure_reason,
189
+ :type)
190
+ include Aws::Structure
191
+ end
192
+
193
+ # This structure is returned in the response object of ListCertificates
194
+ # action.
195
+ # @!attribute [rw] certificate_arn
196
+ # Amazon Resource Name (ARN) of the certificate. This is of the form:
197
+ #
198
+ # `arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012`
199
+ #
200
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)
201
+ # and AWS Service Namespaces][1].
202
+ #
203
+ #
204
+ #
205
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
206
+ # @return [String]
207
+ #
208
+ # @!attribute [rw] domain_name
209
+ # Fully qualified domain name (FQDN), such as www.example.com or
210
+ # example.com, for the certificate.
211
+ # @return [String]
212
+ class CertificateSummary < Struct.new(
213
+ :certificate_arn,
214
+ :domain_name)
215
+ include Aws::Structure
216
+ end
217
+
218
+ # @note When making an API call, pass DeleteCertificateRequest
219
+ # data as a hash:
220
+ #
221
+ # {
222
+ # certificate_arn: "Arn", # required
223
+ # }
224
+ # @!attribute [rw] certificate_arn
225
+ # String that contains the ARN of the ACM Certificate to be deleted.
226
+ # This must be of the form:
227
+ #
228
+ # `arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012`
229
+ #
230
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)
231
+ # and AWS Service Namespaces][1].
232
+ #
233
+ #
234
+ #
235
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
236
+ # @return [String]
237
+ class DeleteCertificateRequest < Struct.new(
238
+ :certificate_arn)
239
+ include Aws::Structure
240
+ end
241
+
242
+ # @note When making an API call, pass DescribeCertificateRequest
243
+ # data as a hash:
244
+ #
245
+ # {
246
+ # certificate_arn: "Arn", # required
247
+ # }
248
+ # @!attribute [rw] certificate_arn
249
+ # String that contains an ACM Certificate ARN. The ARN must be of the
250
+ # form:
251
+ #
252
+ # `arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012`
253
+ #
254
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)
255
+ # and AWS Service Namespaces][1].
256
+ #
257
+ #
258
+ #
259
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
260
+ # @return [String]
261
+ class DescribeCertificateRequest < Struct.new(
262
+ :certificate_arn)
263
+ include Aws::Structure
264
+ end
265
+
266
+ # @!attribute [rw] certificate
267
+ # Contains a CertificateDetail structure that lists the fields of an
268
+ # ACM Certificate.
269
+ # @return [Types::CertificateDetail]
270
+ class DescribeCertificateResponse < Struct.new(
271
+ :certificate)
272
+ include Aws::Structure
273
+ end
274
+
275
+ # Structure that contains the domain name, the base validation domain to
276
+ # which validation email is sent, and the email addresses used to
277
+ # validate the domain identity.
278
+ # @!attribute [rw] domain_name
279
+ # Fully Qualified Domain Name (FQDN) of the form `www.example.com or `
280
+ # `example.com`.
281
+ # @return [String]
282
+ #
283
+ # @!attribute [rw] validation_emails
284
+ # A list of contact address for the domain registrant.
285
+ # @return [Array<String>]
286
+ #
287
+ # @!attribute [rw] validation_domain
288
+ # The base validation domain that acts as the suffix of the email
289
+ # addresses that are used to send the emails.
290
+ # @return [String]
291
+ class DomainValidation < Struct.new(
292
+ :domain_name,
293
+ :validation_emails,
294
+ :validation_domain)
295
+ include Aws::Structure
296
+ end
297
+
298
+ # This structure is used in the request object of the RequestCertificate
299
+ # action.
300
+ # @note When making an API call, pass DomainValidationOption
301
+ # data as a hash:
302
+ #
303
+ # {
304
+ # domain_name: "DomainNameString", # required
305
+ # validation_domain: "DomainNameString", # required
306
+ # }
307
+ # @!attribute [rw] domain_name
308
+ # Fully Qualified Domain Name (FQDN) of the certificate being
309
+ # requested.
310
+ # @return [String]
311
+ #
312
+ # @!attribute [rw] validation_domain
313
+ # The domain to which validation email is sent. This is the base
314
+ # validation domain that will act as the suffix of the email
315
+ # addresses. This must be the same as the `DomainName` value or a
316
+ # superdomain of the `DomainName` value. For example, if you requested
317
+ # a certificate for `site.subdomain.example.com` and specify a
318
+ # **ValidationDomain** of `subdomain.example.com`, ACM sends email to
319
+ # the domain registrant, technical contact, and administrative contact
320
+ # in WHOIS for the base domain and the following five addresses:
321
+ #
322
+ # * admin@subdomain.example.com
323
+ #
324
+ # * administrator@subdomain.example.com
325
+ #
326
+ # * hostmaster@subdomain.example.com
327
+ #
328
+ # * postmaster@subdomain.example.com
329
+ #
330
+ # * webmaster@subdomain.example.com
331
+ # @return [String]
332
+ class DomainValidationOption < Struct.new(
333
+ :domain_name,
334
+ :validation_domain)
335
+ include Aws::Structure
336
+ end
337
+
338
+ # @note When making an API call, pass GetCertificateRequest
339
+ # data as a hash:
340
+ #
341
+ # {
342
+ # certificate_arn: "Arn", # required
343
+ # }
344
+ # @!attribute [rw] certificate_arn
345
+ # String that contains a certificate ARN in the following format:
346
+ #
347
+ # `arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012`
348
+ #
349
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)
350
+ # and AWS Service Namespaces][1].
351
+ #
352
+ #
353
+ #
354
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
355
+ # @return [String]
356
+ class GetCertificateRequest < Struct.new(
357
+ :certificate_arn)
358
+ include Aws::Structure
359
+ end
360
+
361
+ # @!attribute [rw] certificate
362
+ # String that contains the ACM Certificate represented by the ARN
363
+ # specified at input.
364
+ # @return [String]
365
+ #
366
+ # @!attribute [rw] certificate_chain
367
+ # The certificate chain that contains the root certificate issued by
368
+ # the certificate authority (CA).
369
+ # @return [String]
370
+ class GetCertificateResponse < Struct.new(
371
+ :certificate,
372
+ :certificate_chain)
373
+ include Aws::Structure
374
+ end
375
+
376
+ # @note When making an API call, pass ImportCertificateRequest
377
+ # data as a hash:
378
+ #
379
+ # {
380
+ # certificate_arn: "Arn",
381
+ # certificate: "data", # required
382
+ # private_key: "data", # required
383
+ # certificate_chain: "data",
384
+ # }
385
+ # @!attribute [rw] certificate_arn
386
+ # The [Amazon Resource Name (ARN)][1] of an imported certificate to
387
+ # replace. To import a new certificate, omit this field.
388
+ #
389
+ #
390
+ #
391
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
392
+ # @return [String]
393
+ #
394
+ # @!attribute [rw] certificate
395
+ # The certificate to import. It must meet the following requirements:
396
+ #
397
+ # * Must be PEM-encoded.
398
+ #
399
+ # * Must contain a 1024-bit or 2048-bit RSA public key.
400
+ #
401
+ # * Must be valid at the time of import. You cannot import a
402
+ # certificate before its validity period begins (the certificate's
403
+ # `NotBefore` date) or after it expires (the certificate's
404
+ # `NotAfter` date).
405
+ # @return [String]
406
+ #
407
+ # @!attribute [rw] private_key
408
+ # The private key that matches the public key in the certificate. It
409
+ # must meet the following requirements:
410
+ #
411
+ # * Must be PEM-encoded.
412
+ #
413
+ # * Must be unencrypted. You cannot import a private key that is
414
+ # protected by a password or passphrase.
415
+ # @return [String]
416
+ #
417
+ # @!attribute [rw] certificate_chain
418
+ # The certificate chain. It must be PEM-encoded.
419
+ # @return [String]
420
+ class ImportCertificateRequest < Struct.new(
421
+ :certificate_arn,
422
+ :certificate,
423
+ :private_key,
424
+ :certificate_chain)
425
+ include Aws::Structure
426
+ end
427
+
428
+ # @!attribute [rw] certificate_arn
429
+ # The [Amazon Resource Name (ARN)][1] of the imported certificate.
430
+ #
431
+ #
432
+ #
433
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
434
+ # @return [String]
435
+ class ImportCertificateResponse < Struct.new(
436
+ :certificate_arn)
437
+ include Aws::Structure
438
+ end
439
+
440
+ # @note When making an API call, pass ListCertificatesRequest
441
+ # data as a hash:
442
+ #
443
+ # {
444
+ # certificate_statuses: ["PENDING_VALIDATION"], # accepts PENDING_VALIDATION, ISSUED, INACTIVE, EXPIRED, VALIDATION_TIMED_OUT, REVOKED, FAILED
445
+ # next_token: "NextToken",
446
+ # max_items: 1,
447
+ # }
448
+ # @!attribute [rw] certificate_statuses
449
+ # The status or statuses on which to filter the list of ACM
450
+ # Certificates.
451
+ # @return [Array<String>]
452
+ #
453
+ # @!attribute [rw] next_token
454
+ # Use this parameter only when paginating results and only in a
455
+ # subsequent request after you receive a response with truncated
456
+ # results. Set it to the value of `NextToken` from the response you
457
+ # just received.
458
+ # @return [String]
459
+ #
460
+ # @!attribute [rw] max_items
461
+ # Use this parameter when paginating results to specify the maximum
462
+ # number of items to return in the response. If additional items exist
463
+ # beyond the number you specify, the `NextToken` element is sent in
464
+ # the response. Use this `NextToken` value in a subsequent request to
465
+ # retrieve additional items.
466
+ # @return [Integer]
467
+ class ListCertificatesRequest < Struct.new(
468
+ :certificate_statuses,
469
+ :next_token,
470
+ :max_items)
471
+ include Aws::Structure
472
+ end
473
+
474
+ # @!attribute [rw] next_token
475
+ # When the list is truncated, this value is present and contains the
476
+ # value to use for the `NextToken` parameter in a subsequent
477
+ # pagination request.
478
+ # @return [String]
479
+ #
480
+ # @!attribute [rw] certificate_summary_list
481
+ # A list of ACM Certificates.
482
+ # @return [Array<Types::CertificateSummary>]
483
+ class ListCertificatesResponse < Struct.new(
484
+ :next_token,
485
+ :certificate_summary_list)
486
+ include Aws::Structure
487
+ end
488
+
489
+ # @note When making an API call, pass ListTagsForCertificateRequest
490
+ # data as a hash:
491
+ #
492
+ # {
493
+ # certificate_arn: "Arn", # required
494
+ # }
495
+ # @!attribute [rw] certificate_arn
496
+ # String that contains the ARN of the ACM Certificate for which you
497
+ # want to list the tags. This must be of the form:
498
+ #
499
+ # `arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012`
500
+ #
501
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)
502
+ # and AWS Service Namespaces][1].
503
+ #
504
+ #
505
+ #
506
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
507
+ # @return [String]
508
+ class ListTagsForCertificateRequest < Struct.new(
509
+ :certificate_arn)
510
+ include Aws::Structure
511
+ end
512
+
513
+ # @!attribute [rw] tags
514
+ # The key-value pairs that define the applied tags.
515
+ # @return [Array<Types::Tag>]
516
+ class ListTagsForCertificateResponse < Struct.new(
517
+ :tags)
518
+ include Aws::Structure
519
+ end
520
+
521
+ # @note When making an API call, pass RemoveTagsFromCertificateRequest
522
+ # data as a hash:
523
+ #
524
+ # {
525
+ # certificate_arn: "Arn", # required
526
+ # tags: [ # required
527
+ # {
528
+ # key: "TagKey", # required
529
+ # value: "TagValue",
530
+ # },
531
+ # ],
532
+ # }
533
+ # @!attribute [rw] certificate_arn
534
+ # String that contains the ARN of the ACM Certificate with one or more
535
+ # tags that you want to remove. This must be of the form:
536
+ #
537
+ # `arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012`
538
+ #
539
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)
540
+ # and AWS Service Namespaces][1].
541
+ #
542
+ #
543
+ #
544
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
545
+ # @return [String]
546
+ #
547
+ # @!attribute [rw] tags
548
+ # The key-value pair that defines the tag to remove.
549
+ # @return [Array<Types::Tag>]
550
+ class RemoveTagsFromCertificateRequest < Struct.new(
551
+ :certificate_arn,
552
+ :tags)
553
+ include Aws::Structure
554
+ end
555
+
556
+ # @note When making an API call, pass RequestCertificateRequest
557
+ # data as a hash:
558
+ #
559
+ # {
560
+ # domain_name: "DomainNameString", # required
561
+ # subject_alternative_names: ["DomainNameString"],
562
+ # idempotency_token: "IdempotencyToken",
563
+ # domain_validation_options: [
564
+ # {
565
+ # domain_name: "DomainNameString", # required
566
+ # validation_domain: "DomainNameString", # required
567
+ # },
568
+ # ],
569
+ # }
570
+ # @!attribute [rw] domain_name
571
+ # Fully qualified domain name (FQDN), such as www.example.com, of the
572
+ # site you want to secure with an ACM Certificate. Use an asterisk
573
+ # (*) to create a wildcard certificate that protects several sites in
574
+ # the same domain. For example, *.example.com protects
575
+ # www.example.com, site.example.com, and images.example.com.
576
+ # @return [String]
577
+ #
578
+ # @!attribute [rw] subject_alternative_names
579
+ # Additional FQDNs to be included in the Subject Alternative Name
580
+ # extension of the ACM Certificate. For example, add the name
581
+ # www.example.net to a certificate for which the `DomainName` field is
582
+ # www.example.com if users can reach your site by using either name.
583
+ # @return [Array<String>]
584
+ #
585
+ # @!attribute [rw] idempotency_token
586
+ # Customer chosen string that can be used to distinguish between calls
587
+ # to `RequestCertificate`. Idempotency tokens time out after one hour.
588
+ # Therefore, if you call `RequestCertificate` multiple times with the
589
+ # same idempotency token within one hour, ACM recognizes that you are
590
+ # requesting only one certificate and will issue only one. If you
591
+ # change the idempotency token for each call, ACM recognizes that you
592
+ # are requesting multiple certificates.
593
+ # @return [String]
594
+ #
595
+ # @!attribute [rw] domain_validation_options
596
+ # The base validation domain that will act as the suffix of the email
597
+ # addresses that are used to send the emails. This must be the same as
598
+ # the `Domain` value or a superdomain of the `Domain` value. For
599
+ # example, if you requested a certificate for `test.example.com` and
600
+ # specify **DomainValidationOptions** of `example.com`, ACM sends
601
+ # email to the domain registrant, technical contact, and
602
+ # administrative contact in WHOIS and the following five addresses:
603
+ #
604
+ # * admin@example.com
605
+ #
606
+ # * administrator@example.com
607
+ #
608
+ # * hostmaster@example.com
609
+ #
610
+ # * postmaster@example.com
611
+ #
612
+ # * webmaster@example.com
613
+ # @return [Array<Types::DomainValidationOption>]
614
+ class RequestCertificateRequest < Struct.new(
615
+ :domain_name,
616
+ :subject_alternative_names,
617
+ :idempotency_token,
618
+ :domain_validation_options)
619
+ include Aws::Structure
620
+ end
621
+
622
+ # @!attribute [rw] certificate_arn
623
+ # String that contains the ARN of the issued certificate. This must be
624
+ # of the form:
625
+ #
626
+ # `arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012`
627
+ # @return [String]
628
+ class RequestCertificateResponse < Struct.new(
629
+ :certificate_arn)
630
+ include Aws::Structure
631
+ end
632
+
633
+ # @note When making an API call, pass ResendValidationEmailRequest
634
+ # data as a hash:
635
+ #
636
+ # {
637
+ # certificate_arn: "Arn", # required
638
+ # domain: "DomainNameString", # required
639
+ # validation_domain: "DomainNameString", # required
640
+ # }
641
+ # @!attribute [rw] certificate_arn
642
+ # String that contains the ARN of the requested certificate. The
643
+ # certificate ARN is generated and returned by the RequestCertificate
644
+ # action as soon as the request is made. By default, using this
645
+ # parameter causes email to be sent to all top-level domains you
646
+ # specified in the certificate request.
647
+ #
648
+ # The ARN must be of the form:
649
+ #
650
+ # `arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012`
651
+ # @return [String]
652
+ #
653
+ # @!attribute [rw] domain
654
+ # The Fully Qualified Domain Name (FQDN) of the certificate that needs
655
+ # to be validated.
656
+ # @return [String]
657
+ #
658
+ # @!attribute [rw] validation_domain
659
+ # The base validation domain that will act as the suffix of the email
660
+ # addresses that are used to send the emails. This must be the same as
661
+ # the `Domain` value or a superdomain of the `Domain` value. For
662
+ # example, if you requested a certificate for
663
+ # `site.subdomain.example.com` and specify a **ValidationDomain** of
664
+ # `subdomain.example.com`, ACM sends email to the domain registrant,
665
+ # technical contact, and administrative contact in WHOIS and the
666
+ # following five addresses:
667
+ #
668
+ # * admin@subdomain.example.com
669
+ #
670
+ # * administrator@subdomain.example.com
671
+ #
672
+ # * hostmaster@subdomain.example.com
673
+ #
674
+ # * postmaster@subdomain.example.com
675
+ #
676
+ # * webmaster@subdomain.example.com
677
+ # @return [String]
678
+ class ResendValidationEmailRequest < Struct.new(
679
+ :certificate_arn,
680
+ :domain,
681
+ :validation_domain)
682
+ include Aws::Structure
683
+ end
684
+
685
+ # A key-value pair that identifies or specifies metadata about an ACM
686
+ # resource.
687
+ # @note When making an API call, pass Tag
688
+ # data as a hash:
689
+ #
690
+ # {
691
+ # key: "TagKey", # required
692
+ # value: "TagValue",
693
+ # }
694
+ # @!attribute [rw] key
695
+ # The key of the tag.
696
+ # @return [String]
697
+ #
698
+ # @!attribute [rw] value
699
+ # The value of the tag.
700
+ # @return [String]
701
+ class Tag < Struct.new(
702
+ :key,
703
+ :value)
704
+ include Aws::Structure
705
+ end
706
+
707
+ end
708
+ end
709
+ end