aws-sdk-pinpointemail 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 64914380bfe7e0e1aedc904728d3124d2b09dc94
4
+ data.tar.gz: a3a6abf1151864be4d14f6b8a818ec2a2ec6ecf0
5
+ SHA512:
6
+ metadata.gz: 4696a3994fefeac458a13396a0d059ee5225369a530d772bf77009fb80917adb317ba5139f8b56681cf768c4ce467238ed150f2e670711b365a2abe6387e6d60
7
+ data.tar.gz: b79131fd3727ac7fcaf63dba3cf9c319843932b15a13c73484949488c9962291357c68394d79d4eec79caf68ef797e92e225fc8bea330a80b0239096f9fa98cc
@@ -0,0 +1,47 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'aws-sdk-core'
9
+ require 'aws-sigv4'
10
+
11
+ require_relative 'aws-sdk-pinpointemail/types'
12
+ require_relative 'aws-sdk-pinpointemail/client_api'
13
+ require_relative 'aws-sdk-pinpointemail/client'
14
+ require_relative 'aws-sdk-pinpointemail/errors'
15
+ require_relative 'aws-sdk-pinpointemail/resource'
16
+ require_relative 'aws-sdk-pinpointemail/customizations'
17
+
18
+ # This module provides support for Amazon Pinpoint Email Service. This module is available in the
19
+ # `aws-sdk-pinpointemail` gem.
20
+ #
21
+ # # Client
22
+ #
23
+ # The {Client} class provides one method for each API operation. Operation
24
+ # methods each accept a hash of request parameters and return a response
25
+ # structure.
26
+ #
27
+ # See {Client} for more information.
28
+ #
29
+ # # Errors
30
+ #
31
+ # Errors returned from Amazon Pinpoint Email Service all
32
+ # extend {Errors::ServiceError}.
33
+ #
34
+ # begin
35
+ # # do stuff
36
+ # rescue Aws::PinpointEmail::Errors::ServiceError
37
+ # # rescues all service API errors
38
+ # end
39
+ #
40
+ # See {Errors} for more information.
41
+ #
42
+ # @service
43
+ module Aws::PinpointEmail
44
+
45
+ GEM_VERSION = '1.0.0'
46
+
47
+ end
@@ -0,0 +1,1438 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'seahorse/client/plugins/content_length.rb'
9
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
10
+ require 'aws-sdk-core/plugins/logging.rb'
11
+ require 'aws-sdk-core/plugins/param_converter.rb'
12
+ require 'aws-sdk-core/plugins/param_validator.rb'
13
+ require 'aws-sdk-core/plugins/user_agent.rb'
14
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
15
+ require 'aws-sdk-core/plugins/retry_errors.rb'
16
+ require 'aws-sdk-core/plugins/global_configuration.rb'
17
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
18
+ require 'aws-sdk-core/plugins/response_paging.rb'
19
+ require 'aws-sdk-core/plugins/stub_responses.rb'
20
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
21
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
22
+ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
23
+ require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
24
+ require 'aws-sdk-core/plugins/signature_v4.rb'
25
+ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
26
+
27
+ Aws::Plugins::GlobalConfiguration.add_identifier(:pinpointemail)
28
+
29
+ module Aws::PinpointEmail
30
+ class Client < Seahorse::Client::Base
31
+
32
+ include Aws::ClientStubs
33
+
34
+ @identifier = :pinpointemail
35
+
36
+ set_api(ClientApi::API)
37
+
38
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
39
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
40
+ add_plugin(Aws::Plugins::Logging)
41
+ add_plugin(Aws::Plugins::ParamConverter)
42
+ add_plugin(Aws::Plugins::ParamValidator)
43
+ add_plugin(Aws::Plugins::UserAgent)
44
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
45
+ add_plugin(Aws::Plugins::RetryErrors)
46
+ add_plugin(Aws::Plugins::GlobalConfiguration)
47
+ add_plugin(Aws::Plugins::RegionalEndpoint)
48
+ add_plugin(Aws::Plugins::ResponsePaging)
49
+ add_plugin(Aws::Plugins::StubResponses)
50
+ add_plugin(Aws::Plugins::IdempotencyToken)
51
+ add_plugin(Aws::Plugins::JsonvalueConverter)
52
+ add_plugin(Aws::Plugins::ClientMetricsPlugin)
53
+ add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
54
+ add_plugin(Aws::Plugins::SignatureV4)
55
+ add_plugin(Aws::Plugins::Protocols::RestJson)
56
+
57
+ # @overload initialize(options)
58
+ # @param [Hash] options
59
+ # @option options [required, Aws::CredentialProvider] :credentials
60
+ # Your AWS credentials. This can be an instance of any one of the
61
+ # following classes:
62
+ #
63
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
64
+ # credentials.
65
+ #
66
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
67
+ # from an EC2 IMDS on an EC2 instance.
68
+ #
69
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
70
+ # shared file, such as `~/.aws/config`.
71
+ #
72
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
73
+ #
74
+ # When `:credentials` are not configured directly, the following
75
+ # locations will be searched for credentials:
76
+ #
77
+ # * `Aws.config[:credentials]`
78
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
79
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
80
+ # * `~/.aws/credentials`
81
+ # * `~/.aws/config`
82
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
83
+ # very aggressive. Construct and pass an instance of
84
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
85
+ # timeouts.
86
+ #
87
+ # @option options [required, String] :region
88
+ # The AWS region to connect to. The configured `:region` is
89
+ # used to determine the service `:endpoint`. When not passed,
90
+ # a default `:region` is search for in the following locations:
91
+ #
92
+ # * `Aws.config[:region]`
93
+ # * `ENV['AWS_REGION']`
94
+ # * `ENV['AMAZON_REGION']`
95
+ # * `ENV['AWS_DEFAULT_REGION']`
96
+ # * `~/.aws/credentials`
97
+ # * `~/.aws/config`
98
+ #
99
+ # @option options [String] :access_key_id
100
+ #
101
+ # @option options [Boolean] :client_side_monitoring (false)
102
+ # When `true`, client-side metrics will be collected for all API requests from
103
+ # this client.
104
+ #
105
+ # @option options [String] :client_side_monitoring_client_id ("")
106
+ # Allows you to provide an identifier for this client which will be attached to
107
+ # all generated client side metrics. Defaults to an empty string.
108
+ #
109
+ # @option options [Integer] :client_side_monitoring_port (31000)
110
+ # Required for publishing client metrics. The port that the client side monitoring
111
+ # agent is running on, where client metrics will be published via UDP.
112
+ #
113
+ # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
114
+ # Allows you to provide a custom client-side monitoring publisher class. By default,
115
+ # will use the Client Side Monitoring Agent Publisher.
116
+ #
117
+ # @option options [Boolean] :convert_params (true)
118
+ # When `true`, an attempt is made to coerce request parameters into
119
+ # the required types.
120
+ #
121
+ # @option options [String] :endpoint
122
+ # The client endpoint is normally constructed from the `:region`
123
+ # option. You should only configure an `:endpoint` when connecting
124
+ # to test endpoints. This should be avalid HTTP(S) URI.
125
+ #
126
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
127
+ # The log formatter.
128
+ #
129
+ # @option options [Symbol] :log_level (:info)
130
+ # The log level to send messages to the `:logger` at.
131
+ #
132
+ # @option options [Logger] :logger
133
+ # The Logger instance to send log messages to. If this option
134
+ # is not set, logging will be disabled.
135
+ #
136
+ # @option options [String] :profile ("default")
137
+ # Used when loading credentials from the shared credentials file
138
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
139
+ #
140
+ # @option options [Float] :retry_base_delay (0.3)
141
+ # The base delay in seconds used by the default backoff function.
142
+ #
143
+ # @option options [Symbol] :retry_jitter (:none)
144
+ # A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number.
145
+ #
146
+ # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
147
+ #
148
+ # @option options [Integer] :retry_limit (3)
149
+ # The maximum number of times to retry failed requests. Only
150
+ # ~ 500 level server errors and certain ~ 400 level client errors
151
+ # are retried. Generally, these are throttling errors, data
152
+ # checksum errors, networking errors, timeout errors and auth
153
+ # errors from expired credentials.
154
+ #
155
+ # @option options [Integer] :retry_max_delay (0)
156
+ # The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function.
157
+ #
158
+ # @option options [String] :secret_access_key
159
+ #
160
+ # @option options [String] :session_token
161
+ #
162
+ # @option options [Boolean] :stub_responses (false)
163
+ # Causes the client to return stubbed responses. By default
164
+ # fake responses are generated and returned. You can specify
165
+ # the response data to return or errors to raise by calling
166
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
167
+ #
168
+ # ** Please note ** When response stubbing is enabled, no HTTP
169
+ # requests are made, and retries are disabled.
170
+ #
171
+ # @option options [Boolean] :validate_params (true)
172
+ # When `true`, request parameters are validated before
173
+ # sending the request.
174
+ #
175
+ def initialize(*args)
176
+ super
177
+ end
178
+
179
+ # @!group API Operations
180
+
181
+ # Create a configuration set. *Configuration sets* are groups of rules
182
+ # that you can apply to the emails you send using Amazon Pinpoint. You
183
+ # apply a configuration set to an email by including a reference to the
184
+ # configuration set in the headers of the email. When you apply a
185
+ # configuration set to an email, all of the rules in that configuration
186
+ # set are applied to the email.
187
+ #
188
+ # @option params [String] :configuration_set_name
189
+ # The name of the configuration set.
190
+ #
191
+ # @option params [Types::TrackingOptions] :tracking_options
192
+ # An object that defines the open and click tracking options for emails
193
+ # that you send using the configuration set.
194
+ #
195
+ # @option params [Types::DeliveryOptions] :delivery_options
196
+ # An object that defines the dedicated IP pool that is used to send
197
+ # emails that you send using the configuration set.
198
+ #
199
+ # @option params [Types::ReputationOptions] :reputation_options
200
+ # An object that defines whether or not Amazon Pinpoint collects
201
+ # reputation metrics for the emails that you send that use the
202
+ # configuration set.
203
+ #
204
+ # @option params [Types::SendingOptions] :sending_options
205
+ # An object that defines whether or not Amazon Pinpoint can send email
206
+ # that you send using the configuration set.
207
+ #
208
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
209
+ #
210
+ # @example Request syntax with placeholder values
211
+ #
212
+ # resp = client.create_configuration_set({
213
+ # configuration_set_name: "ConfigurationSetName",
214
+ # tracking_options: {
215
+ # custom_redirect_domain: "CustomRedirectDomain", # required
216
+ # },
217
+ # delivery_options: {
218
+ # sending_pool_name: "PoolName",
219
+ # },
220
+ # reputation_options: {
221
+ # reputation_metrics_enabled: false,
222
+ # last_fresh_start: Time.now,
223
+ # },
224
+ # sending_options: {
225
+ # sending_enabled: false,
226
+ # },
227
+ # })
228
+ #
229
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/CreateConfigurationSet AWS API Documentation
230
+ #
231
+ # @overload create_configuration_set(params = {})
232
+ # @param [Hash] params ({})
233
+ def create_configuration_set(params = {}, options = {})
234
+ req = build_request(:create_configuration_set, params)
235
+ req.send_request(options)
236
+ end
237
+
238
+ # Create an event destination. In Amazon Pinpoint, *events* include
239
+ # message sends, deliveries, opens, clicks, bounces, and complaints.
240
+ # *Event destinations* are places that you can send information about
241
+ # these events to. For example, you can send event data to Amazon SNS to
242
+ # receive notifications when you receive bounces or complaints, or you
243
+ # can use Amazon Kinesis Data Firehose to stream data to Amazon S3 for
244
+ # long-term storage.
245
+ #
246
+ # A single configuration set can include more than one event
247
+ # destination.
248
+ #
249
+ # @option params [required, String] :configuration_set_name
250
+ # The name of the configuration set that you want to add an event
251
+ # destination to.
252
+ #
253
+ # @option params [required, String] :event_destination_name
254
+ # A name that identifies the event destination within the configuration
255
+ # set.
256
+ #
257
+ # @option params [required, Types::EventDestinationDefinition] :event_destination
258
+ # An object that defines the event destination.
259
+ #
260
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
261
+ #
262
+ # @example Request syntax with placeholder values
263
+ #
264
+ # resp = client.create_configuration_set_event_destination({
265
+ # configuration_set_name: "ConfigurationSetName", # required
266
+ # event_destination_name: "EventDestinationName", # required
267
+ # event_destination: { # required
268
+ # enabled: false,
269
+ # matching_event_types: ["SEND"], # accepts SEND, REJECT, BOUNCE, COMPLAINT, DELIVERY, OPEN, CLICK, RENDERING_FAILURE
270
+ # kinesis_firehose_destination: {
271
+ # iam_role_arn: "AmazonResourceName", # required
272
+ # delivery_stream_arn: "AmazonResourceName", # required
273
+ # },
274
+ # cloud_watch_destination: {
275
+ # dimension_configurations: [ # required
276
+ # {
277
+ # dimension_name: "DimensionName", # required
278
+ # dimension_value_source: "MESSAGE_TAG", # required, accepts MESSAGE_TAG, EMAIL_HEADER, LINK_TAG
279
+ # default_dimension_value: "DefaultDimensionValue", # required
280
+ # },
281
+ # ],
282
+ # },
283
+ # sns_destination: {
284
+ # topic_arn: "AmazonResourceName", # required
285
+ # },
286
+ # pinpoint_destination: {
287
+ # application_arn: "AmazonResourceName",
288
+ # },
289
+ # },
290
+ # })
291
+ #
292
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/CreateConfigurationSetEventDestination AWS API Documentation
293
+ #
294
+ # @overload create_configuration_set_event_destination(params = {})
295
+ # @param [Hash] params ({})
296
+ def create_configuration_set_event_destination(params = {}, options = {})
297
+ req = build_request(:create_configuration_set_event_destination, params)
298
+ req.send_request(options)
299
+ end
300
+
301
+ # Create a new pool of dedicated IP addresses. A pool can include one or
302
+ # more dedicated IP addresses that are associated with your Amazon
303
+ # Pinpoint account. You can associate a pool with a configuration set.
304
+ # When you send an email that uses that configuration set, Amazon
305
+ # Pinpoint sends it using only the IP addresses in the associated pool.
306
+ #
307
+ # @option params [required, String] :pool_name
308
+ # The name of the dedicated IP pool.
309
+ #
310
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
311
+ #
312
+ # @example Request syntax with placeholder values
313
+ #
314
+ # resp = client.create_dedicated_ip_pool({
315
+ # pool_name: "PoolName", # required
316
+ # })
317
+ #
318
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/CreateDedicatedIpPool AWS API Documentation
319
+ #
320
+ # @overload create_dedicated_ip_pool(params = {})
321
+ # @param [Hash] params ({})
322
+ def create_dedicated_ip_pool(params = {}, options = {})
323
+ req = build_request(:create_dedicated_ip_pool, params)
324
+ req.send_request(options)
325
+ end
326
+
327
+ # Verifies an email identity for use with Amazon Pinpoint. In Amazon
328
+ # Pinpoint, an identity is an email address or domain that you use when
329
+ # you send email. Before you can use an identity to send email with
330
+ # Amazon Pinpoint, you first have to verify it. By verifying an address,
331
+ # you demonstrate that you're the owner of the address, and that
332
+ # you've given Amazon Pinpoint permission to send email from the
333
+ # address.
334
+ #
335
+ # When you verify an email address, Amazon Pinpoint sends an email to
336
+ # the address. Your email address is verified as soon as you follow the
337
+ # link in the verification email.
338
+ #
339
+ # When you verify a domain, this operation provides a set of DKIM
340
+ # tokens, which you can convert into CNAME tokens. You add these CNAME
341
+ # tokens to the DNS configuration for your domain. Your domain is
342
+ # verified when Amazon Pinpoint detects these records in the DNS
343
+ # configuration for your domain. It usually takes around 72 hours to
344
+ # complete the domain verification process.
345
+ #
346
+ # @option params [required, String] :email_identity
347
+ # The email address or domain that you want to verify.
348
+ #
349
+ # @return [Types::CreateEmailIdentityResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
350
+ #
351
+ # * {Types::CreateEmailIdentityResponse#identity_type #identity_type} => String
352
+ # * {Types::CreateEmailIdentityResponse#verified_for_sending_status #verified_for_sending_status} => Boolean
353
+ # * {Types::CreateEmailIdentityResponse#dkim_attributes #dkim_attributes} => Types::DkimAttributes
354
+ #
355
+ # @example Request syntax with placeholder values
356
+ #
357
+ # resp = client.create_email_identity({
358
+ # email_identity: "Identity", # required
359
+ # })
360
+ #
361
+ # @example Response structure
362
+ #
363
+ # resp.identity_type #=> String, one of "EMAIL_ADDRESS", "DOMAIN", "MANAGED_DOMAIN"
364
+ # resp.verified_for_sending_status #=> Boolean
365
+ # resp.dkim_attributes.signing_enabled #=> Boolean
366
+ # resp.dkim_attributes.status #=> String, one of "PENDING", "SUCCESS", "FAILED", "TEMPORARY_FAILURE", "NOT_STARTED"
367
+ # resp.dkim_attributes.tokens #=> Array
368
+ # resp.dkim_attributes.tokens[0] #=> String
369
+ #
370
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/CreateEmailIdentity AWS API Documentation
371
+ #
372
+ # @overload create_email_identity(params = {})
373
+ # @param [Hash] params ({})
374
+ def create_email_identity(params = {}, options = {})
375
+ req = build_request(:create_email_identity, params)
376
+ req.send_request(options)
377
+ end
378
+
379
+ # Delete an existing configuration set.
380
+ #
381
+ # In Amazon Pinpoint, *configuration sets* are groups of rules that you
382
+ # can apply to the emails you send. You apply a configuration set to an
383
+ # email by including a reference to the configuration set in the headers
384
+ # of the email. When you apply a configuration set to an email, all of
385
+ # the rules in that configuration set are applied to the email.
386
+ #
387
+ # @option params [required, String] :configuration_set_name
388
+ # The name of the configuration set that you want to delete.
389
+ #
390
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
391
+ #
392
+ # @example Request syntax with placeholder values
393
+ #
394
+ # resp = client.delete_configuration_set({
395
+ # configuration_set_name: "ConfigurationSetName", # required
396
+ # })
397
+ #
398
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/DeleteConfigurationSet AWS API Documentation
399
+ #
400
+ # @overload delete_configuration_set(params = {})
401
+ # @param [Hash] params ({})
402
+ def delete_configuration_set(params = {}, options = {})
403
+ req = build_request(:delete_configuration_set, params)
404
+ req.send_request(options)
405
+ end
406
+
407
+ # Delete an event destination.
408
+ #
409
+ # In Amazon Pinpoint, *events* include message sends, deliveries, opens,
410
+ # clicks, bounces, and complaints. *Event destinations* are places that
411
+ # you can send information about these events to. For example, you can
412
+ # send event data to Amazon SNS to receive notifications when you
413
+ # receive bounces or complaints, or you can use Amazon Kinesis Data
414
+ # Firehose to stream data to Amazon S3 for long-term storage.
415
+ #
416
+ # @option params [required, String] :configuration_set_name
417
+ # The name of the configuration set that contains the event destination
418
+ # that you want to delete.
419
+ #
420
+ # @option params [required, String] :event_destination_name
421
+ # The name of the event destination that you want to delete.
422
+ #
423
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
424
+ #
425
+ # @example Request syntax with placeholder values
426
+ #
427
+ # resp = client.delete_configuration_set_event_destination({
428
+ # configuration_set_name: "ConfigurationSetName", # required
429
+ # event_destination_name: "EventDestinationName", # required
430
+ # })
431
+ #
432
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/DeleteConfigurationSetEventDestination AWS API Documentation
433
+ #
434
+ # @overload delete_configuration_set_event_destination(params = {})
435
+ # @param [Hash] params ({})
436
+ def delete_configuration_set_event_destination(params = {}, options = {})
437
+ req = build_request(:delete_configuration_set_event_destination, params)
438
+ req.send_request(options)
439
+ end
440
+
441
+ # Delete a dedicated IP pool.
442
+ #
443
+ # @option params [required, String] :pool_name
444
+ # The name of the dedicated IP pool that you want to delete.
445
+ #
446
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
447
+ #
448
+ # @example Request syntax with placeholder values
449
+ #
450
+ # resp = client.delete_dedicated_ip_pool({
451
+ # pool_name: "PoolName", # required
452
+ # })
453
+ #
454
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/DeleteDedicatedIpPool AWS API Documentation
455
+ #
456
+ # @overload delete_dedicated_ip_pool(params = {})
457
+ # @param [Hash] params ({})
458
+ def delete_dedicated_ip_pool(params = {}, options = {})
459
+ req = build_request(:delete_dedicated_ip_pool, params)
460
+ req.send_request(options)
461
+ end
462
+
463
+ # Deletes an email identity that you previously verified for use with
464
+ # Amazon Pinpoint. An identity can be either an email address or a
465
+ # domain name.
466
+ #
467
+ # @option params [required, String] :email_identity
468
+ # The identity (that is, the email address or domain) that you want to
469
+ # delete from your Amazon Pinpoint account.
470
+ #
471
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
472
+ #
473
+ # @example Request syntax with placeholder values
474
+ #
475
+ # resp = client.delete_email_identity({
476
+ # email_identity: "Identity", # required
477
+ # })
478
+ #
479
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/DeleteEmailIdentity AWS API Documentation
480
+ #
481
+ # @overload delete_email_identity(params = {})
482
+ # @param [Hash] params ({})
483
+ def delete_email_identity(params = {}, options = {})
484
+ req = build_request(:delete_email_identity, params)
485
+ req.send_request(options)
486
+ end
487
+
488
+ # Obtain information about the email-sending status and capabilities of
489
+ # your Amazon Pinpoint account in the current AWS Region.
490
+ #
491
+ # @return [Types::GetAccountResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
492
+ #
493
+ # * {Types::GetAccountResponse#send_quota #send_quota} => Types::SendQuota
494
+ # * {Types::GetAccountResponse#sending_enabled #sending_enabled} => Boolean
495
+ # * {Types::GetAccountResponse#dedicated_ip_auto_warmup_enabled #dedicated_ip_auto_warmup_enabled} => Boolean
496
+ # * {Types::GetAccountResponse#enforcement_status #enforcement_status} => String
497
+ # * {Types::GetAccountResponse#production_access_enabled #production_access_enabled} => Boolean
498
+ #
499
+ # @example Response structure
500
+ #
501
+ # resp.send_quota.max_24_hour_send #=> Float
502
+ # resp.send_quota.max_send_rate #=> Float
503
+ # resp.send_quota.sent_last_24_hours #=> Float
504
+ # resp.sending_enabled #=> Boolean
505
+ # resp.dedicated_ip_auto_warmup_enabled #=> Boolean
506
+ # resp.enforcement_status #=> String
507
+ # resp.production_access_enabled #=> Boolean
508
+ #
509
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/GetAccount AWS API Documentation
510
+ #
511
+ # @overload get_account(params = {})
512
+ # @param [Hash] params ({})
513
+ def get_account(params = {}, options = {})
514
+ req = build_request(:get_account, params)
515
+ req.send_request(options)
516
+ end
517
+
518
+ # Get information about an existing configuration set, including the
519
+ # dedicated IP pool that it's associated with, whether or not it's
520
+ # enabled for sending email, and more.
521
+ #
522
+ # In Amazon Pinpoint, *configuration sets* are groups of rules that you
523
+ # can apply to the emails you send. You apply a configuration set to an
524
+ # email by including a reference to the configuration set in the headers
525
+ # of the email. When you apply a configuration set to an email, all of
526
+ # the rules in that configuration set are applied to the email.
527
+ #
528
+ # @option params [required, String] :configuration_set_name
529
+ # The name of the configuration set that you want to obtain more
530
+ # information about.
531
+ #
532
+ # @return [Types::GetConfigurationSetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
533
+ #
534
+ # * {Types::GetConfigurationSetResponse#configuration_set_name #configuration_set_name} => String
535
+ # * {Types::GetConfigurationSetResponse#tracking_options #tracking_options} => Types::TrackingOptions
536
+ # * {Types::GetConfigurationSetResponse#delivery_options #delivery_options} => Types::DeliveryOptions
537
+ # * {Types::GetConfigurationSetResponse#reputation_options #reputation_options} => Types::ReputationOptions
538
+ # * {Types::GetConfigurationSetResponse#sending_options #sending_options} => Types::SendingOptions
539
+ #
540
+ # @example Request syntax with placeholder values
541
+ #
542
+ # resp = client.get_configuration_set({
543
+ # configuration_set_name: "ConfigurationSetName", # required
544
+ # })
545
+ #
546
+ # @example Response structure
547
+ #
548
+ # resp.configuration_set_name #=> String
549
+ # resp.tracking_options.custom_redirect_domain #=> String
550
+ # resp.delivery_options.sending_pool_name #=> String
551
+ # resp.reputation_options.reputation_metrics_enabled #=> Boolean
552
+ # resp.reputation_options.last_fresh_start #=> Time
553
+ # resp.sending_options.sending_enabled #=> Boolean
554
+ #
555
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/GetConfigurationSet AWS API Documentation
556
+ #
557
+ # @overload get_configuration_set(params = {})
558
+ # @param [Hash] params ({})
559
+ def get_configuration_set(params = {}, options = {})
560
+ req = build_request(:get_configuration_set, params)
561
+ req.send_request(options)
562
+ end
563
+
564
+ # Retrieve a list of event destinations that are associated with a
565
+ # configuration set.
566
+ #
567
+ # In Amazon Pinpoint, *events* include message sends, deliveries, opens,
568
+ # clicks, bounces, and complaints. *Event destinations* are places that
569
+ # you can send information about these events to. For example, you can
570
+ # send event data to Amazon SNS to receive notifications when you
571
+ # receive bounces or complaints, or you can use Amazon Kinesis Data
572
+ # Firehose to stream data to Amazon S3 for long-term storage.
573
+ #
574
+ # @option params [required, String] :configuration_set_name
575
+ # The name of the configuration set that contains the event destination.
576
+ #
577
+ # @return [Types::GetConfigurationSetEventDestinationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
578
+ #
579
+ # * {Types::GetConfigurationSetEventDestinationsResponse#event_destinations #event_destinations} => Array&lt;Types::EventDestination&gt;
580
+ #
581
+ # @example Request syntax with placeholder values
582
+ #
583
+ # resp = client.get_configuration_set_event_destinations({
584
+ # configuration_set_name: "ConfigurationSetName", # required
585
+ # })
586
+ #
587
+ # @example Response structure
588
+ #
589
+ # resp.event_destinations #=> Array
590
+ # resp.event_destinations[0].name #=> String
591
+ # resp.event_destinations[0].enabled #=> Boolean
592
+ # resp.event_destinations[0].matching_event_types #=> Array
593
+ # resp.event_destinations[0].matching_event_types[0] #=> String, one of "SEND", "REJECT", "BOUNCE", "COMPLAINT", "DELIVERY", "OPEN", "CLICK", "RENDERING_FAILURE"
594
+ # resp.event_destinations[0].kinesis_firehose_destination.iam_role_arn #=> String
595
+ # resp.event_destinations[0].kinesis_firehose_destination.delivery_stream_arn #=> String
596
+ # resp.event_destinations[0].cloud_watch_destination.dimension_configurations #=> Array
597
+ # resp.event_destinations[0].cloud_watch_destination.dimension_configurations[0].dimension_name #=> String
598
+ # resp.event_destinations[0].cloud_watch_destination.dimension_configurations[0].dimension_value_source #=> String, one of "MESSAGE_TAG", "EMAIL_HEADER", "LINK_TAG"
599
+ # resp.event_destinations[0].cloud_watch_destination.dimension_configurations[0].default_dimension_value #=> String
600
+ # resp.event_destinations[0].sns_destination.topic_arn #=> String
601
+ # resp.event_destinations[0].pinpoint_destination.application_arn #=> String
602
+ #
603
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/GetConfigurationSetEventDestinations AWS API Documentation
604
+ #
605
+ # @overload get_configuration_set_event_destinations(params = {})
606
+ # @param [Hash] params ({})
607
+ def get_configuration_set_event_destinations(params = {}, options = {})
608
+ req = build_request(:get_configuration_set_event_destinations, params)
609
+ req.send_request(options)
610
+ end
611
+
612
+ # Get information about a dedicated IP address, including the name of
613
+ # the dedicated IP pool that it's associated with, as well information
614
+ # about the automatic warm-up process for the address.
615
+ #
616
+ # @option params [required, String] :ip
617
+ # The IP address that you want to obtain more information about. The
618
+ # value you specify has to be a dedicated IP address that's assocaited
619
+ # with your Amazon Pinpoint account.
620
+ #
621
+ # @return [Types::GetDedicatedIpResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
622
+ #
623
+ # * {Types::GetDedicatedIpResponse#dedicated_ip #dedicated_ip} => Types::DedicatedIp
624
+ #
625
+ # @example Request syntax with placeholder values
626
+ #
627
+ # resp = client.get_dedicated_ip({
628
+ # ip: "Ip", # required
629
+ # })
630
+ #
631
+ # @example Response structure
632
+ #
633
+ # resp.dedicated_ip.ip #=> String
634
+ # resp.dedicated_ip.warmup_status #=> String, one of "IN_PROGRESS", "DONE"
635
+ # resp.dedicated_ip.warmup_percentage #=> Integer
636
+ # resp.dedicated_ip.pool_name #=> String
637
+ #
638
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/GetDedicatedIp AWS API Documentation
639
+ #
640
+ # @overload get_dedicated_ip(params = {})
641
+ # @param [Hash] params ({})
642
+ def get_dedicated_ip(params = {}, options = {})
643
+ req = build_request(:get_dedicated_ip, params)
644
+ req.send_request(options)
645
+ end
646
+
647
+ # List the dedicated IP addresses that are associated with your Amazon
648
+ # Pinpoint account.
649
+ #
650
+ # @option params [String] :pool_name
651
+ # The name of the IP pool that the dedicated IP address is associated
652
+ # with.
653
+ #
654
+ # @option params [String] :next_token
655
+ # A token returned from a previous call to `GetDedicatedIps` to indicate
656
+ # the position of the dedicated IP pool in the list of IP pools.
657
+ #
658
+ # @option params [Integer] :page_size
659
+ # The number of results to show in a single call to
660
+ # `GetDedicatedIpsRequest`. If the number of results is larger than the
661
+ # number you specified in this parameter, then the response includes a
662
+ # `NextToken` element, which you can use to obtain additional results.
663
+ #
664
+ # @return [Types::GetDedicatedIpsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
665
+ #
666
+ # * {Types::GetDedicatedIpsResponse#dedicated_ips #dedicated_ips} => Array&lt;Types::DedicatedIp&gt;
667
+ # * {Types::GetDedicatedIpsResponse#next_token #next_token} => String
668
+ #
669
+ # @example Request syntax with placeholder values
670
+ #
671
+ # resp = client.get_dedicated_ips({
672
+ # pool_name: "PoolName",
673
+ # next_token: "NextToken",
674
+ # page_size: 1,
675
+ # })
676
+ #
677
+ # @example Response structure
678
+ #
679
+ # resp.dedicated_ips #=> Array
680
+ # resp.dedicated_ips[0].ip #=> String
681
+ # resp.dedicated_ips[0].warmup_status #=> String, one of "IN_PROGRESS", "DONE"
682
+ # resp.dedicated_ips[0].warmup_percentage #=> Integer
683
+ # resp.dedicated_ips[0].pool_name #=> String
684
+ # resp.next_token #=> String
685
+ #
686
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/GetDedicatedIps AWS API Documentation
687
+ #
688
+ # @overload get_dedicated_ips(params = {})
689
+ # @param [Hash] params ({})
690
+ def get_dedicated_ips(params = {}, options = {})
691
+ req = build_request(:get_dedicated_ips, params)
692
+ req.send_request(options)
693
+ end
694
+
695
+ # Provides information about a specific identity associated with your
696
+ # Amazon Pinpoint account, including the identity's verification
697
+ # status, its DKIM authentication status, and its custom Mail-From
698
+ # settings.
699
+ #
700
+ # @option params [required, String] :email_identity
701
+ # The email identity that you want to retrieve details for.
702
+ #
703
+ # @return [Types::GetEmailIdentityResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
704
+ #
705
+ # * {Types::GetEmailIdentityResponse#identity_type #identity_type} => String
706
+ # * {Types::GetEmailIdentityResponse#feedback_forwarding_status #feedback_forwarding_status} => Boolean
707
+ # * {Types::GetEmailIdentityResponse#verified_for_sending_status #verified_for_sending_status} => Boolean
708
+ # * {Types::GetEmailIdentityResponse#dkim_attributes #dkim_attributes} => Types::DkimAttributes
709
+ # * {Types::GetEmailIdentityResponse#mail_from_attributes #mail_from_attributes} => Types::MailFromAttributes
710
+ #
711
+ # @example Request syntax with placeholder values
712
+ #
713
+ # resp = client.get_email_identity({
714
+ # email_identity: "Identity", # required
715
+ # })
716
+ #
717
+ # @example Response structure
718
+ #
719
+ # resp.identity_type #=> String, one of "EMAIL_ADDRESS", "DOMAIN", "MANAGED_DOMAIN"
720
+ # resp.feedback_forwarding_status #=> Boolean
721
+ # resp.verified_for_sending_status #=> Boolean
722
+ # resp.dkim_attributes.signing_enabled #=> Boolean
723
+ # resp.dkim_attributes.status #=> String, one of "PENDING", "SUCCESS", "FAILED", "TEMPORARY_FAILURE", "NOT_STARTED"
724
+ # resp.dkim_attributes.tokens #=> Array
725
+ # resp.dkim_attributes.tokens[0] #=> String
726
+ # resp.mail_from_attributes.mail_from_domain #=> String
727
+ # resp.mail_from_attributes.mail_from_domain_status #=> String, one of "PENDING", "SUCCESS", "FAILED", "TEMPORARY_FAILURE"
728
+ # resp.mail_from_attributes.behavior_on_mx_failure #=> String, one of "USE_DEFAULT_VALUE", "REJECT_MESSAGE"
729
+ #
730
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/GetEmailIdentity AWS API Documentation
731
+ #
732
+ # @overload get_email_identity(params = {})
733
+ # @param [Hash] params ({})
734
+ def get_email_identity(params = {}, options = {})
735
+ req = build_request(:get_email_identity, params)
736
+ req.send_request(options)
737
+ end
738
+
739
+ # List all of the configuration sets associated with your Amazon
740
+ # Pinpoint account in the current region.
741
+ #
742
+ # In Amazon Pinpoint, *configuration sets* are groups of rules that you
743
+ # can apply to the emails you send. You apply a configuration set to an
744
+ # email by including a reference to the configuration set in the headers
745
+ # of the email. When you apply a configuration set to an email, all of
746
+ # the rules in that configuration set are applied to the email.
747
+ #
748
+ # @option params [String] :next_token
749
+ # A token returned from a previous call to `ListConfigurationSets` to
750
+ # indicate the position in the list of configuration sets.
751
+ #
752
+ # @option params [Integer] :page_size
753
+ # The number of results to show in a single call to
754
+ # `ListConfigurationSets`. If the number of results is larger than the
755
+ # number you specified in this parameter, then the response includes a
756
+ # `NextToken` element, which you can use to obtain additional results.
757
+ #
758
+ # @return [Types::ListConfigurationSetsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
759
+ #
760
+ # * {Types::ListConfigurationSetsResponse#configuration_sets #configuration_sets} => Array&lt;String&gt;
761
+ # * {Types::ListConfigurationSetsResponse#next_token #next_token} => String
762
+ #
763
+ # @example Request syntax with placeholder values
764
+ #
765
+ # resp = client.list_configuration_sets({
766
+ # next_token: "NextToken",
767
+ # page_size: 1,
768
+ # })
769
+ #
770
+ # @example Response structure
771
+ #
772
+ # resp.configuration_sets #=> Array
773
+ # resp.configuration_sets[0] #=> String
774
+ # resp.next_token #=> String
775
+ #
776
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/ListConfigurationSets AWS API Documentation
777
+ #
778
+ # @overload list_configuration_sets(params = {})
779
+ # @param [Hash] params ({})
780
+ def list_configuration_sets(params = {}, options = {})
781
+ req = build_request(:list_configuration_sets, params)
782
+ req.send_request(options)
783
+ end
784
+
785
+ # List all of the dedicated IP pools that exist in your Amazon Pinpoint
786
+ # account in the current AWS Region.
787
+ #
788
+ # @option params [String] :next_token
789
+ # A token returned from a previous call to `ListDedicatedIpPools` to
790
+ # indicate the position in the list of dedicated IP pools.
791
+ #
792
+ # @option params [Integer] :page_size
793
+ # The number of results to show in a single call to
794
+ # `ListDedicatedIpPools`. If the number of results is larger than the
795
+ # number you specified in this parameter, then the response includes a
796
+ # `NextToken` element, which you can use to obtain additional results.
797
+ #
798
+ # @return [Types::ListDedicatedIpPoolsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
799
+ #
800
+ # * {Types::ListDedicatedIpPoolsResponse#dedicated_ip_pools #dedicated_ip_pools} => Array&lt;String&gt;
801
+ # * {Types::ListDedicatedIpPoolsResponse#next_token #next_token} => String
802
+ #
803
+ # @example Request syntax with placeholder values
804
+ #
805
+ # resp = client.list_dedicated_ip_pools({
806
+ # next_token: "NextToken",
807
+ # page_size: 1,
808
+ # })
809
+ #
810
+ # @example Response structure
811
+ #
812
+ # resp.dedicated_ip_pools #=> Array
813
+ # resp.dedicated_ip_pools[0] #=> String
814
+ # resp.next_token #=> String
815
+ #
816
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/ListDedicatedIpPools AWS API Documentation
817
+ #
818
+ # @overload list_dedicated_ip_pools(params = {})
819
+ # @param [Hash] params ({})
820
+ def list_dedicated_ip_pools(params = {}, options = {})
821
+ req = build_request(:list_dedicated_ip_pools, params)
822
+ req.send_request(options)
823
+ end
824
+
825
+ # Returns a list of all of the email identities that are associated with
826
+ # your Amazon Pinpoint account. An identity can be either an email
827
+ # address or a domain. This operation returns identities that are
828
+ # verified as well as those that aren't.
829
+ #
830
+ # @option params [String] :next_token
831
+ # A token returned from a previous call to `ListEmailIdentities` to
832
+ # indicate the position in the list of identities.
833
+ #
834
+ # @option params [Integer] :page_size
835
+ # The number of results to show in a single call to
836
+ # `ListEmailIdentities`. If the number of results is larger than the
837
+ # number you specified in this parameter, then the response includes a
838
+ # `NextToken` element, which you can use to obtain additional results.
839
+ #
840
+ # The value you specify has to be at least 0, and can be no more than
841
+ # 1000.
842
+ #
843
+ # @return [Types::ListEmailIdentitiesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
844
+ #
845
+ # * {Types::ListEmailIdentitiesResponse#email_identities #email_identities} => Array&lt;Types::IdentityInfo&gt;
846
+ # * {Types::ListEmailIdentitiesResponse#next_token #next_token} => String
847
+ #
848
+ # @example Request syntax with placeholder values
849
+ #
850
+ # resp = client.list_email_identities({
851
+ # next_token: "NextToken",
852
+ # page_size: 1,
853
+ # })
854
+ #
855
+ # @example Response structure
856
+ #
857
+ # resp.email_identities #=> Array
858
+ # resp.email_identities[0].identity_type #=> String, one of "EMAIL_ADDRESS", "DOMAIN", "MANAGED_DOMAIN"
859
+ # resp.email_identities[0].identity_name #=> String
860
+ # resp.email_identities[0].sending_enabled #=> Boolean
861
+ # resp.next_token #=> String
862
+ #
863
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/ListEmailIdentities AWS API Documentation
864
+ #
865
+ # @overload list_email_identities(params = {})
866
+ # @param [Hash] params ({})
867
+ def list_email_identities(params = {}, options = {})
868
+ req = build_request(:list_email_identities, params)
869
+ req.send_request(options)
870
+ end
871
+
872
+ # Enable or disable the automatic warm-up feature for dedicated IP
873
+ # addresses.
874
+ #
875
+ # @option params [Boolean] :auto_warmup_enabled
876
+ # Enables or disables the automatic warm-up feature for dedicated IP
877
+ # addresses that are associated with your Amazon Pinpoint account in the
878
+ # current AWS Region. Set to `true` to enable the automatic warm-up
879
+ # feature, or set to `false` to disable it.
880
+ #
881
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
882
+ #
883
+ # @example Request syntax with placeholder values
884
+ #
885
+ # resp = client.put_account_dedicated_ip_warmup_attributes({
886
+ # auto_warmup_enabled: false,
887
+ # })
888
+ #
889
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/PutAccountDedicatedIpWarmupAttributes AWS API Documentation
890
+ #
891
+ # @overload put_account_dedicated_ip_warmup_attributes(params = {})
892
+ # @param [Hash] params ({})
893
+ def put_account_dedicated_ip_warmup_attributes(params = {}, options = {})
894
+ req = build_request(:put_account_dedicated_ip_warmup_attributes, params)
895
+ req.send_request(options)
896
+ end
897
+
898
+ # Enable or disable the ability of your account to send email.
899
+ #
900
+ # @option params [Boolean] :sending_enabled
901
+ # Enables or disables your account's ability to send email. Set to
902
+ # `true` to enable email sending, or set to `false` to disable email
903
+ # sending.
904
+ #
905
+ # <note markdown="1"> If AWS paused your account's ability to send email, you can't use
906
+ # this operation to resume your account's ability to send email.
907
+ #
908
+ # </note>
909
+ #
910
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
911
+ #
912
+ # @example Request syntax with placeholder values
913
+ #
914
+ # resp = client.put_account_sending_attributes({
915
+ # sending_enabled: false,
916
+ # })
917
+ #
918
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/PutAccountSendingAttributes AWS API Documentation
919
+ #
920
+ # @overload put_account_sending_attributes(params = {})
921
+ # @param [Hash] params ({})
922
+ def put_account_sending_attributes(params = {}, options = {})
923
+ req = build_request(:put_account_sending_attributes, params)
924
+ req.send_request(options)
925
+ end
926
+
927
+ # Associate a configuration set with a dedicated IP pool. You can use
928
+ # dedicated IP pools to create groups of dedicated IP addresses for
929
+ # sending specific types of email.
930
+ #
931
+ # @option params [required, String] :configuration_set_name
932
+ # The name of the configuration set that you want to associate with a
933
+ # dedicated IP pool.
934
+ #
935
+ # @option params [String] :sending_pool_name
936
+ # The name of the dedicated IP pool that you want to associate with the
937
+ # configuration set.
938
+ #
939
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
940
+ #
941
+ # @example Request syntax with placeholder values
942
+ #
943
+ # resp = client.put_configuration_set_delivery_options({
944
+ # configuration_set_name: "ConfigurationSetName", # required
945
+ # sending_pool_name: "SendingPoolName",
946
+ # })
947
+ #
948
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/PutConfigurationSetDeliveryOptions AWS API Documentation
949
+ #
950
+ # @overload put_configuration_set_delivery_options(params = {})
951
+ # @param [Hash] params ({})
952
+ def put_configuration_set_delivery_options(params = {}, options = {})
953
+ req = build_request(:put_configuration_set_delivery_options, params)
954
+ req.send_request(options)
955
+ end
956
+
957
+ # Enable or disable collection of reputation metrics for emails that you
958
+ # send using a particular configuration set in a specific AWS Region.
959
+ #
960
+ # @option params [required, String] :configuration_set_name
961
+ # The name of the configuration set that you want to enable or disable
962
+ # reputation metric tracking for.
963
+ #
964
+ # @option params [Boolean] :reputation_metrics_enabled
965
+ # If `true`, tracking of reputation metrics is enabled for the
966
+ # configuration set. If `false`, tracking of reputation metrics is
967
+ # disabled for the configuration set.
968
+ #
969
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
970
+ #
971
+ # @example Request syntax with placeholder values
972
+ #
973
+ # resp = client.put_configuration_set_reputation_options({
974
+ # configuration_set_name: "ConfigurationSetName", # required
975
+ # reputation_metrics_enabled: false,
976
+ # })
977
+ #
978
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/PutConfigurationSetReputationOptions AWS API Documentation
979
+ #
980
+ # @overload put_configuration_set_reputation_options(params = {})
981
+ # @param [Hash] params ({})
982
+ def put_configuration_set_reputation_options(params = {}, options = {})
983
+ req = build_request(:put_configuration_set_reputation_options, params)
984
+ req.send_request(options)
985
+ end
986
+
987
+ # Enable or disable email sending for messages that use a particular
988
+ # configuration set in a specific AWS Region.
989
+ #
990
+ # @option params [required, String] :configuration_set_name
991
+ # The name of the configuration set that you want to enable or disable
992
+ # email sending for.
993
+ #
994
+ # @option params [Boolean] :sending_enabled
995
+ # If `true`, email sending is enabled for the configuration set. If
996
+ # `false`, email sending is disabled for the configuration set.
997
+ #
998
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
999
+ #
1000
+ # @example Request syntax with placeholder values
1001
+ #
1002
+ # resp = client.put_configuration_set_sending_options({
1003
+ # configuration_set_name: "ConfigurationSetName", # required
1004
+ # sending_enabled: false,
1005
+ # })
1006
+ #
1007
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/PutConfigurationSetSendingOptions AWS API Documentation
1008
+ #
1009
+ # @overload put_configuration_set_sending_options(params = {})
1010
+ # @param [Hash] params ({})
1011
+ def put_configuration_set_sending_options(params = {}, options = {})
1012
+ req = build_request(:put_configuration_set_sending_options, params)
1013
+ req.send_request(options)
1014
+ end
1015
+
1016
+ # Specify a custom domain to use for open and click tracking elements in
1017
+ # email that you send using Amazon Pinpoint.
1018
+ #
1019
+ # @option params [required, String] :configuration_set_name
1020
+ # The name of the configuration set that you want to add a custom
1021
+ # tracking domain to.
1022
+ #
1023
+ # @option params [String] :custom_redirect_domain
1024
+ # The domain that you want to use to track open and click events.
1025
+ #
1026
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1027
+ #
1028
+ # @example Request syntax with placeholder values
1029
+ #
1030
+ # resp = client.put_configuration_set_tracking_options({
1031
+ # configuration_set_name: "ConfigurationSetName", # required
1032
+ # custom_redirect_domain: "CustomRedirectDomain",
1033
+ # })
1034
+ #
1035
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/PutConfigurationSetTrackingOptions AWS API Documentation
1036
+ #
1037
+ # @overload put_configuration_set_tracking_options(params = {})
1038
+ # @param [Hash] params ({})
1039
+ def put_configuration_set_tracking_options(params = {}, options = {})
1040
+ req = build_request(:put_configuration_set_tracking_options, params)
1041
+ req.send_request(options)
1042
+ end
1043
+
1044
+ # Move a dedicated IP address to an existing dedicated IP pool.
1045
+ #
1046
+ # <note markdown="1"> The dedicated IP address that you specify must already exist, and must
1047
+ # be associated with your Amazon Pinpoint account.
1048
+ #
1049
+ # The dedicated IP pool you specify must already exist. You can create a
1050
+ # new pool by using the `CreateDedicatedIpPool` operation.
1051
+ #
1052
+ # </note>
1053
+ #
1054
+ # @option params [required, String] :ip
1055
+ # The IP address that you want to move to the dedicated IP pool. The
1056
+ # value you specify has to be a dedicated IP address that's associated
1057
+ # with your Amazon Pinpoint account.
1058
+ #
1059
+ # @option params [required, String] :destination_pool_name
1060
+ # The name of the IP pool that you want to add the dedicated IP address
1061
+ # to. You have to specify an IP pool that already exists.
1062
+ #
1063
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1064
+ #
1065
+ # @example Request syntax with placeholder values
1066
+ #
1067
+ # resp = client.put_dedicated_ip_in_pool({
1068
+ # ip: "Ip", # required
1069
+ # destination_pool_name: "PoolName", # required
1070
+ # })
1071
+ #
1072
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/PutDedicatedIpInPool AWS API Documentation
1073
+ #
1074
+ # @overload put_dedicated_ip_in_pool(params = {})
1075
+ # @param [Hash] params ({})
1076
+ def put_dedicated_ip_in_pool(params = {}, options = {})
1077
+ req = build_request(:put_dedicated_ip_in_pool, params)
1078
+ req.send_request(options)
1079
+ end
1080
+
1081
+ # @option params [required, String] :ip
1082
+ # The dedicated IP address that you want to update the warm-up
1083
+ # attributes for.
1084
+ #
1085
+ # @option params [required, Integer] :warmup_percentage
1086
+ # The warm-up percentage that you want to associate with the dedicated
1087
+ # IP address.
1088
+ #
1089
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1090
+ #
1091
+ # @example Request syntax with placeholder values
1092
+ #
1093
+ # resp = client.put_dedicated_ip_warmup_attributes({
1094
+ # ip: "Ip", # required
1095
+ # warmup_percentage: 1, # required
1096
+ # })
1097
+ #
1098
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/PutDedicatedIpWarmupAttributes AWS API Documentation
1099
+ #
1100
+ # @overload put_dedicated_ip_warmup_attributes(params = {})
1101
+ # @param [Hash] params ({})
1102
+ def put_dedicated_ip_warmup_attributes(params = {}, options = {})
1103
+ req = build_request(:put_dedicated_ip_warmup_attributes, params)
1104
+ req.send_request(options)
1105
+ end
1106
+
1107
+ # Used to enable or disable DKIM authentication for an email identity.
1108
+ #
1109
+ # @option params [required, String] :email_identity
1110
+ # The email identity that you want to change the DKIM settings for.
1111
+ #
1112
+ # @option params [Boolean] :signing_enabled
1113
+ # Sets the DKIM signing configuration for the identity.
1114
+ #
1115
+ # When you set this value `true`, then the messages that Amazon Pinpoint
1116
+ # sends from the identity are DKIM-signed. When you set this value to
1117
+ # `false`, then the messages that Amazon Pinpoint sends from the
1118
+ # identity aren't DKIM-signed.
1119
+ #
1120
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1121
+ #
1122
+ # @example Request syntax with placeholder values
1123
+ #
1124
+ # resp = client.put_email_identity_dkim_attributes({
1125
+ # email_identity: "Identity", # required
1126
+ # signing_enabled: false,
1127
+ # })
1128
+ #
1129
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/PutEmailIdentityDkimAttributes AWS API Documentation
1130
+ #
1131
+ # @overload put_email_identity_dkim_attributes(params = {})
1132
+ # @param [Hash] params ({})
1133
+ def put_email_identity_dkim_attributes(params = {}, options = {})
1134
+ req = build_request(:put_email_identity_dkim_attributes, params)
1135
+ req.send_request(options)
1136
+ end
1137
+
1138
+ # Used to enable or disable feedback forwarding for an identity. This
1139
+ # setting determines what happens when an identity is used to send an
1140
+ # email that results in a bounce or complaint event.
1141
+ #
1142
+ # When you enable feedback forwarding, Amazon Pinpoint sends you email
1143
+ # notifications when bounce or complaint events occur. Amazon Pinpoint
1144
+ # sends this notification to the address that you specified in the
1145
+ # Return-Path header of the original email.
1146
+ #
1147
+ # When you disable feedback forwarding, Amazon Pinpoint sends
1148
+ # notifications through other mechanisms, such as by notifying an Amazon
1149
+ # SNS topic. You're required to have a method of tracking bounces and
1150
+ # complaints. If you haven't set up another mechanism for receiving
1151
+ # bounce or complaint notifications, Amazon Pinpoint sends an email
1152
+ # notification when these events occur (even if this setting is
1153
+ # disabled).
1154
+ #
1155
+ # @option params [required, String] :email_identity
1156
+ # The email identity that you want to configure bounce and complaint
1157
+ # feedback forwarding for.
1158
+ #
1159
+ # @option params [Boolean] :email_forwarding_enabled
1160
+ # Sets the feedback forwarding configuration for the identity.
1161
+ #
1162
+ # If the value is `true`, Amazon Pinpoint sends you email notifications
1163
+ # when bounce or complaint events occur. Amazon Pinpoint sends this
1164
+ # notification to the address that you specified in the Return-Path
1165
+ # header of the original email.
1166
+ #
1167
+ # When you set this value to `false`, Amazon Pinpoint sends
1168
+ # notifications through other mechanisms, such as by notifying an Amazon
1169
+ # SNS topic or another event destination. You're required to have a
1170
+ # method of tracking bounces and complaints. If you haven't set up
1171
+ # another mechanism for receiving bounce or complaint notifications,
1172
+ # Amazon Pinpoint sends an email notification when these events occur
1173
+ # (even if this setting is disabled).
1174
+ #
1175
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1176
+ #
1177
+ # @example Request syntax with placeholder values
1178
+ #
1179
+ # resp = client.put_email_identity_feedback_attributes({
1180
+ # email_identity: "Identity", # required
1181
+ # email_forwarding_enabled: false,
1182
+ # })
1183
+ #
1184
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/PutEmailIdentityFeedbackAttributes AWS API Documentation
1185
+ #
1186
+ # @overload put_email_identity_feedback_attributes(params = {})
1187
+ # @param [Hash] params ({})
1188
+ def put_email_identity_feedback_attributes(params = {}, options = {})
1189
+ req = build_request(:put_email_identity_feedback_attributes, params)
1190
+ req.send_request(options)
1191
+ end
1192
+
1193
+ # Used to enable or disable the custom Mail-From domain configuration
1194
+ # for an email identity.
1195
+ #
1196
+ # @option params [required, String] :email_identity
1197
+ # The verified email identity that you want to set up the custom MAIL
1198
+ # FROM domain for.
1199
+ #
1200
+ # @option params [String] :mail_from_domain
1201
+ # The custom MAIL FROM domain that you want the verified identity to
1202
+ # use. The MAIL FROM domain must meet the following criteria:
1203
+ #
1204
+ # * It has to be a subdomain of the verified identity.
1205
+ #
1206
+ # * It can't be used to receive email.
1207
+ #
1208
+ # * It can't be used in a "From" address if the MAIL FROM domain is a
1209
+ # destination for feedback forwarding emails.
1210
+ #
1211
+ # @option params [String] :behavior_on_mx_failure
1212
+ # The action that you want Amazon Pinpoint to take if it can't read the
1213
+ # required MX record when you send an email. When you set this value to
1214
+ # `UseDefaultValue`, Amazon Pinpoint uses *amazonses.com* as the MAIL
1215
+ # FROM domain. When you set this value to `RejectMessage`, Amazon
1216
+ # Pinpoint returns a `MailFromDomainNotVerified` error, and doesn't
1217
+ # attempt to deliver the email.
1218
+ #
1219
+ # These behaviors are taken when the custom MAIL FROM domain
1220
+ # configuration is in the `Pending`, `Failed`, and `TemporaryFailure`
1221
+ # states.
1222
+ #
1223
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1224
+ #
1225
+ # @example Request syntax with placeholder values
1226
+ #
1227
+ # resp = client.put_email_identity_mail_from_attributes({
1228
+ # email_identity: "Identity", # required
1229
+ # mail_from_domain: "MailFromDomainName",
1230
+ # behavior_on_mx_failure: "USE_DEFAULT_VALUE", # accepts USE_DEFAULT_VALUE, REJECT_MESSAGE
1231
+ # })
1232
+ #
1233
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/PutEmailIdentityMailFromAttributes AWS API Documentation
1234
+ #
1235
+ # @overload put_email_identity_mail_from_attributes(params = {})
1236
+ # @param [Hash] params ({})
1237
+ def put_email_identity_mail_from_attributes(params = {}, options = {})
1238
+ req = build_request(:put_email_identity_mail_from_attributes, params)
1239
+ req.send_request(options)
1240
+ end
1241
+
1242
+ # Sends an email message. You can use the Amazon Pinpoint Email API to
1243
+ # send two types of messages:
1244
+ #
1245
+ # * **Simple** – A standard email message. When you create this type of
1246
+ # message, you specify the sender, the recipient, and the message
1247
+ # body, and Amazon Pinpoint assembles the message for you.
1248
+ #
1249
+ # * **Raw** – A raw, MIME-formatted email message. When you send this
1250
+ # type of email, you have to specify all of the message headers, as
1251
+ # well as the message body. You can use this message type to send
1252
+ # messages that contain attachments. The message that you specify has
1253
+ # to be a valid MIME message.
1254
+ #
1255
+ # @option params [String] :from_email_address
1256
+ # The email address that you want to use as the "From" address for the
1257
+ # email. The address that you specify has to be verified.
1258
+ #
1259
+ # @option params [required, Types::Destination] :destination
1260
+ # An object that contains the recipients of the email message.
1261
+ #
1262
+ # @option params [Array<String>] :reply_to_addresses
1263
+ # The "Reply-to" email addresses for the message. When the recipient
1264
+ # replies to the message, each Reply-to address receives the reply.
1265
+ #
1266
+ # @option params [String] :feedback_forwarding_email_address
1267
+ # The address that Amazon Pinpoint should send bounce and complaint
1268
+ # notifications to.
1269
+ #
1270
+ # @option params [required, Types::EmailContent] :content
1271
+ # An object that contains the body of the message. You can send either a
1272
+ # Simple message or a Raw message.
1273
+ #
1274
+ # @option params [Array<Types::MessageTag>] :email_tags
1275
+ # A list of tags, in the form of name/value pairs, to apply to an email
1276
+ # that you send using the `SendEmail` operation. Tags correspond to
1277
+ # characteristics of the email that you define, so that you can publish
1278
+ # email sending events.
1279
+ #
1280
+ # @option params [String] :configuration_set_name
1281
+ # The name of the configuration set that you want to use when sending
1282
+ # the email.
1283
+ #
1284
+ # @return [Types::SendEmailResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1285
+ #
1286
+ # * {Types::SendEmailResponse#message_id #message_id} => String
1287
+ #
1288
+ # @example Request syntax with placeholder values
1289
+ #
1290
+ # resp = client.send_email({
1291
+ # from_email_address: "EmailAddress",
1292
+ # destination: { # required
1293
+ # to_addresses: ["EmailAddress"],
1294
+ # cc_addresses: ["EmailAddress"],
1295
+ # bcc_addresses: ["EmailAddress"],
1296
+ # },
1297
+ # reply_to_addresses: ["EmailAddress"],
1298
+ # feedback_forwarding_email_address: "EmailAddress",
1299
+ # content: { # required
1300
+ # simple: {
1301
+ # subject: { # required
1302
+ # data: "MessageData", # required
1303
+ # charset: "Charset",
1304
+ # },
1305
+ # body: { # required
1306
+ # text: {
1307
+ # data: "MessageData", # required
1308
+ # charset: "Charset",
1309
+ # },
1310
+ # html: {
1311
+ # data: "MessageData", # required
1312
+ # charset: "Charset",
1313
+ # },
1314
+ # },
1315
+ # },
1316
+ # raw: {
1317
+ # data: "data", # required
1318
+ # },
1319
+ # },
1320
+ # email_tags: [
1321
+ # {
1322
+ # name: "MessageTagName", # required
1323
+ # value: "MessageTagValue", # required
1324
+ # },
1325
+ # ],
1326
+ # configuration_set_name: "ConfigurationSetName",
1327
+ # })
1328
+ #
1329
+ # @example Response structure
1330
+ #
1331
+ # resp.message_id #=> String
1332
+ #
1333
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/SendEmail AWS API Documentation
1334
+ #
1335
+ # @overload send_email(params = {})
1336
+ # @param [Hash] params ({})
1337
+ def send_email(params = {}, options = {})
1338
+ req = build_request(:send_email, params)
1339
+ req.send_request(options)
1340
+ end
1341
+
1342
+ # Update the configuration of an event destination for a configuration
1343
+ # set.
1344
+ #
1345
+ # In Amazon Pinpoint, *events* include message sends, deliveries, opens,
1346
+ # clicks, bounces, and complaints. *Event destinations* are places that
1347
+ # you can send information about these events to. For example, you can
1348
+ # send event data to Amazon SNS to receive notifications when you
1349
+ # receive bounces or complaints, or you can use Amazon Kinesis Data
1350
+ # Firehose to stream data to Amazon S3 for long-term storage.
1351
+ #
1352
+ # @option params [required, String] :configuration_set_name
1353
+ # The name of the configuration set that contains the event destination
1354
+ # that you want to modify.
1355
+ #
1356
+ # @option params [required, String] :event_destination_name
1357
+ # The name of the event destination that you want to modify.
1358
+ #
1359
+ # @option params [required, Types::EventDestinationDefinition] :event_destination
1360
+ # An object that defines the event destination.
1361
+ #
1362
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1363
+ #
1364
+ # @example Request syntax with placeholder values
1365
+ #
1366
+ # resp = client.update_configuration_set_event_destination({
1367
+ # configuration_set_name: "ConfigurationSetName", # required
1368
+ # event_destination_name: "EventDestinationName", # required
1369
+ # event_destination: { # required
1370
+ # enabled: false,
1371
+ # matching_event_types: ["SEND"], # accepts SEND, REJECT, BOUNCE, COMPLAINT, DELIVERY, OPEN, CLICK, RENDERING_FAILURE
1372
+ # kinesis_firehose_destination: {
1373
+ # iam_role_arn: "AmazonResourceName", # required
1374
+ # delivery_stream_arn: "AmazonResourceName", # required
1375
+ # },
1376
+ # cloud_watch_destination: {
1377
+ # dimension_configurations: [ # required
1378
+ # {
1379
+ # dimension_name: "DimensionName", # required
1380
+ # dimension_value_source: "MESSAGE_TAG", # required, accepts MESSAGE_TAG, EMAIL_HEADER, LINK_TAG
1381
+ # default_dimension_value: "DefaultDimensionValue", # required
1382
+ # },
1383
+ # ],
1384
+ # },
1385
+ # sns_destination: {
1386
+ # topic_arn: "AmazonResourceName", # required
1387
+ # },
1388
+ # pinpoint_destination: {
1389
+ # application_arn: "AmazonResourceName",
1390
+ # },
1391
+ # },
1392
+ # })
1393
+ #
1394
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-email-2018-07-26/UpdateConfigurationSetEventDestination AWS API Documentation
1395
+ #
1396
+ # @overload update_configuration_set_event_destination(params = {})
1397
+ # @param [Hash] params ({})
1398
+ def update_configuration_set_event_destination(params = {}, options = {})
1399
+ req = build_request(:update_configuration_set_event_destination, params)
1400
+ req.send_request(options)
1401
+ end
1402
+
1403
+ # @!endgroup
1404
+
1405
+ # @param params ({})
1406
+ # @api private
1407
+ def build_request(operation_name, params = {})
1408
+ handlers = @handlers.for(operation_name)
1409
+ context = Seahorse::Client::RequestContext.new(
1410
+ operation_name: operation_name,
1411
+ operation: config.api.operation(operation_name),
1412
+ client: self,
1413
+ params: params,
1414
+ config: config)
1415
+ context[:gem_name] = 'aws-sdk-pinpointemail'
1416
+ context[:gem_version] = '1.0.0'
1417
+ Seahorse::Client::Request.new(handlers, context)
1418
+ end
1419
+
1420
+ # @api private
1421
+ # @deprecated
1422
+ def waiter_names
1423
+ []
1424
+ end
1425
+
1426
+ class << self
1427
+
1428
+ # @api private
1429
+ attr_reader :identifier
1430
+
1431
+ # @api private
1432
+ def errors_module
1433
+ Errors
1434
+ end
1435
+
1436
+ end
1437
+ end
1438
+ end