aws-sdk-pinpointsmsvoicev2 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,3021 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ require 'seahorse/client/plugins/content_length.rb'
11
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
12
+ require 'aws-sdk-core/plugins/logging.rb'
13
+ require 'aws-sdk-core/plugins/param_converter.rb'
14
+ require 'aws-sdk-core/plugins/param_validator.rb'
15
+ require 'aws-sdk-core/plugins/user_agent.rb'
16
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
17
+ require 'aws-sdk-core/plugins/retry_errors.rb'
18
+ require 'aws-sdk-core/plugins/global_configuration.rb'
19
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
20
+ require 'aws-sdk-core/plugins/endpoint_discovery.rb'
21
+ require 'aws-sdk-core/plugins/endpoint_pattern.rb'
22
+ require 'aws-sdk-core/plugins/response_paging.rb'
23
+ require 'aws-sdk-core/plugins/stub_responses.rb'
24
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
25
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
26
+ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
+ require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
+ require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
+ require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
32
+ require 'aws-sdk-core/plugins/recursion_detection.rb'
33
+ require 'aws-sdk-core/plugins/signature_v4.rb'
34
+ require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
35
+
36
+ Aws::Plugins::GlobalConfiguration.add_identifier(:pinpointsmsvoicev2)
37
+
38
+ module Aws::PinpointSMSVoiceV2
39
+ # An API client for PinpointSMSVoiceV2. To construct a client, you need to configure a `:region` and `:credentials`.
40
+ #
41
+ # client = Aws::PinpointSMSVoiceV2::Client.new(
42
+ # region: region_name,
43
+ # credentials: credentials,
44
+ # # ...
45
+ # )
46
+ #
47
+ # For details on configuring region and credentials see
48
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
49
+ #
50
+ # See {#initialize} for a full list of supported configuration options.
51
+ class Client < Seahorse::Client::Base
52
+
53
+ include Aws::ClientStubs
54
+
55
+ @identifier = :pinpointsmsvoicev2
56
+
57
+ set_api(ClientApi::API)
58
+
59
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
60
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
61
+ add_plugin(Aws::Plugins::Logging)
62
+ add_plugin(Aws::Plugins::ParamConverter)
63
+ add_plugin(Aws::Plugins::ParamValidator)
64
+ add_plugin(Aws::Plugins::UserAgent)
65
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
66
+ add_plugin(Aws::Plugins::RetryErrors)
67
+ add_plugin(Aws::Plugins::GlobalConfiguration)
68
+ add_plugin(Aws::Plugins::RegionalEndpoint)
69
+ add_plugin(Aws::Plugins::EndpointDiscovery)
70
+ add_plugin(Aws::Plugins::EndpointPattern)
71
+ add_plugin(Aws::Plugins::ResponsePaging)
72
+ add_plugin(Aws::Plugins::StubResponses)
73
+ add_plugin(Aws::Plugins::IdempotencyToken)
74
+ add_plugin(Aws::Plugins::JsonvalueConverter)
75
+ add_plugin(Aws::Plugins::ClientMetricsPlugin)
76
+ add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
77
+ add_plugin(Aws::Plugins::TransferEncoding)
78
+ add_plugin(Aws::Plugins::HttpChecksum)
79
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
80
+ add_plugin(Aws::Plugins::DefaultsMode)
81
+ add_plugin(Aws::Plugins::RecursionDetection)
82
+ add_plugin(Aws::Plugins::SignatureV4)
83
+ add_plugin(Aws::Plugins::Protocols::JsonRpc)
84
+
85
+ # @overload initialize(options)
86
+ # @param [Hash] options
87
+ # @option options [required, Aws::CredentialProvider] :credentials
88
+ # Your AWS credentials. This can be an instance of any one of the
89
+ # following classes:
90
+ #
91
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
92
+ # credentials.
93
+ #
94
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
95
+ # shared file, such as `~/.aws/config`.
96
+ #
97
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
98
+ #
99
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
100
+ # assume a role after providing credentials via the web.
101
+ #
102
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
103
+ # access token generated from `aws login`.
104
+ #
105
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
106
+ # process that outputs to stdout.
107
+ #
108
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
109
+ # from an EC2 IMDS on an EC2 instance.
110
+ #
111
+ # * `Aws::ECSCredentials` - Used for loading credentials from
112
+ # instances running in ECS.
113
+ #
114
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
115
+ # from the Cognito Identity service.
116
+ #
117
+ # When `:credentials` are not configured directly, the following
118
+ # locations will be searched for credentials:
119
+ #
120
+ # * `Aws.config[:credentials]`
121
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
122
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
123
+ # * `~/.aws/credentials`
124
+ # * `~/.aws/config`
125
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
126
+ # are very aggressive. Construct and pass an instance of
127
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
128
+ # enable retries and extended timeouts. Instance profile credential
129
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
130
+ # to true.
131
+ #
132
+ # @option options [required, String] :region
133
+ # The AWS region to connect to. The configured `:region` is
134
+ # used to determine the service `:endpoint`. When not passed,
135
+ # a default `:region` is searched for in the following locations:
136
+ #
137
+ # * `Aws.config[:region]`
138
+ # * `ENV['AWS_REGION']`
139
+ # * `ENV['AMAZON_REGION']`
140
+ # * `ENV['AWS_DEFAULT_REGION']`
141
+ # * `~/.aws/credentials`
142
+ # * `~/.aws/config`
143
+ #
144
+ # @option options [String] :access_key_id
145
+ #
146
+ # @option options [Boolean] :active_endpoint_cache (false)
147
+ # When set to `true`, a thread polling for endpoints will be running in
148
+ # the background every 60 secs (default). Defaults to `false`.
149
+ #
150
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
151
+ # Used only in `adaptive` retry mode. When true, the request will sleep
152
+ # until there is sufficent client side capacity to retry the request.
153
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
154
+ # not retry instead of sleeping.
155
+ #
156
+ # @option options [Boolean] :client_side_monitoring (false)
157
+ # When `true`, client-side metrics will be collected for all API requests from
158
+ # this client.
159
+ #
160
+ # @option options [String] :client_side_monitoring_client_id ("")
161
+ # Allows you to provide an identifier for this client which will be attached to
162
+ # all generated client side metrics. Defaults to an empty string.
163
+ #
164
+ # @option options [String] :client_side_monitoring_host ("127.0.0.1")
165
+ # Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client
166
+ # side monitoring agent is running on, where client metrics will be published via UDP.
167
+ #
168
+ # @option options [Integer] :client_side_monitoring_port (31000)
169
+ # Required for publishing client metrics. The port that the client side monitoring
170
+ # agent is running on, where client metrics will be published via UDP.
171
+ #
172
+ # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
173
+ # Allows you to provide a custom client-side monitoring publisher class. By default,
174
+ # will use the Client Side Monitoring Agent Publisher.
175
+ #
176
+ # @option options [Boolean] :convert_params (true)
177
+ # When `true`, an attempt is made to coerce request parameters into
178
+ # the required types.
179
+ #
180
+ # @option options [Boolean] :correct_clock_skew (true)
181
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
182
+ # a clock skew correction and retry requests with skewed client clocks.
183
+ #
184
+ # @option options [String] :defaults_mode ("legacy")
185
+ # See {Aws::DefaultsModeConfiguration} for a list of the
186
+ # accepted modes and the configuration defaults that are included.
187
+ #
188
+ # @option options [Boolean] :disable_host_prefix_injection (false)
189
+ # Set to true to disable SDK automatically adding host prefix
190
+ # to default service endpoint when available.
191
+ #
192
+ # @option options [String] :endpoint
193
+ # The client endpoint is normally constructed from the `:region`
194
+ # option. You should only configure an `:endpoint` when connecting
195
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
196
+ #
197
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
198
+ # Used for the maximum size limit of the LRU cache storing endpoints data
199
+ # for endpoint discovery enabled operations. Defaults to 1000.
200
+ #
201
+ # @option options [Integer] :endpoint_cache_max_threads (10)
202
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
203
+ #
204
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
205
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
206
+ # Use this option to config the time interval in seconds for making
207
+ # requests fetching endpoints information. Defaults to 60 sec.
208
+ #
209
+ # @option options [Boolean] :endpoint_discovery (false)
210
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
211
+ #
212
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
213
+ # The log formatter.
214
+ #
215
+ # @option options [Symbol] :log_level (:info)
216
+ # The log level to send messages to the `:logger` at.
217
+ #
218
+ # @option options [Logger] :logger
219
+ # The Logger instance to send log messages to. If this option
220
+ # is not set, logging will be disabled.
221
+ #
222
+ # @option options [Integer] :max_attempts (3)
223
+ # An integer representing the maximum number attempts that will be made for
224
+ # a single request, including the initial attempt. For example,
225
+ # setting this value to 5 will result in a request being retried up to
226
+ # 4 times. Used in `standard` and `adaptive` retry modes.
227
+ #
228
+ # @option options [String] :profile ("default")
229
+ # Used when loading credentials from the shared credentials file
230
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
231
+ #
232
+ # @option options [Proc] :retry_backoff
233
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
234
+ # This option is only used in the `legacy` retry mode.
235
+ #
236
+ # @option options [Float] :retry_base_delay (0.3)
237
+ # The base delay in seconds used by the default backoff function. This option
238
+ # is only used in the `legacy` retry mode.
239
+ #
240
+ # @option options [Symbol] :retry_jitter (:none)
241
+ # A delay randomiser function used by the default backoff function.
242
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
243
+ # otherwise a Proc that takes and returns a number. This option is only used
244
+ # in the `legacy` retry mode.
245
+ #
246
+ # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
247
+ #
248
+ # @option options [Integer] :retry_limit (3)
249
+ # The maximum number of times to retry failed requests. Only
250
+ # ~ 500 level server errors and certain ~ 400 level client errors
251
+ # are retried. Generally, these are throttling errors, data
252
+ # checksum errors, networking errors, timeout errors, auth errors,
253
+ # endpoint discovery, and errors from expired credentials.
254
+ # This option is only used in the `legacy` retry mode.
255
+ #
256
+ # @option options [Integer] :retry_max_delay (0)
257
+ # The maximum number of seconds to delay between retries (0 for no limit)
258
+ # used by the default backoff function. This option is only used in the
259
+ # `legacy` retry mode.
260
+ #
261
+ # @option options [String] :retry_mode ("legacy")
262
+ # Specifies which retry algorithm to use. Values are:
263
+ #
264
+ # * `legacy` - The pre-existing retry behavior. This is default value if
265
+ # no retry mode is provided.
266
+ #
267
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
268
+ # This includes support for retry quotas, which limit the number of
269
+ # unsuccessful retries a client can make.
270
+ #
271
+ # * `adaptive` - An experimental retry mode that includes all the
272
+ # functionality of `standard` mode along with automatic client side
273
+ # throttling. This is a provisional mode that may change behavior
274
+ # in the future.
275
+ #
276
+ #
277
+ # @option options [String] :secret_access_key
278
+ #
279
+ # @option options [String] :session_token
280
+ #
281
+ # @option options [Boolean] :simple_json (false)
282
+ # Disables request parameter conversion, validation, and formatting.
283
+ # Also disable response data type conversions. This option is useful
284
+ # when you want to ensure the highest level of performance by
285
+ # avoiding overhead of walking request parameters and response data
286
+ # structures.
287
+ #
288
+ # When `:simple_json` is enabled, the request parameters hash must
289
+ # be formatted exactly as the DynamoDB API expects.
290
+ #
291
+ # @option options [Boolean] :stub_responses (false)
292
+ # Causes the client to return stubbed responses. By default
293
+ # fake responses are generated and returned. You can specify
294
+ # the response data to return or errors to raise by calling
295
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
296
+ #
297
+ # ** Please note ** When response stubbing is enabled, no HTTP
298
+ # requests are made, and retries are disabled.
299
+ #
300
+ # @option options [Boolean] :use_dualstack_endpoint
301
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
302
+ # will be used if available.
303
+ #
304
+ # @option options [Boolean] :use_fips_endpoint
305
+ # When set to `true`, fips compatible endpoints will be used if available.
306
+ # When a `fips` region is used, the region is normalized and this config
307
+ # is set to `true`.
308
+ #
309
+ # @option options [Boolean] :validate_params (true)
310
+ # When `true`, request parameters are validated before
311
+ # sending the request.
312
+ #
313
+ # @option options [URI::HTTP,String] :http_proxy A proxy to send
314
+ # requests through. Formatted like 'http://proxy.com:123'.
315
+ #
316
+ # @option options [Float] :http_open_timeout (15) The number of
317
+ # seconds to wait when opening a HTTP session before raising a
318
+ # `Timeout::Error`.
319
+ #
320
+ # @option options [Float] :http_read_timeout (60) The default
321
+ # number of seconds to wait for response data. This value can
322
+ # safely be set per-request on the session.
323
+ #
324
+ # @option options [Float] :http_idle_timeout (5) The number of
325
+ # seconds a connection is allowed to sit idle before it is
326
+ # considered stale. Stale connections are closed and removed
327
+ # from the pool before making a request.
328
+ #
329
+ # @option options [Float] :http_continue_timeout (1) The number of
330
+ # seconds to wait for a 100-continue response before sending the
331
+ # request body. This option has no effect unless the request has
332
+ # "Expect" header set to "100-continue". Defaults to `nil` which
333
+ # disables this behaviour. This value can safely be set per
334
+ # request on the session.
335
+ #
336
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
337
+ # in seconds.
338
+ #
339
+ # @option options [Boolean] :http_wire_trace (false) When `true`,
340
+ # HTTP debug output will be sent to the `:logger`.
341
+ #
342
+ # @option options [Boolean] :ssl_verify_peer (true) When `true`,
343
+ # SSL peer certificates are verified when establishing a
344
+ # connection.
345
+ #
346
+ # @option options [String] :ssl_ca_bundle Full path to the SSL
347
+ # certificate authority bundle file that should be used when
348
+ # verifying peer certificates. If you do not pass
349
+ # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
350
+ # will be used if available.
351
+ #
352
+ # @option options [String] :ssl_ca_directory Full path of the
353
+ # directory that contains the unbundled SSL certificate
354
+ # authority files for verifying peer certificates. If you do
355
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
356
+ # system default will be used if available.
357
+ #
358
+ def initialize(*args)
359
+ super
360
+ end
361
+
362
+ # @!group API Operations
363
+
364
+ # Associates the specified origination identity with a pool.
365
+ #
366
+ # If the origination identity is a phone number and is already
367
+ # associated with another pool, an Error is returned. A sender ID can be
368
+ # associated with multiple pools.
369
+ #
370
+ # If the origination identity configuration doesn't match the pool's
371
+ # configuration, an Error is returned.
372
+ #
373
+ # @option params [required, String] :pool_id
374
+ # The pool to update with the new Identity. This value can be either the
375
+ # PoolId or PoolArn, and you can find these values using DescribePools.
376
+ #
377
+ # @option params [required, String] :origination_identity
378
+ # The origination identity to use, such as PhoneNumberId,
379
+ # PhoneNumberArn, SenderId, or SenderIdArn. You can use
380
+ # DescribePhoneNumbers to find the values for PhoneNumberId and
381
+ # PhoneNumberArn, while DescribeSenderIds can be used to get the values
382
+ # for SenderId and SenderIdArn.
383
+ #
384
+ # @option params [required, String] :iso_country_code
385
+ # The new two-character code, in ISO 3166-1 alpha-2 format, for the
386
+ # country or region of the origination identity.
387
+ #
388
+ # @option params [String] :client_token
389
+ # Unique, case-sensitive identifier that you provide to ensure the
390
+ # idempotency of the request. If you don't specify a client token, a
391
+ # randomly generated token is used for the request to ensure
392
+ # idempotency.
393
+ #
394
+ # **A suitable default value is auto-generated.** You should normally
395
+ # not need to pass this option.**
396
+ #
397
+ # @return [Types::AssociateOriginationIdentityResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
398
+ #
399
+ # * {Types::AssociateOriginationIdentityResult#pool_arn #pool_arn} => String
400
+ # * {Types::AssociateOriginationIdentityResult#pool_id #pool_id} => String
401
+ # * {Types::AssociateOriginationIdentityResult#origination_identity_arn #origination_identity_arn} => String
402
+ # * {Types::AssociateOriginationIdentityResult#origination_identity #origination_identity} => String
403
+ # * {Types::AssociateOriginationIdentityResult#iso_country_code #iso_country_code} => String
404
+ #
405
+ # @example Request syntax with placeholder values
406
+ #
407
+ # resp = client.associate_origination_identity({
408
+ # pool_id: "PoolIdOrArn", # required
409
+ # origination_identity: "PhoneOrSenderIdOrArn", # required
410
+ # iso_country_code: "IsoCountryCode", # required
411
+ # client_token: "ClientToken",
412
+ # })
413
+ #
414
+ # @example Response structure
415
+ #
416
+ # resp.pool_arn #=> String
417
+ # resp.pool_id #=> String
418
+ # resp.origination_identity_arn #=> String
419
+ # resp.origination_identity #=> String
420
+ # resp.iso_country_code #=> String
421
+ #
422
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/AssociateOriginationIdentity AWS API Documentation
423
+ #
424
+ # @overload associate_origination_identity(params = {})
425
+ # @param [Hash] params ({})
426
+ def associate_origination_identity(params = {}, options = {})
427
+ req = build_request(:associate_origination_identity, params)
428
+ req.send_request(options)
429
+ end
430
+
431
+ # Creates a new configuration set. After you create the configuration
432
+ # set, you can add one or more event destinations to it.
433
+ #
434
+ # A configuration set is a set of rules that you apply to the SMS and
435
+ # voice messages that you send.
436
+ #
437
+ # When you send a message, you can optionally specify a single
438
+ # configuration set.
439
+ #
440
+ # @option params [required, String] :configuration_set_name
441
+ # The name to use for the new configuration set.
442
+ #
443
+ # @option params [Array<Types::Tag>] :tags
444
+ # An array of key and value pair tags that's associated with the new
445
+ # configuration set.
446
+ #
447
+ # @option params [String] :client_token
448
+ # Unique, case-sensitive identifier that you provide to ensure the
449
+ # idempotency of the request. If you don't specify a client token, a
450
+ # randomly generated token is used for the request to ensure
451
+ # idempotency.
452
+ #
453
+ # **A suitable default value is auto-generated.** You should normally
454
+ # not need to pass this option.**
455
+ #
456
+ # @return [Types::CreateConfigurationSetResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
457
+ #
458
+ # * {Types::CreateConfigurationSetResult#configuration_set_arn #configuration_set_arn} => String
459
+ # * {Types::CreateConfigurationSetResult#configuration_set_name #configuration_set_name} => String
460
+ # * {Types::CreateConfigurationSetResult#tags #tags} => Array&lt;Types::Tag&gt;
461
+ # * {Types::CreateConfigurationSetResult#created_timestamp #created_timestamp} => Time
462
+ #
463
+ # @example Request syntax with placeholder values
464
+ #
465
+ # resp = client.create_configuration_set({
466
+ # configuration_set_name: "ConfigurationSetName", # required
467
+ # tags: [
468
+ # {
469
+ # key: "TagKey", # required
470
+ # value: "TagValue", # required
471
+ # },
472
+ # ],
473
+ # client_token: "ClientToken",
474
+ # })
475
+ #
476
+ # @example Response structure
477
+ #
478
+ # resp.configuration_set_arn #=> String
479
+ # resp.configuration_set_name #=> String
480
+ # resp.tags #=> Array
481
+ # resp.tags[0].key #=> String
482
+ # resp.tags[0].value #=> String
483
+ # resp.created_timestamp #=> Time
484
+ #
485
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/CreateConfigurationSet AWS API Documentation
486
+ #
487
+ # @overload create_configuration_set(params = {})
488
+ # @param [Hash] params ({})
489
+ def create_configuration_set(params = {}, options = {})
490
+ req = build_request(:create_configuration_set, params)
491
+ req.send_request(options)
492
+ end
493
+
494
+ # Creates a new event destination in a configuration set.
495
+ #
496
+ # An event destination is a location where you send message events. The
497
+ # event options are Amazon CloudWatch, Amazon Kinesis Data Firehose, or
498
+ # Amazon SNS. For example, when a message is delivered successfully, you
499
+ # can send information about that event to an event destination, or send
500
+ # notifications to endpoints that are subscribed to an Amazon SNS topic.
501
+ #
502
+ # Each configuration set can contain between 0 and 5 event destinations.
503
+ # Each event destination can contain a reference to a single
504
+ # destination, such as a CloudWatch or Kinesis Data Firehose
505
+ # destination.
506
+ #
507
+ # @option params [required, String] :configuration_set_name
508
+ # Either the name of the configuration set or the configuration set ARN
509
+ # to apply event logging to. The ConfigurateSetName and
510
+ # ConfigurationSetArn can be found using the DescribeConfigurationSets
511
+ # action.
512
+ #
513
+ # @option params [required, String] :event_destination_name
514
+ # The name that identifies the event destination.
515
+ #
516
+ # @option params [required, Array<String>] :matching_event_types
517
+ # An array of event types that determine which events to log. If "ALL"
518
+ # is used, then Amazon Pinpoint logs every event type.
519
+ #
520
+ # @option params [Types::CloudWatchLogsDestination] :cloud_watch_logs_destination
521
+ # An object that contains information about an event destination for
522
+ # logging to Amazon CloudWatch logs.
523
+ #
524
+ # @option params [Types::KinesisFirehoseDestination] :kinesis_firehose_destination
525
+ # An object that contains information about an event destination for
526
+ # logging to Amazon Kinesis Data Firehose.
527
+ #
528
+ # @option params [Types::SnsDestination] :sns_destination
529
+ # An object that contains information about an event destination for
530
+ # logging to Amazon SNS.
531
+ #
532
+ # @option params [String] :client_token
533
+ # Unique, case-sensitive identifier that you provide to ensure the
534
+ # idempotency of the request. If you don't specify a client token, a
535
+ # randomly generated token is used for the request to ensure
536
+ # idempotency.
537
+ #
538
+ # **A suitable default value is auto-generated.** You should normally
539
+ # not need to pass this option.**
540
+ #
541
+ # @return [Types::CreateEventDestinationResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
542
+ #
543
+ # * {Types::CreateEventDestinationResult#configuration_set_arn #configuration_set_arn} => String
544
+ # * {Types::CreateEventDestinationResult#configuration_set_name #configuration_set_name} => String
545
+ # * {Types::CreateEventDestinationResult#event_destination #event_destination} => Types::EventDestination
546
+ #
547
+ # @example Request syntax with placeholder values
548
+ #
549
+ # resp = client.create_event_destination({
550
+ # configuration_set_name: "ConfigurationSetNameOrArn", # required
551
+ # event_destination_name: "EventDestinationName", # required
552
+ # matching_event_types: ["ALL"], # required, accepts ALL, TEXT_ALL, TEXT_SENT, TEXT_PENDING, TEXT_QUEUED, TEXT_SUCCESSFUL, TEXT_DELIVERED, TEXT_INVALID, TEXT_INVALID_MESSAGE, TEXT_UNREACHABLE, TEXT_CARRIER_UNREACHABLE, TEXT_BLOCKED, TEXT_CARRIER_BLOCKED, TEXT_SPAM, TEXT_UNKNOWN, TEXT_TTL_EXPIRED, VOICE_ALL, VOICE_INITIATED, VOICE_RINGING, VOICE_ANSWERED, VOICE_COMPLETED, VOICE_BUSY, VOICE_NO_ANSWER, VOICE_FAILED, VOICE_TTL_EXPIRED
553
+ # cloud_watch_logs_destination: {
554
+ # iam_role_arn: "IamRoleArn", # required
555
+ # log_group_arn: "LogGroupArn", # required
556
+ # },
557
+ # kinesis_firehose_destination: {
558
+ # iam_role_arn: "IamRoleArn", # required
559
+ # delivery_stream_arn: "DeliveryStreamArn", # required
560
+ # },
561
+ # sns_destination: {
562
+ # topic_arn: "SnsTopicArn", # required
563
+ # },
564
+ # client_token: "ClientToken",
565
+ # })
566
+ #
567
+ # @example Response structure
568
+ #
569
+ # resp.configuration_set_arn #=> String
570
+ # resp.configuration_set_name #=> String
571
+ # resp.event_destination.event_destination_name #=> String
572
+ # resp.event_destination.enabled #=> Boolean
573
+ # resp.event_destination.matching_event_types #=> Array
574
+ # resp.event_destination.matching_event_types[0] #=> String, one of "ALL", "TEXT_ALL", "TEXT_SENT", "TEXT_PENDING", "TEXT_QUEUED", "TEXT_SUCCESSFUL", "TEXT_DELIVERED", "TEXT_INVALID", "TEXT_INVALID_MESSAGE", "TEXT_UNREACHABLE", "TEXT_CARRIER_UNREACHABLE", "TEXT_BLOCKED", "TEXT_CARRIER_BLOCKED", "TEXT_SPAM", "TEXT_UNKNOWN", "TEXT_TTL_EXPIRED", "VOICE_ALL", "VOICE_INITIATED", "VOICE_RINGING", "VOICE_ANSWERED", "VOICE_COMPLETED", "VOICE_BUSY", "VOICE_NO_ANSWER", "VOICE_FAILED", "VOICE_TTL_EXPIRED"
575
+ # resp.event_destination.cloud_watch_logs_destination.iam_role_arn #=> String
576
+ # resp.event_destination.cloud_watch_logs_destination.log_group_arn #=> String
577
+ # resp.event_destination.kinesis_firehose_destination.iam_role_arn #=> String
578
+ # resp.event_destination.kinesis_firehose_destination.delivery_stream_arn #=> String
579
+ # resp.event_destination.sns_destination.topic_arn #=> String
580
+ #
581
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/CreateEventDestination AWS API Documentation
582
+ #
583
+ # @overload create_event_destination(params = {})
584
+ # @param [Hash] params ({})
585
+ def create_event_destination(params = {}, options = {})
586
+ req = build_request(:create_event_destination, params)
587
+ req.send_request(options)
588
+ end
589
+
590
+ # Creates a new opt-out list.
591
+ #
592
+ # If the opt-out list name already exists, an Error is returned.
593
+ #
594
+ # An opt-out list is a list of phone numbers that are opted out, meaning
595
+ # you can't send SMS or voice messages to them. If end user replies
596
+ # with the keyword "STOP," an entry for the phone number is added to
597
+ # the opt-out list. In addition to STOP, your recipients can use any
598
+ # supported opt-out keyword, such as CANCEL or OPTOUT. For a list of
599
+ # supported opt-out keywords, see [ SMS opt out ][1] in the *Amazon
600
+ # Pinpoint User Guide*.
601
+ #
602
+ #
603
+ #
604
+ # [1]: https://docs.aws.amazon.com/pinpoint/latest/userguide/channels-sms-manage.html#channels-sms-manage-optout
605
+ #
606
+ # @option params [required, String] :opt_out_list_name
607
+ # The name of the new OptOutList.
608
+ #
609
+ # @option params [Array<Types::Tag>] :tags
610
+ # An array of tags (key and value pairs) to associate with the new
611
+ # OptOutList.
612
+ #
613
+ # @option params [String] :client_token
614
+ # Unique, case-sensitive identifier that you provide to ensure the
615
+ # idempotency of the request. If you don't specify a client token, a
616
+ # randomly generated token is used for the request to ensure
617
+ # idempotency.
618
+ #
619
+ # **A suitable default value is auto-generated.** You should normally
620
+ # not need to pass this option.**
621
+ #
622
+ # @return [Types::CreateOptOutListResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
623
+ #
624
+ # * {Types::CreateOptOutListResult#opt_out_list_arn #opt_out_list_arn} => String
625
+ # * {Types::CreateOptOutListResult#opt_out_list_name #opt_out_list_name} => String
626
+ # * {Types::CreateOptOutListResult#tags #tags} => Array&lt;Types::Tag&gt;
627
+ # * {Types::CreateOptOutListResult#created_timestamp #created_timestamp} => Time
628
+ #
629
+ # @example Request syntax with placeholder values
630
+ #
631
+ # resp = client.create_opt_out_list({
632
+ # opt_out_list_name: "OptOutListName", # required
633
+ # tags: [
634
+ # {
635
+ # key: "TagKey", # required
636
+ # value: "TagValue", # required
637
+ # },
638
+ # ],
639
+ # client_token: "ClientToken",
640
+ # })
641
+ #
642
+ # @example Response structure
643
+ #
644
+ # resp.opt_out_list_arn #=> String
645
+ # resp.opt_out_list_name #=> String
646
+ # resp.tags #=> Array
647
+ # resp.tags[0].key #=> String
648
+ # resp.tags[0].value #=> String
649
+ # resp.created_timestamp #=> Time
650
+ #
651
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/CreateOptOutList AWS API Documentation
652
+ #
653
+ # @overload create_opt_out_list(params = {})
654
+ # @param [Hash] params ({})
655
+ def create_opt_out_list(params = {}, options = {})
656
+ req = build_request(:create_opt_out_list, params)
657
+ req.send_request(options)
658
+ end
659
+
660
+ # Creates a new pool and associates the specified origination identity
661
+ # to the pool. A pool can include one or more phone numbers and
662
+ # SenderIds that are associated with your Amazon Web Services account.
663
+ #
664
+ # The new pool inherits its configuration from the specified origination
665
+ # identity. This includes keywords, message type, opt-out list, two-way
666
+ # configuration, and self-managed opt-out configuration. Deletion
667
+ # protection isn't inherited from the origination identity and defaults
668
+ # to false.
669
+ #
670
+ # If the origination identity is a phone number and is already
671
+ # associated with another pool, an Error is returned. A sender ID can be
672
+ # associated with multiple pools.
673
+ #
674
+ # @option params [required, String] :origination_identity
675
+ # The origination identity to use such as a PhoneNumberId,
676
+ # PhoneNumberArn, SenderId or SenderIdArn. You can use
677
+ # DescribePhoneNumbers to find the values for PhoneNumberId and
678
+ # PhoneNumberArn while DescribeSenderIds can be used to get the values
679
+ # for SenderId and SenderIdArn.
680
+ #
681
+ # @option params [required, String] :iso_country_code
682
+ # The new two-character code, in ISO 3166-1 alpha-2 format, for the
683
+ # country or region of the new pool.
684
+ #
685
+ # @option params [required, String] :message_type
686
+ # The type of message. Valid values are TRANSACTIONAL for messages that
687
+ # are critical or time-sensitive and PROMOTIONAL for messages that
688
+ # aren't critical or time-sensitive.
689
+ #
690
+ # @option params [Boolean] :deletion_protection_enabled
691
+ # By default this is set to false. When set to true the pool can't be
692
+ # deleted. You can change this value using the UpdatePool action.
693
+ #
694
+ # @option params [Array<Types::Tag>] :tags
695
+ # An array of tags (key and value pairs) associated with the pool.
696
+ #
697
+ # @option params [String] :client_token
698
+ # Unique, case-sensitive identifier that you provide to ensure the
699
+ # idempotency of the request. If you don't specify a client token, a
700
+ # randomly generated token is used for the request to ensure
701
+ # idempotency.
702
+ #
703
+ # **A suitable default value is auto-generated.** You should normally
704
+ # not need to pass this option.**
705
+ #
706
+ # @return [Types::CreatePoolResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
707
+ #
708
+ # * {Types::CreatePoolResult#pool_arn #pool_arn} => String
709
+ # * {Types::CreatePoolResult#pool_id #pool_id} => String
710
+ # * {Types::CreatePoolResult#status #status} => String
711
+ # * {Types::CreatePoolResult#message_type #message_type} => String
712
+ # * {Types::CreatePoolResult#two_way_enabled #two_way_enabled} => Boolean
713
+ # * {Types::CreatePoolResult#two_way_channel_arn #two_way_channel_arn} => String
714
+ # * {Types::CreatePoolResult#self_managed_opt_outs_enabled #self_managed_opt_outs_enabled} => Boolean
715
+ # * {Types::CreatePoolResult#opt_out_list_name #opt_out_list_name} => String
716
+ # * {Types::CreatePoolResult#shared_routes_enabled #shared_routes_enabled} => Boolean
717
+ # * {Types::CreatePoolResult#deletion_protection_enabled #deletion_protection_enabled} => Boolean
718
+ # * {Types::CreatePoolResult#tags #tags} => Array&lt;Types::Tag&gt;
719
+ # * {Types::CreatePoolResult#created_timestamp #created_timestamp} => Time
720
+ #
721
+ # @example Request syntax with placeholder values
722
+ #
723
+ # resp = client.create_pool({
724
+ # origination_identity: "PhoneOrSenderIdOrArn", # required
725
+ # iso_country_code: "IsoCountryCode", # required
726
+ # message_type: "TRANSACTIONAL", # required, accepts TRANSACTIONAL, PROMOTIONAL
727
+ # deletion_protection_enabled: false,
728
+ # tags: [
729
+ # {
730
+ # key: "TagKey", # required
731
+ # value: "TagValue", # required
732
+ # },
733
+ # ],
734
+ # client_token: "ClientToken",
735
+ # })
736
+ #
737
+ # @example Response structure
738
+ #
739
+ # resp.pool_arn #=> String
740
+ # resp.pool_id #=> String
741
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "DELETING"
742
+ # resp.message_type #=> String, one of "TRANSACTIONAL", "PROMOTIONAL"
743
+ # resp.two_way_enabled #=> Boolean
744
+ # resp.two_way_channel_arn #=> String
745
+ # resp.self_managed_opt_outs_enabled #=> Boolean
746
+ # resp.opt_out_list_name #=> String
747
+ # resp.shared_routes_enabled #=> Boolean
748
+ # resp.deletion_protection_enabled #=> Boolean
749
+ # resp.tags #=> Array
750
+ # resp.tags[0].key #=> String
751
+ # resp.tags[0].value #=> String
752
+ # resp.created_timestamp #=> Time
753
+ #
754
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/CreatePool AWS API Documentation
755
+ #
756
+ # @overload create_pool(params = {})
757
+ # @param [Hash] params ({})
758
+ def create_pool(params = {}, options = {})
759
+ req = build_request(:create_pool, params)
760
+ req.send_request(options)
761
+ end
762
+
763
+ # Deletes an existing configuration set.
764
+ #
765
+ # A configuration set is a set of rules that you apply to voice and SMS
766
+ # messages that you send. In a configuration set, you can specify a
767
+ # destination for specific types of events related to voice and SMS
768
+ # messages.
769
+ #
770
+ # @option params [required, String] :configuration_set_name
771
+ # The name of the configuration set or the configuration set ARN that
772
+ # you want to delete. The ConfigurationSetName and ConfigurationSetArn
773
+ # can be found using the DescribeConfigurationSets action.
774
+ #
775
+ # @return [Types::DeleteConfigurationSetResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
776
+ #
777
+ # * {Types::DeleteConfigurationSetResult#configuration_set_arn #configuration_set_arn} => String
778
+ # * {Types::DeleteConfigurationSetResult#configuration_set_name #configuration_set_name} => String
779
+ # * {Types::DeleteConfigurationSetResult#event_destinations #event_destinations} => Array&lt;Types::EventDestination&gt;
780
+ # * {Types::DeleteConfigurationSetResult#default_message_type #default_message_type} => String
781
+ # * {Types::DeleteConfigurationSetResult#default_sender_id #default_sender_id} => String
782
+ # * {Types::DeleteConfigurationSetResult#created_timestamp #created_timestamp} => Time
783
+ #
784
+ # @example Request syntax with placeholder values
785
+ #
786
+ # resp = client.delete_configuration_set({
787
+ # configuration_set_name: "ConfigurationSetNameOrArn", # required
788
+ # })
789
+ #
790
+ # @example Response structure
791
+ #
792
+ # resp.configuration_set_arn #=> String
793
+ # resp.configuration_set_name #=> String
794
+ # resp.event_destinations #=> Array
795
+ # resp.event_destinations[0].event_destination_name #=> String
796
+ # resp.event_destinations[0].enabled #=> Boolean
797
+ # resp.event_destinations[0].matching_event_types #=> Array
798
+ # resp.event_destinations[0].matching_event_types[0] #=> String, one of "ALL", "TEXT_ALL", "TEXT_SENT", "TEXT_PENDING", "TEXT_QUEUED", "TEXT_SUCCESSFUL", "TEXT_DELIVERED", "TEXT_INVALID", "TEXT_INVALID_MESSAGE", "TEXT_UNREACHABLE", "TEXT_CARRIER_UNREACHABLE", "TEXT_BLOCKED", "TEXT_CARRIER_BLOCKED", "TEXT_SPAM", "TEXT_UNKNOWN", "TEXT_TTL_EXPIRED", "VOICE_ALL", "VOICE_INITIATED", "VOICE_RINGING", "VOICE_ANSWERED", "VOICE_COMPLETED", "VOICE_BUSY", "VOICE_NO_ANSWER", "VOICE_FAILED", "VOICE_TTL_EXPIRED"
799
+ # resp.event_destinations[0].cloud_watch_logs_destination.iam_role_arn #=> String
800
+ # resp.event_destinations[0].cloud_watch_logs_destination.log_group_arn #=> String
801
+ # resp.event_destinations[0].kinesis_firehose_destination.iam_role_arn #=> String
802
+ # resp.event_destinations[0].kinesis_firehose_destination.delivery_stream_arn #=> String
803
+ # resp.event_destinations[0].sns_destination.topic_arn #=> String
804
+ # resp.default_message_type #=> String, one of "TRANSACTIONAL", "PROMOTIONAL"
805
+ # resp.default_sender_id #=> String
806
+ # resp.created_timestamp #=> Time
807
+ #
808
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DeleteConfigurationSet AWS API Documentation
809
+ #
810
+ # @overload delete_configuration_set(params = {})
811
+ # @param [Hash] params ({})
812
+ def delete_configuration_set(params = {}, options = {})
813
+ req = build_request(:delete_configuration_set, params)
814
+ req.send_request(options)
815
+ end
816
+
817
+ # Deletes an existing default message type on a configuration set.
818
+ #
819
+ # A message type is a type of messages that you plan to send. If you
820
+ # send account-related messages or time-sensitive messages such as
821
+ # one-time passcodes, choose **Transactional**. If you plan to send
822
+ # messages that contain marketing material or other promotional content,
823
+ # choose **Promotional**. This setting applies to your entire Amazon Web
824
+ # Services account.
825
+ #
826
+ # @option params [required, String] :configuration_set_name
827
+ # The name of the configuration set or the configuration set Amazon
828
+ # Resource Name (ARN) to delete the default message type from. The
829
+ # ConfigurationSetName and ConfigurationSetArn can be found using the
830
+ # DescribeConfigurationSets action.
831
+ #
832
+ # @return [Types::DeleteDefaultMessageTypeResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
833
+ #
834
+ # * {Types::DeleteDefaultMessageTypeResult#configuration_set_arn #configuration_set_arn} => String
835
+ # * {Types::DeleteDefaultMessageTypeResult#configuration_set_name #configuration_set_name} => String
836
+ # * {Types::DeleteDefaultMessageTypeResult#message_type #message_type} => String
837
+ #
838
+ # @example Request syntax with placeholder values
839
+ #
840
+ # resp = client.delete_default_message_type({
841
+ # configuration_set_name: "ConfigurationSetNameOrArn", # required
842
+ # })
843
+ #
844
+ # @example Response structure
845
+ #
846
+ # resp.configuration_set_arn #=> String
847
+ # resp.configuration_set_name #=> String
848
+ # resp.message_type #=> String, one of "TRANSACTIONAL", "PROMOTIONAL"
849
+ #
850
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DeleteDefaultMessageType AWS API Documentation
851
+ #
852
+ # @overload delete_default_message_type(params = {})
853
+ # @param [Hash] params ({})
854
+ def delete_default_message_type(params = {}, options = {})
855
+ req = build_request(:delete_default_message_type, params)
856
+ req.send_request(options)
857
+ end
858
+
859
+ # Deletes an existing default sender ID on a configuration set.
860
+ #
861
+ # A default sender ID is the identity that appears on recipients'
862
+ # devices when they receive SMS messages. Support for sender ID
863
+ # capabilities varies by country or region.
864
+ #
865
+ # @option params [required, String] :configuration_set_name
866
+ # The name of the configuration set or the configuration set Amazon
867
+ # Resource Name (ARN) to delete the default sender ID from. The
868
+ # ConfigurationSetName and ConfigurationSetArn can be found using the
869
+ # DescribeConfigurationSets action.
870
+ #
871
+ # @return [Types::DeleteDefaultSenderIdResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
872
+ #
873
+ # * {Types::DeleteDefaultSenderIdResult#configuration_set_arn #configuration_set_arn} => String
874
+ # * {Types::DeleteDefaultSenderIdResult#configuration_set_name #configuration_set_name} => String
875
+ # * {Types::DeleteDefaultSenderIdResult#sender_id #sender_id} => String
876
+ #
877
+ # @example Request syntax with placeholder values
878
+ #
879
+ # resp = client.delete_default_sender_id({
880
+ # configuration_set_name: "ConfigurationSetNameOrArn", # required
881
+ # })
882
+ #
883
+ # @example Response structure
884
+ #
885
+ # resp.configuration_set_arn #=> String
886
+ # resp.configuration_set_name #=> String
887
+ # resp.sender_id #=> String
888
+ #
889
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DeleteDefaultSenderId AWS API Documentation
890
+ #
891
+ # @overload delete_default_sender_id(params = {})
892
+ # @param [Hash] params ({})
893
+ def delete_default_sender_id(params = {}, options = {})
894
+ req = build_request(:delete_default_sender_id, params)
895
+ req.send_request(options)
896
+ end
897
+
898
+ # Deletes an existing event destination.
899
+ #
900
+ # An event destination is a location where you send response information
901
+ # about the messages that you send. For example, when a message is
902
+ # delivered successfully, you can send information about that event to
903
+ # an Amazon CloudWatch destination, or send notifications to endpoints
904
+ # that are subscribed to an Amazon SNS topic.
905
+ #
906
+ # @option params [required, String] :configuration_set_name
907
+ # The name of the configuration set or the configuration set's Amazon
908
+ # Resource Name (ARN) to remove the event destination from. The
909
+ # ConfigurateSetName and ConfigurationSetArn can be found using the
910
+ # DescribeConfigurationSets action.
911
+ #
912
+ # @option params [required, String] :event_destination_name
913
+ # The name of the event destination to delete.
914
+ #
915
+ # @return [Types::DeleteEventDestinationResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
916
+ #
917
+ # * {Types::DeleteEventDestinationResult#configuration_set_arn #configuration_set_arn} => String
918
+ # * {Types::DeleteEventDestinationResult#configuration_set_name #configuration_set_name} => String
919
+ # * {Types::DeleteEventDestinationResult#event_destination #event_destination} => Types::EventDestination
920
+ #
921
+ # @example Request syntax with placeholder values
922
+ #
923
+ # resp = client.delete_event_destination({
924
+ # configuration_set_name: "ConfigurationSetNameOrArn", # required
925
+ # event_destination_name: "EventDestinationName", # required
926
+ # })
927
+ #
928
+ # @example Response structure
929
+ #
930
+ # resp.configuration_set_arn #=> String
931
+ # resp.configuration_set_name #=> String
932
+ # resp.event_destination.event_destination_name #=> String
933
+ # resp.event_destination.enabled #=> Boolean
934
+ # resp.event_destination.matching_event_types #=> Array
935
+ # resp.event_destination.matching_event_types[0] #=> String, one of "ALL", "TEXT_ALL", "TEXT_SENT", "TEXT_PENDING", "TEXT_QUEUED", "TEXT_SUCCESSFUL", "TEXT_DELIVERED", "TEXT_INVALID", "TEXT_INVALID_MESSAGE", "TEXT_UNREACHABLE", "TEXT_CARRIER_UNREACHABLE", "TEXT_BLOCKED", "TEXT_CARRIER_BLOCKED", "TEXT_SPAM", "TEXT_UNKNOWN", "TEXT_TTL_EXPIRED", "VOICE_ALL", "VOICE_INITIATED", "VOICE_RINGING", "VOICE_ANSWERED", "VOICE_COMPLETED", "VOICE_BUSY", "VOICE_NO_ANSWER", "VOICE_FAILED", "VOICE_TTL_EXPIRED"
936
+ # resp.event_destination.cloud_watch_logs_destination.iam_role_arn #=> String
937
+ # resp.event_destination.cloud_watch_logs_destination.log_group_arn #=> String
938
+ # resp.event_destination.kinesis_firehose_destination.iam_role_arn #=> String
939
+ # resp.event_destination.kinesis_firehose_destination.delivery_stream_arn #=> String
940
+ # resp.event_destination.sns_destination.topic_arn #=> String
941
+ #
942
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DeleteEventDestination AWS API Documentation
943
+ #
944
+ # @overload delete_event_destination(params = {})
945
+ # @param [Hash] params ({})
946
+ def delete_event_destination(params = {}, options = {})
947
+ req = build_request(:delete_event_destination, params)
948
+ req.send_request(options)
949
+ end
950
+
951
+ # Deletes an existing keyword from an origination phone number or pool.
952
+ #
953
+ # A keyword is a word that you can search for on a particular phone
954
+ # number or pool. It is also a specific word or phrase that an end user
955
+ # can send to your number to elicit a response, such as an informational
956
+ # message or a special offer. When your number receives a message that
957
+ # begins with a keyword, Amazon Pinpoint responds with a customizable
958
+ # message.
959
+ #
960
+ # Keywords "HELP" and "STOP" can't be deleted or modified.
961
+ #
962
+ # @option params [required, String] :origination_identity
963
+ # The origination identity to use such as a PhoneNumberId,
964
+ # PhoneNumberArn, PoolId or PoolArn. You can use DescribePhoneNumbers to
965
+ # find the values for PhoneNumberId and PhoneNumberArn and DescribePools
966
+ # to find the values of PoolId and PoolArn.
967
+ #
968
+ # @option params [required, String] :keyword
969
+ # The keyword to delete.
970
+ #
971
+ # @return [Types::DeleteKeywordResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
972
+ #
973
+ # * {Types::DeleteKeywordResult#origination_identity_arn #origination_identity_arn} => String
974
+ # * {Types::DeleteKeywordResult#origination_identity #origination_identity} => String
975
+ # * {Types::DeleteKeywordResult#keyword #keyword} => String
976
+ # * {Types::DeleteKeywordResult#keyword_message #keyword_message} => String
977
+ # * {Types::DeleteKeywordResult#keyword_action #keyword_action} => String
978
+ #
979
+ # @example Request syntax with placeholder values
980
+ #
981
+ # resp = client.delete_keyword({
982
+ # origination_identity: "PhoneOrPoolIdOrArn", # required
983
+ # keyword: "Keyword", # required
984
+ # })
985
+ #
986
+ # @example Response structure
987
+ #
988
+ # resp.origination_identity_arn #=> String
989
+ # resp.origination_identity #=> String
990
+ # resp.keyword #=> String
991
+ # resp.keyword_message #=> String
992
+ # resp.keyword_action #=> String, one of "AUTOMATIC_RESPONSE", "OPT_OUT", "OPT_IN"
993
+ #
994
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DeleteKeyword AWS API Documentation
995
+ #
996
+ # @overload delete_keyword(params = {})
997
+ # @param [Hash] params ({})
998
+ def delete_keyword(params = {}, options = {})
999
+ req = build_request(:delete_keyword, params)
1000
+ req.send_request(options)
1001
+ end
1002
+
1003
+ # Deletes an existing opt-out list. All opted out phone numbers in the
1004
+ # opt-out list are deleted.
1005
+ #
1006
+ # If the specified opt-out list name doesn't exist or is in-use by an
1007
+ # origination phone number or pool, an Error is returned.
1008
+ #
1009
+ # @option params [required, String] :opt_out_list_name
1010
+ # The OptOutListName or OptOutListArn of the OptOutList to delete. You
1011
+ # can use DescribeOptOutLists to find the values for OptOutListName and
1012
+ # OptOutListArn.
1013
+ #
1014
+ # @return [Types::DeleteOptOutListResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1015
+ #
1016
+ # * {Types::DeleteOptOutListResult#opt_out_list_arn #opt_out_list_arn} => String
1017
+ # * {Types::DeleteOptOutListResult#opt_out_list_name #opt_out_list_name} => String
1018
+ # * {Types::DeleteOptOutListResult#created_timestamp #created_timestamp} => Time
1019
+ #
1020
+ # @example Request syntax with placeholder values
1021
+ #
1022
+ # resp = client.delete_opt_out_list({
1023
+ # opt_out_list_name: "OptOutListNameOrArn", # required
1024
+ # })
1025
+ #
1026
+ # @example Response structure
1027
+ #
1028
+ # resp.opt_out_list_arn #=> String
1029
+ # resp.opt_out_list_name #=> String
1030
+ # resp.created_timestamp #=> Time
1031
+ #
1032
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DeleteOptOutList AWS API Documentation
1033
+ #
1034
+ # @overload delete_opt_out_list(params = {})
1035
+ # @param [Hash] params ({})
1036
+ def delete_opt_out_list(params = {}, options = {})
1037
+ req = build_request(:delete_opt_out_list, params)
1038
+ req.send_request(options)
1039
+ end
1040
+
1041
+ # Deletes an existing opted out destination phone number from the
1042
+ # specified opt-out list.
1043
+ #
1044
+ # Each destination phone number can only be deleted once every 30 days.
1045
+ #
1046
+ # If the specified destination phone number doesn't exist or if the
1047
+ # opt-out list doesn't exist, an Error is returned.
1048
+ #
1049
+ # @option params [required, String] :opt_out_list_name
1050
+ # The OptOutListName or OptOutListArn to remove the phone number from.
1051
+ #
1052
+ # @option params [required, String] :opted_out_number
1053
+ # The phone number, in E.164 format, to remove from the OptOutList.
1054
+ #
1055
+ # @return [Types::DeleteOptedOutNumberResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1056
+ #
1057
+ # * {Types::DeleteOptedOutNumberResult#opt_out_list_arn #opt_out_list_arn} => String
1058
+ # * {Types::DeleteOptedOutNumberResult#opt_out_list_name #opt_out_list_name} => String
1059
+ # * {Types::DeleteOptedOutNumberResult#opted_out_number #opted_out_number} => String
1060
+ # * {Types::DeleteOptedOutNumberResult#opted_out_timestamp #opted_out_timestamp} => Time
1061
+ # * {Types::DeleteOptedOutNumberResult#end_user_opted_out #end_user_opted_out} => Boolean
1062
+ #
1063
+ # @example Request syntax with placeholder values
1064
+ #
1065
+ # resp = client.delete_opted_out_number({
1066
+ # opt_out_list_name: "OptOutListNameOrArn", # required
1067
+ # opted_out_number: "PhoneNumber", # required
1068
+ # })
1069
+ #
1070
+ # @example Response structure
1071
+ #
1072
+ # resp.opt_out_list_arn #=> String
1073
+ # resp.opt_out_list_name #=> String
1074
+ # resp.opted_out_number #=> String
1075
+ # resp.opted_out_timestamp #=> Time
1076
+ # resp.end_user_opted_out #=> Boolean
1077
+ #
1078
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DeleteOptedOutNumber AWS API Documentation
1079
+ #
1080
+ # @overload delete_opted_out_number(params = {})
1081
+ # @param [Hash] params ({})
1082
+ def delete_opted_out_number(params = {}, options = {})
1083
+ req = build_request(:delete_opted_out_number, params)
1084
+ req.send_request(options)
1085
+ end
1086
+
1087
+ # Deletes an existing pool. Deleting a pool disassociates all
1088
+ # origination identities from that pool.
1089
+ #
1090
+ # If the pool status isn't active or if deletion protection is enabled,
1091
+ # an Error is returned.
1092
+ #
1093
+ # A pool is a collection of phone numbers and SenderIds. A pool can
1094
+ # include one or more phone numbers and SenderIds that are associated
1095
+ # with your Amazon Web Services account.
1096
+ #
1097
+ # @option params [required, String] :pool_id
1098
+ # The PoolId or PoolArn of the pool to delete. You can use DescribePools
1099
+ # to find the values for PoolId and PoolArn .
1100
+ #
1101
+ # @return [Types::DeletePoolResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1102
+ #
1103
+ # * {Types::DeletePoolResult#pool_arn #pool_arn} => String
1104
+ # * {Types::DeletePoolResult#pool_id #pool_id} => String
1105
+ # * {Types::DeletePoolResult#status #status} => String
1106
+ # * {Types::DeletePoolResult#message_type #message_type} => String
1107
+ # * {Types::DeletePoolResult#two_way_enabled #two_way_enabled} => Boolean
1108
+ # * {Types::DeletePoolResult#two_way_channel_arn #two_way_channel_arn} => String
1109
+ # * {Types::DeletePoolResult#self_managed_opt_outs_enabled #self_managed_opt_outs_enabled} => Boolean
1110
+ # * {Types::DeletePoolResult#opt_out_list_name #opt_out_list_name} => String
1111
+ # * {Types::DeletePoolResult#shared_routes_enabled #shared_routes_enabled} => Boolean
1112
+ # * {Types::DeletePoolResult#created_timestamp #created_timestamp} => Time
1113
+ #
1114
+ # @example Request syntax with placeholder values
1115
+ #
1116
+ # resp = client.delete_pool({
1117
+ # pool_id: "PoolIdOrArn", # required
1118
+ # })
1119
+ #
1120
+ # @example Response structure
1121
+ #
1122
+ # resp.pool_arn #=> String
1123
+ # resp.pool_id #=> String
1124
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "DELETING"
1125
+ # resp.message_type #=> String, one of "TRANSACTIONAL", "PROMOTIONAL"
1126
+ # resp.two_way_enabled #=> Boolean
1127
+ # resp.two_way_channel_arn #=> String
1128
+ # resp.self_managed_opt_outs_enabled #=> Boolean
1129
+ # resp.opt_out_list_name #=> String
1130
+ # resp.shared_routes_enabled #=> Boolean
1131
+ # resp.created_timestamp #=> Time
1132
+ #
1133
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DeletePool AWS API Documentation
1134
+ #
1135
+ # @overload delete_pool(params = {})
1136
+ # @param [Hash] params ({})
1137
+ def delete_pool(params = {}, options = {})
1138
+ req = build_request(:delete_pool, params)
1139
+ req.send_request(options)
1140
+ end
1141
+
1142
+ # Deletes an account-level monthly spending limit override for sending
1143
+ # text messages. Deleting a spend limit override will set the
1144
+ # `EnforcedLimit` to equal the `MaxLimit`, which is controlled by Amazon
1145
+ # Web Services. For more information on spend limits (quotas) see
1146
+ # [Amazon Pinpoint quotas ][1] in the *Amazon Pinpoint Developer Guide*.
1147
+ #
1148
+ #
1149
+ #
1150
+ # [1]: https://docs.aws.amazon.com/pinpoint/latest/developerguide/quotas.html
1151
+ #
1152
+ # @return [Types::DeleteTextMessageSpendLimitOverrideResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1153
+ #
1154
+ # * {Types::DeleteTextMessageSpendLimitOverrideResult#monthly_limit #monthly_limit} => Integer
1155
+ #
1156
+ # @example Response structure
1157
+ #
1158
+ # resp.monthly_limit #=> Integer
1159
+ #
1160
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DeleteTextMessageSpendLimitOverride AWS API Documentation
1161
+ #
1162
+ # @overload delete_text_message_spend_limit_override(params = {})
1163
+ # @param [Hash] params ({})
1164
+ def delete_text_message_spend_limit_override(params = {}, options = {})
1165
+ req = build_request(:delete_text_message_spend_limit_override, params)
1166
+ req.send_request(options)
1167
+ end
1168
+
1169
+ # Deletes an account level monthly spend limit override for sending
1170
+ # voice messages. Deleting a spend limit override sets the
1171
+ # `EnforcedLimit` equal to the `MaxLimit`, which is controlled by Amazon
1172
+ # Web Services. For more information on spending limits (quotas) see
1173
+ # [Amazon Pinpoint quotas][1] in the *Amazon Pinpoint Developer Guide*.
1174
+ #
1175
+ #
1176
+ #
1177
+ # [1]: https://docs.aws.amazon.com/pinpoint/latest/developerguide/quotas.html
1178
+ #
1179
+ # @return [Types::DeleteVoiceMessageSpendLimitOverrideResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1180
+ #
1181
+ # * {Types::DeleteVoiceMessageSpendLimitOverrideResult#monthly_limit #monthly_limit} => Integer
1182
+ #
1183
+ # @example Response structure
1184
+ #
1185
+ # resp.monthly_limit #=> Integer
1186
+ #
1187
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DeleteVoiceMessageSpendLimitOverride AWS API Documentation
1188
+ #
1189
+ # @overload delete_voice_message_spend_limit_override(params = {})
1190
+ # @param [Hash] params ({})
1191
+ def delete_voice_message_spend_limit_override(params = {}, options = {})
1192
+ req = build_request(:delete_voice_message_spend_limit_override, params)
1193
+ req.send_request(options)
1194
+ end
1195
+
1196
+ # Describes attributes of your Amazon Web Services account. The
1197
+ # supported account attributes include account tier, which indicates
1198
+ # whether your account is in the sandbox or production environment. When
1199
+ # you're ready to move your account out of the sandbox, create an
1200
+ # Amazon Web Services Support case for a service limit increase request.
1201
+ #
1202
+ # New Amazon Pinpoint accounts are placed into an SMS or voice sandbox.
1203
+ # The sandbox protects both Amazon Web Services end recipients and SMS
1204
+ # or voice recipients from fraud and abuse.
1205
+ #
1206
+ # @option params [String] :next_token
1207
+ # The token to be used for the next set of paginated results. You don't
1208
+ # need to supply a value for this field in the initial request.
1209
+ #
1210
+ # @option params [Integer] :max_results
1211
+ # The maximum number of results to return per each request.
1212
+ #
1213
+ # @return [Types::DescribeAccountAttributesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1214
+ #
1215
+ # * {Types::DescribeAccountAttributesResult#account_attributes #account_attributes} => Array&lt;Types::AccountAttribute&gt;
1216
+ # * {Types::DescribeAccountAttributesResult#next_token #next_token} => String
1217
+ #
1218
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1219
+ #
1220
+ # @example Request syntax with placeholder values
1221
+ #
1222
+ # resp = client.describe_account_attributes({
1223
+ # next_token: "NextToken",
1224
+ # max_results: 1,
1225
+ # })
1226
+ #
1227
+ # @example Response structure
1228
+ #
1229
+ # resp.account_attributes #=> Array
1230
+ # resp.account_attributes[0].name #=> String, one of "ACCOUNT_TIER"
1231
+ # resp.account_attributes[0].value #=> String
1232
+ # resp.next_token #=> String
1233
+ #
1234
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeAccountAttributes AWS API Documentation
1235
+ #
1236
+ # @overload describe_account_attributes(params = {})
1237
+ # @param [Hash] params ({})
1238
+ def describe_account_attributes(params = {}, options = {})
1239
+ req = build_request(:describe_account_attributes, params)
1240
+ req.send_request(options)
1241
+ end
1242
+
1243
+ # Describes the current Amazon Pinpoint SMS Voice V2 resource quotas for
1244
+ # your account. The description for a quota includes the quota name,
1245
+ # current usage toward that quota, and the quota's maximum value.
1246
+ #
1247
+ # When you establish an Amazon Web Services account, the account has
1248
+ # initial quotas on the maximum number of configuration sets, opt-out
1249
+ # lists, phone numbers, and pools that you can create in a given Region.
1250
+ # For more information see [ Amazon Pinpoint quotas ][1] in the *Amazon
1251
+ # Pinpoint Developer Guide*.
1252
+ #
1253
+ #
1254
+ #
1255
+ # [1]: https://docs.aws.amazon.com/pinpoint/latest/developerguide/quotas.html
1256
+ #
1257
+ # @option params [String] :next_token
1258
+ # The token to be used for the next set of paginated results. You don't
1259
+ # need to supply a value for this field in the initial request.
1260
+ #
1261
+ # @option params [Integer] :max_results
1262
+ # The maximum number of results to return per each request.
1263
+ #
1264
+ # @return [Types::DescribeAccountLimitsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1265
+ #
1266
+ # * {Types::DescribeAccountLimitsResult#account_limits #account_limits} => Array&lt;Types::AccountLimit&gt;
1267
+ # * {Types::DescribeAccountLimitsResult#next_token #next_token} => String
1268
+ #
1269
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1270
+ #
1271
+ # @example Request syntax with placeholder values
1272
+ #
1273
+ # resp = client.describe_account_limits({
1274
+ # next_token: "NextToken",
1275
+ # max_results: 1,
1276
+ # })
1277
+ #
1278
+ # @example Response structure
1279
+ #
1280
+ # resp.account_limits #=> Array
1281
+ # resp.account_limits[0].name #=> String, one of "PHONE_NUMBERS", "POOLS", "CONFIGURATION_SETS", "OPT_OUT_LISTS"
1282
+ # resp.account_limits[0].used #=> Integer
1283
+ # resp.account_limits[0].max #=> Integer
1284
+ # resp.next_token #=> String
1285
+ #
1286
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeAccountLimits AWS API Documentation
1287
+ #
1288
+ # @overload describe_account_limits(params = {})
1289
+ # @param [Hash] params ({})
1290
+ def describe_account_limits(params = {}, options = {})
1291
+ req = build_request(:describe_account_limits, params)
1292
+ req.send_request(options)
1293
+ end
1294
+
1295
+ # Describes the specified configuration sets or all in your account.
1296
+ #
1297
+ # If you specify configuration set names, the output includes
1298
+ # information for only the specified configuration sets. If you specify
1299
+ # filters, the output includes information for only those configuration
1300
+ # sets that meet the filter criteria. If you don't specify
1301
+ # configuration set names or filters, the output includes information
1302
+ # for all configuration sets.
1303
+ #
1304
+ # If you specify a configuration set name that isn't valid, an error is
1305
+ # returned.
1306
+ #
1307
+ # @option params [Array<String>] :configuration_set_names
1308
+ # An array of strings. Each element can be either a ConfigurationSetName
1309
+ # or ConfigurationSetArn.
1310
+ #
1311
+ # @option params [Array<Types::ConfigurationSetFilter>] :filters
1312
+ # An array of filters to apply to the results that are returned.
1313
+ #
1314
+ # @option params [String] :next_token
1315
+ # The token to be used for the next set of paginated results. You don't
1316
+ # need to supply a value for this field in the initial request.
1317
+ #
1318
+ # @option params [Integer] :max_results
1319
+ # The maximum number of results to return per each request.
1320
+ #
1321
+ # @return [Types::DescribeConfigurationSetsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1322
+ #
1323
+ # * {Types::DescribeConfigurationSetsResult#configuration_sets #configuration_sets} => Array&lt;Types::ConfigurationSetInformation&gt;
1324
+ # * {Types::DescribeConfigurationSetsResult#next_token #next_token} => String
1325
+ #
1326
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1327
+ #
1328
+ # @example Request syntax with placeholder values
1329
+ #
1330
+ # resp = client.describe_configuration_sets({
1331
+ # configuration_set_names: ["ConfigurationSetNameOrArn"],
1332
+ # filters: [
1333
+ # {
1334
+ # name: "event-destination-name", # required, accepts event-destination-name, matching-event-types, default-message-type, default-sender-id
1335
+ # values: ["FilterValue"], # required
1336
+ # },
1337
+ # ],
1338
+ # next_token: "NextToken",
1339
+ # max_results: 1,
1340
+ # })
1341
+ #
1342
+ # @example Response structure
1343
+ #
1344
+ # resp.configuration_sets #=> Array
1345
+ # resp.configuration_sets[0].configuration_set_arn #=> String
1346
+ # resp.configuration_sets[0].configuration_set_name #=> String
1347
+ # resp.configuration_sets[0].event_destinations #=> Array
1348
+ # resp.configuration_sets[0].event_destinations[0].event_destination_name #=> String
1349
+ # resp.configuration_sets[0].event_destinations[0].enabled #=> Boolean
1350
+ # resp.configuration_sets[0].event_destinations[0].matching_event_types #=> Array
1351
+ # resp.configuration_sets[0].event_destinations[0].matching_event_types[0] #=> String, one of "ALL", "TEXT_ALL", "TEXT_SENT", "TEXT_PENDING", "TEXT_QUEUED", "TEXT_SUCCESSFUL", "TEXT_DELIVERED", "TEXT_INVALID", "TEXT_INVALID_MESSAGE", "TEXT_UNREACHABLE", "TEXT_CARRIER_UNREACHABLE", "TEXT_BLOCKED", "TEXT_CARRIER_BLOCKED", "TEXT_SPAM", "TEXT_UNKNOWN", "TEXT_TTL_EXPIRED", "VOICE_ALL", "VOICE_INITIATED", "VOICE_RINGING", "VOICE_ANSWERED", "VOICE_COMPLETED", "VOICE_BUSY", "VOICE_NO_ANSWER", "VOICE_FAILED", "VOICE_TTL_EXPIRED"
1352
+ # resp.configuration_sets[0].event_destinations[0].cloud_watch_logs_destination.iam_role_arn #=> String
1353
+ # resp.configuration_sets[0].event_destinations[0].cloud_watch_logs_destination.log_group_arn #=> String
1354
+ # resp.configuration_sets[0].event_destinations[0].kinesis_firehose_destination.iam_role_arn #=> String
1355
+ # resp.configuration_sets[0].event_destinations[0].kinesis_firehose_destination.delivery_stream_arn #=> String
1356
+ # resp.configuration_sets[0].event_destinations[0].sns_destination.topic_arn #=> String
1357
+ # resp.configuration_sets[0].default_message_type #=> String, one of "TRANSACTIONAL", "PROMOTIONAL"
1358
+ # resp.configuration_sets[0].default_sender_id #=> String
1359
+ # resp.configuration_sets[0].created_timestamp #=> Time
1360
+ # resp.next_token #=> String
1361
+ #
1362
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeConfigurationSets AWS API Documentation
1363
+ #
1364
+ # @overload describe_configuration_sets(params = {})
1365
+ # @param [Hash] params ({})
1366
+ def describe_configuration_sets(params = {}, options = {})
1367
+ req = build_request(:describe_configuration_sets, params)
1368
+ req.send_request(options)
1369
+ end
1370
+
1371
+ # Describes the specified keywords or all keywords on your origination
1372
+ # phone number or pool.
1373
+ #
1374
+ # A keyword is a word that you can search for on a particular phone
1375
+ # number or pool. It is also a specific word or phrase that an end user
1376
+ # can send to your number to elicit a response, such as an informational
1377
+ # message or a special offer. When your number receives a message that
1378
+ # begins with a keyword, Amazon Pinpoint responds with a customizable
1379
+ # message.
1380
+ #
1381
+ # If you specify a keyword that isn't valid, an Error is returned.
1382
+ #
1383
+ # @option params [required, String] :origination_identity
1384
+ # The origination identity to use such as a PhoneNumberId,
1385
+ # PhoneNumberArn, SenderId or SenderIdArn. You can use
1386
+ # DescribePhoneNumbers to find the values for PhoneNumberId and
1387
+ # PhoneNumberArn while DescribeSenderIds can be used to get the values
1388
+ # for SenderId and SenderIdArn.
1389
+ #
1390
+ # @option params [Array<String>] :keywords
1391
+ # An array of keywords to search for.
1392
+ #
1393
+ # @option params [Array<Types::KeywordFilter>] :filters
1394
+ # An array of keyword filters to filter the results.
1395
+ #
1396
+ # @option params [String] :next_token
1397
+ # The token to be used for the next set of paginated results. You don't
1398
+ # need to supply a value for this field in the initial request.
1399
+ #
1400
+ # @option params [Integer] :max_results
1401
+ # The maximum number of results to return per each request.
1402
+ #
1403
+ # @return [Types::DescribeKeywordsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1404
+ #
1405
+ # * {Types::DescribeKeywordsResult#origination_identity_arn #origination_identity_arn} => String
1406
+ # * {Types::DescribeKeywordsResult#origination_identity #origination_identity} => String
1407
+ # * {Types::DescribeKeywordsResult#keywords #keywords} => Array&lt;Types::KeywordInformation&gt;
1408
+ # * {Types::DescribeKeywordsResult#next_token #next_token} => String
1409
+ #
1410
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1411
+ #
1412
+ # @example Request syntax with placeholder values
1413
+ #
1414
+ # resp = client.describe_keywords({
1415
+ # origination_identity: "PhoneOrPoolIdOrArn", # required
1416
+ # keywords: ["Keyword"],
1417
+ # filters: [
1418
+ # {
1419
+ # name: "keyword-action", # required, accepts keyword-action
1420
+ # values: ["FilterValue"], # required
1421
+ # },
1422
+ # ],
1423
+ # next_token: "NextToken",
1424
+ # max_results: 1,
1425
+ # })
1426
+ #
1427
+ # @example Response structure
1428
+ #
1429
+ # resp.origination_identity_arn #=> String
1430
+ # resp.origination_identity #=> String
1431
+ # resp.keywords #=> Array
1432
+ # resp.keywords[0].keyword #=> String
1433
+ # resp.keywords[0].keyword_message #=> String
1434
+ # resp.keywords[0].keyword_action #=> String, one of "AUTOMATIC_RESPONSE", "OPT_OUT", "OPT_IN"
1435
+ # resp.next_token #=> String
1436
+ #
1437
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeKeywords AWS API Documentation
1438
+ #
1439
+ # @overload describe_keywords(params = {})
1440
+ # @param [Hash] params ({})
1441
+ def describe_keywords(params = {}, options = {})
1442
+ req = build_request(:describe_keywords, params)
1443
+ req.send_request(options)
1444
+ end
1445
+
1446
+ # Describes the specified opt-out list or all opt-out lists in your
1447
+ # account.
1448
+ #
1449
+ # If you specify opt-out list names, the output includes information for
1450
+ # only the specified opt-out lists. Opt-out lists include only those
1451
+ # that meet the filter criteria. If you don't specify opt-out list
1452
+ # names or filters, the output includes information for all opt-out
1453
+ # lists.
1454
+ #
1455
+ # If you specify an opt-out list name that isn't valid, an Error is
1456
+ # returned.
1457
+ #
1458
+ # @option params [Array<String>] :opt_out_list_names
1459
+ # The OptOutLists to show the details of. This is an array of strings
1460
+ # that can be either the OptOutListName or OptOutListArn.
1461
+ #
1462
+ # @option params [String] :next_token
1463
+ # The token to be used for the next set of paginated results. You don't
1464
+ # need to supply a value for this field in the initial request.
1465
+ #
1466
+ # @option params [Integer] :max_results
1467
+ # The maximum number of results to return per each request.
1468
+ #
1469
+ # @return [Types::DescribeOptOutListsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1470
+ #
1471
+ # * {Types::DescribeOptOutListsResult#opt_out_lists #opt_out_lists} => Array&lt;Types::OptOutListInformation&gt;
1472
+ # * {Types::DescribeOptOutListsResult#next_token #next_token} => String
1473
+ #
1474
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1475
+ #
1476
+ # @example Request syntax with placeholder values
1477
+ #
1478
+ # resp = client.describe_opt_out_lists({
1479
+ # opt_out_list_names: ["OptOutListNameOrArn"],
1480
+ # next_token: "NextToken",
1481
+ # max_results: 1,
1482
+ # })
1483
+ #
1484
+ # @example Response structure
1485
+ #
1486
+ # resp.opt_out_lists #=> Array
1487
+ # resp.opt_out_lists[0].opt_out_list_arn #=> String
1488
+ # resp.opt_out_lists[0].opt_out_list_name #=> String
1489
+ # resp.opt_out_lists[0].created_timestamp #=> Time
1490
+ # resp.next_token #=> String
1491
+ #
1492
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeOptOutLists AWS API Documentation
1493
+ #
1494
+ # @overload describe_opt_out_lists(params = {})
1495
+ # @param [Hash] params ({})
1496
+ def describe_opt_out_lists(params = {}, options = {})
1497
+ req = build_request(:describe_opt_out_lists, params)
1498
+ req.send_request(options)
1499
+ end
1500
+
1501
+ # Describes the specified opted out destination numbers or all opted out
1502
+ # destination numbers in an opt-out list.
1503
+ #
1504
+ # If you specify opted out numbers, the output includes information for
1505
+ # only the specified opted out numbers. If you specify filters, the
1506
+ # output includes information for only those opted out numbers that meet
1507
+ # the filter criteria. If you don't specify opted out numbers or
1508
+ # filters, the output includes information for all opted out destination
1509
+ # numbers in your opt-out list.
1510
+ #
1511
+ # If you specify an opted out number that isn't valid, an Error is
1512
+ # returned.
1513
+ #
1514
+ # @option params [required, String] :opt_out_list_name
1515
+ # The OptOutListName or OptOutListArn of the OptOutList. You can use
1516
+ # DescribeOptOutLists to find the values for OptOutListName and
1517
+ # OptOutListArn.
1518
+ #
1519
+ # @option params [Array<String>] :opted_out_numbers
1520
+ # An array of phone numbers to search for in the OptOutList.
1521
+ #
1522
+ # @option params [Array<Types::OptedOutFilter>] :filters
1523
+ # An array of OptedOutFilter objects to filter the results on.
1524
+ #
1525
+ # @option params [String] :next_token
1526
+ # The token to be used for the next set of paginated results. You don't
1527
+ # need to supply a value for this field in the initial request.
1528
+ #
1529
+ # @option params [Integer] :max_results
1530
+ # The maximum number of results to return per each request.
1531
+ #
1532
+ # @return [Types::DescribeOptedOutNumbersResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1533
+ #
1534
+ # * {Types::DescribeOptedOutNumbersResult#opt_out_list_arn #opt_out_list_arn} => String
1535
+ # * {Types::DescribeOptedOutNumbersResult#opt_out_list_name #opt_out_list_name} => String
1536
+ # * {Types::DescribeOptedOutNumbersResult#opted_out_numbers #opted_out_numbers} => Array&lt;Types::OptedOutNumberInformation&gt;
1537
+ # * {Types::DescribeOptedOutNumbersResult#next_token #next_token} => String
1538
+ #
1539
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1540
+ #
1541
+ # @example Request syntax with placeholder values
1542
+ #
1543
+ # resp = client.describe_opted_out_numbers({
1544
+ # opt_out_list_name: "OptOutListNameOrArn", # required
1545
+ # opted_out_numbers: ["PhoneNumber"],
1546
+ # filters: [
1547
+ # {
1548
+ # name: "end-user-opted-out", # required, accepts end-user-opted-out
1549
+ # values: ["FilterValue"], # required
1550
+ # },
1551
+ # ],
1552
+ # next_token: "NextToken",
1553
+ # max_results: 1,
1554
+ # })
1555
+ #
1556
+ # @example Response structure
1557
+ #
1558
+ # resp.opt_out_list_arn #=> String
1559
+ # resp.opt_out_list_name #=> String
1560
+ # resp.opted_out_numbers #=> Array
1561
+ # resp.opted_out_numbers[0].opted_out_number #=> String
1562
+ # resp.opted_out_numbers[0].opted_out_timestamp #=> Time
1563
+ # resp.opted_out_numbers[0].end_user_opted_out #=> Boolean
1564
+ # resp.next_token #=> String
1565
+ #
1566
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeOptedOutNumbers AWS API Documentation
1567
+ #
1568
+ # @overload describe_opted_out_numbers(params = {})
1569
+ # @param [Hash] params ({})
1570
+ def describe_opted_out_numbers(params = {}, options = {})
1571
+ req = build_request(:describe_opted_out_numbers, params)
1572
+ req.send_request(options)
1573
+ end
1574
+
1575
+ # Describes the specified origination phone number, or all the phone
1576
+ # numbers in your account.
1577
+ #
1578
+ # If you specify phone number IDs, the output includes information for
1579
+ # only the specified phone numbers. If you specify filters, the output
1580
+ # includes information for only those phone numbers that meet the filter
1581
+ # criteria. If you don't specify phone number IDs or filters, the
1582
+ # output includes information for all phone numbers.
1583
+ #
1584
+ # If you specify a phone number ID that isn't valid, an Error is
1585
+ # returned.
1586
+ #
1587
+ # @option params [Array<String>] :phone_number_ids
1588
+ # The unique identifier of phone numbers to find information about. This
1589
+ # is an array of strings that can be either the PhoneNumberId or
1590
+ # PhoneNumberArn.
1591
+ #
1592
+ # @option params [Array<Types::PhoneNumberFilter>] :filters
1593
+ # An array of PhoneNumberFilter objects to filter the results.
1594
+ #
1595
+ # @option params [String] :next_token
1596
+ # The token to be used for the next set of paginated results. You don't
1597
+ # need to supply a value for this field in the initial request.
1598
+ #
1599
+ # @option params [Integer] :max_results
1600
+ # The maximum number of results to return per each request.
1601
+ #
1602
+ # @return [Types::DescribePhoneNumbersResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1603
+ #
1604
+ # * {Types::DescribePhoneNumbersResult#phone_numbers #phone_numbers} => Array&lt;Types::PhoneNumberInformation&gt;
1605
+ # * {Types::DescribePhoneNumbersResult#next_token #next_token} => String
1606
+ #
1607
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1608
+ #
1609
+ # @example Request syntax with placeholder values
1610
+ #
1611
+ # resp = client.describe_phone_numbers({
1612
+ # phone_number_ids: ["PhoneNumberIdOrArn"],
1613
+ # filters: [
1614
+ # {
1615
+ # name: "status", # required, accepts status, iso-country-code, message-type, number-capability, number-type, two-way-enabled, self-managed-opt-outs-enabled, opt-out-list-name, deletion-protection-enabled
1616
+ # values: ["FilterValue"], # required
1617
+ # },
1618
+ # ],
1619
+ # next_token: "NextToken",
1620
+ # max_results: 1,
1621
+ # })
1622
+ #
1623
+ # @example Response structure
1624
+ #
1625
+ # resp.phone_numbers #=> Array
1626
+ # resp.phone_numbers[0].phone_number_arn #=> String
1627
+ # resp.phone_numbers[0].phone_number_id #=> String
1628
+ # resp.phone_numbers[0].phone_number #=> String
1629
+ # resp.phone_numbers[0].status #=> String, one of "PENDING", "ACTIVE", "ASSOCIATING", "DISASSOCIATING", "DELETED"
1630
+ # resp.phone_numbers[0].iso_country_code #=> String
1631
+ # resp.phone_numbers[0].message_type #=> String, one of "TRANSACTIONAL", "PROMOTIONAL"
1632
+ # resp.phone_numbers[0].number_capabilities #=> Array
1633
+ # resp.phone_numbers[0].number_capabilities[0] #=> String, one of "SMS", "VOICE"
1634
+ # resp.phone_numbers[0].number_type #=> String, one of "SHORT_CODE", "LONG_CODE", "TOLL_FREE", "TEN_DLC"
1635
+ # resp.phone_numbers[0].monthly_leasing_price #=> String
1636
+ # resp.phone_numbers[0].two_way_enabled #=> Boolean
1637
+ # resp.phone_numbers[0].two_way_channel_arn #=> String
1638
+ # resp.phone_numbers[0].self_managed_opt_outs_enabled #=> Boolean
1639
+ # resp.phone_numbers[0].opt_out_list_name #=> String
1640
+ # resp.phone_numbers[0].deletion_protection_enabled #=> Boolean
1641
+ # resp.phone_numbers[0].pool_id #=> String
1642
+ # resp.phone_numbers[0].created_timestamp #=> Time
1643
+ # resp.next_token #=> String
1644
+ #
1645
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribePhoneNumbers AWS API Documentation
1646
+ #
1647
+ # @overload describe_phone_numbers(params = {})
1648
+ # @param [Hash] params ({})
1649
+ def describe_phone_numbers(params = {}, options = {})
1650
+ req = build_request(:describe_phone_numbers, params)
1651
+ req.send_request(options)
1652
+ end
1653
+
1654
+ # Retrieves the specified pools or all pools associated with your Amazon
1655
+ # Web Services account.
1656
+ #
1657
+ # If you specify pool IDs, the output includes information for only the
1658
+ # specified pools. If you specify filters, the output includes
1659
+ # information for only those pools that meet the filter criteria. If you
1660
+ # don't specify pool IDs or filters, the output includes information
1661
+ # for all pools.
1662
+ #
1663
+ # If you specify a pool ID that isn't valid, an Error is returned.
1664
+ #
1665
+ # A pool is a collection of phone numbers and SenderIds. A pool can
1666
+ # include one or more phone numbers and SenderIds that are associated
1667
+ # with your Amazon Web Services account.
1668
+ #
1669
+ # @option params [Array<String>] :pool_ids
1670
+ # The unique identifier of pools to find. This is an array of strings
1671
+ # that can be either the PoolId or PoolArn.
1672
+ #
1673
+ # @option params [Array<Types::PoolFilter>] :filters
1674
+ # An array of PoolFilter objects to filter the results.
1675
+ #
1676
+ # @option params [String] :next_token
1677
+ # The token to be used for the next set of paginated results. You don't
1678
+ # need to supply a value for this field in the initial request.
1679
+ #
1680
+ # @option params [Integer] :max_results
1681
+ # The maximum number of results to return per each request.
1682
+ #
1683
+ # @return [Types::DescribePoolsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1684
+ #
1685
+ # * {Types::DescribePoolsResult#pools #pools} => Array&lt;Types::PoolInformation&gt;
1686
+ # * {Types::DescribePoolsResult#next_token #next_token} => String
1687
+ #
1688
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1689
+ #
1690
+ # @example Request syntax with placeholder values
1691
+ #
1692
+ # resp = client.describe_pools({
1693
+ # pool_ids: ["PoolIdOrArn"],
1694
+ # filters: [
1695
+ # {
1696
+ # name: "status", # required, accepts status, message-type, two-way-enabled, self-managed-opt-outs-enabled, opt-out-list-name, shared-routes-enabled, deletion-protection-enabled
1697
+ # values: ["FilterValue"], # required
1698
+ # },
1699
+ # ],
1700
+ # next_token: "NextToken",
1701
+ # max_results: 1,
1702
+ # })
1703
+ #
1704
+ # @example Response structure
1705
+ #
1706
+ # resp.pools #=> Array
1707
+ # resp.pools[0].pool_arn #=> String
1708
+ # resp.pools[0].pool_id #=> String
1709
+ # resp.pools[0].status #=> String, one of "CREATING", "ACTIVE", "DELETING"
1710
+ # resp.pools[0].message_type #=> String, one of "TRANSACTIONAL", "PROMOTIONAL"
1711
+ # resp.pools[0].two_way_enabled #=> Boolean
1712
+ # resp.pools[0].two_way_channel_arn #=> String
1713
+ # resp.pools[0].self_managed_opt_outs_enabled #=> Boolean
1714
+ # resp.pools[0].opt_out_list_name #=> String
1715
+ # resp.pools[0].shared_routes_enabled #=> Boolean
1716
+ # resp.pools[0].deletion_protection_enabled #=> Boolean
1717
+ # resp.pools[0].created_timestamp #=> Time
1718
+ # resp.next_token #=> String
1719
+ #
1720
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribePools AWS API Documentation
1721
+ #
1722
+ # @overload describe_pools(params = {})
1723
+ # @param [Hash] params ({})
1724
+ def describe_pools(params = {}, options = {})
1725
+ req = build_request(:describe_pools, params)
1726
+ req.send_request(options)
1727
+ end
1728
+
1729
+ # Describes the specified SenderIds or all SenderIds associated with
1730
+ # your Amazon Web Services account.
1731
+ #
1732
+ # If you specify SenderIds, the output includes information for only the
1733
+ # specified SenderIds. If you specify filters, the output includes
1734
+ # information for only those SenderIds that meet the filter criteria. If
1735
+ # you don't specify SenderIds or filters, the output includes
1736
+ # information for all SenderIds.
1737
+ #
1738
+ # f you specify a sender ID that isn't valid, an Error is returned.
1739
+ #
1740
+ # @option params [Array<Types::SenderIdAndCountry>] :sender_ids
1741
+ # An array of SenderIdAndCountry objects to search for.
1742
+ #
1743
+ # @option params [Array<Types::SenderIdFilter>] :filters
1744
+ # An array of SenderIdFilter objects to filter the results.
1745
+ #
1746
+ # @option params [String] :next_token
1747
+ # The token to be used for the next set of paginated results. You don't
1748
+ # need to supply a value for this field in the initial request.
1749
+ #
1750
+ # @option params [Integer] :max_results
1751
+ # The maximum number of results to return per each request.
1752
+ #
1753
+ # @return [Types::DescribeSenderIdsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1754
+ #
1755
+ # * {Types::DescribeSenderIdsResult#sender_ids #sender_ids} => Array&lt;Types::SenderIdInformation&gt;
1756
+ # * {Types::DescribeSenderIdsResult#next_token #next_token} => String
1757
+ #
1758
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1759
+ #
1760
+ # @example Request syntax with placeholder values
1761
+ #
1762
+ # resp = client.describe_sender_ids({
1763
+ # sender_ids: [
1764
+ # {
1765
+ # sender_id: "SenderIdOrArn", # required
1766
+ # iso_country_code: "IsoCountryCode", # required
1767
+ # },
1768
+ # ],
1769
+ # filters: [
1770
+ # {
1771
+ # name: "sender-id", # required, accepts sender-id, iso-country-code, message-type
1772
+ # values: ["FilterValue"], # required
1773
+ # },
1774
+ # ],
1775
+ # next_token: "NextToken",
1776
+ # max_results: 1,
1777
+ # })
1778
+ #
1779
+ # @example Response structure
1780
+ #
1781
+ # resp.sender_ids #=> Array
1782
+ # resp.sender_ids[0].sender_id_arn #=> String
1783
+ # resp.sender_ids[0].sender_id #=> String
1784
+ # resp.sender_ids[0].iso_country_code #=> String
1785
+ # resp.sender_ids[0].message_types #=> Array
1786
+ # resp.sender_ids[0].message_types[0] #=> String, one of "TRANSACTIONAL", "PROMOTIONAL"
1787
+ # resp.sender_ids[0].monthly_leasing_price #=> String
1788
+ # resp.next_token #=> String
1789
+ #
1790
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeSenderIds AWS API Documentation
1791
+ #
1792
+ # @overload describe_sender_ids(params = {})
1793
+ # @param [Hash] params ({})
1794
+ def describe_sender_ids(params = {}, options = {})
1795
+ req = build_request(:describe_sender_ids, params)
1796
+ req.send_request(options)
1797
+ end
1798
+
1799
+ # Describes the current Amazon Pinpoint monthly spend limits for sending
1800
+ # voice and text messages.
1801
+ #
1802
+ # When you establish an Amazon Web Services account, the account has
1803
+ # initial monthly spend limit in a given Region. For more information on
1804
+ # increasing your monthly spend limit, see [ Requesting increases to
1805
+ # your monthly SMS spending quota for Amazon Pinpoint ][1] in the
1806
+ # *Amazon Pinpoint User Guide*.
1807
+ #
1808
+ #
1809
+ #
1810
+ # [1]: https://docs.aws.amazon.com/pinpoint/latest/userguide/channels-sms-awssupport-spend-threshold.html
1811
+ #
1812
+ # @option params [String] :next_token
1813
+ # The token to be used for the next set of paginated results. You don't
1814
+ # need to supply a value for this field in the initial request.
1815
+ #
1816
+ # @option params [Integer] :max_results
1817
+ # The maximum number of results to return per each request.
1818
+ #
1819
+ # @return [Types::DescribeSpendLimitsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1820
+ #
1821
+ # * {Types::DescribeSpendLimitsResult#spend_limits #spend_limits} => Array&lt;Types::SpendLimit&gt;
1822
+ # * {Types::DescribeSpendLimitsResult#next_token #next_token} => String
1823
+ #
1824
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1825
+ #
1826
+ # @example Request syntax with placeholder values
1827
+ #
1828
+ # resp = client.describe_spend_limits({
1829
+ # next_token: "NextToken",
1830
+ # max_results: 1,
1831
+ # })
1832
+ #
1833
+ # @example Response structure
1834
+ #
1835
+ # resp.spend_limits #=> Array
1836
+ # resp.spend_limits[0].name #=> String, one of "TEXT_MESSAGE_MONTHLY_SPEND_LIMIT", "VOICE_MESSAGE_MONTHLY_SPEND_LIMIT"
1837
+ # resp.spend_limits[0].enforced_limit #=> Integer
1838
+ # resp.spend_limits[0].max_limit #=> Integer
1839
+ # resp.spend_limits[0].overridden #=> Boolean
1840
+ # resp.next_token #=> String
1841
+ #
1842
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DescribeSpendLimits AWS API Documentation
1843
+ #
1844
+ # @overload describe_spend_limits(params = {})
1845
+ # @param [Hash] params ({})
1846
+ def describe_spend_limits(params = {}, options = {})
1847
+ req = build_request(:describe_spend_limits, params)
1848
+ req.send_request(options)
1849
+ end
1850
+
1851
+ # Removes the specified origination identity from an existing pool.
1852
+ #
1853
+ # If the origination identity isn't associated with the specified pool,
1854
+ # an Error is returned.
1855
+ #
1856
+ # @option params [required, String] :pool_id
1857
+ # The unique identifier for the pool to disassociate with the
1858
+ # origination identity. This value can be either the PoolId or PoolArn.
1859
+ #
1860
+ # @option params [required, String] :origination_identity
1861
+ # The origination identity to use such as a PhoneNumberId,
1862
+ # PhoneNumberArn, SenderId or SenderIdArn. You can use
1863
+ # DescribePhoneNumbers find the values for PhoneNumberId and
1864
+ # PhoneNumberArn, or use DescribeSenderIds to get the values for
1865
+ # SenderId and SenderIdArn.
1866
+ #
1867
+ # @option params [required, String] :iso_country_code
1868
+ # The two-character code, in ISO 3166-1 alpha-2 format, for the country
1869
+ # or region.
1870
+ #
1871
+ # @option params [String] :client_token
1872
+ # Unique, case-sensitive identifier you provide to ensure the
1873
+ # idempotency of the request. If you don't specify a client token, a
1874
+ # randomly generated token is used for the request to ensure
1875
+ # idempotency.
1876
+ #
1877
+ # **A suitable default value is auto-generated.** You should normally
1878
+ # not need to pass this option.**
1879
+ #
1880
+ # @return [Types::DisassociateOriginationIdentityResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1881
+ #
1882
+ # * {Types::DisassociateOriginationIdentityResult#pool_arn #pool_arn} => String
1883
+ # * {Types::DisassociateOriginationIdentityResult#pool_id #pool_id} => String
1884
+ # * {Types::DisassociateOriginationIdentityResult#origination_identity_arn #origination_identity_arn} => String
1885
+ # * {Types::DisassociateOriginationIdentityResult#origination_identity #origination_identity} => String
1886
+ # * {Types::DisassociateOriginationIdentityResult#iso_country_code #iso_country_code} => String
1887
+ #
1888
+ # @example Request syntax with placeholder values
1889
+ #
1890
+ # resp = client.disassociate_origination_identity({
1891
+ # pool_id: "PoolIdOrArn", # required
1892
+ # origination_identity: "PhoneOrSenderIdOrArn", # required
1893
+ # iso_country_code: "IsoCountryCode", # required
1894
+ # client_token: "ClientToken",
1895
+ # })
1896
+ #
1897
+ # @example Response structure
1898
+ #
1899
+ # resp.pool_arn #=> String
1900
+ # resp.pool_id #=> String
1901
+ # resp.origination_identity_arn #=> String
1902
+ # resp.origination_identity #=> String
1903
+ # resp.iso_country_code #=> String
1904
+ #
1905
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/DisassociateOriginationIdentity AWS API Documentation
1906
+ #
1907
+ # @overload disassociate_origination_identity(params = {})
1908
+ # @param [Hash] params ({})
1909
+ def disassociate_origination_identity(params = {}, options = {})
1910
+ req = build_request(:disassociate_origination_identity, params)
1911
+ req.send_request(options)
1912
+ end
1913
+
1914
+ # Lists all associated origination identities in your pool.
1915
+ #
1916
+ # If you specify filters, the output includes information for only those
1917
+ # origination identities that meet the filter criteria.
1918
+ #
1919
+ # @option params [required, String] :pool_id
1920
+ # The unique identifier for the pool. This value can be either the
1921
+ # PoolId or PoolArn.
1922
+ #
1923
+ # @option params [Array<Types::PoolOriginationIdentitiesFilter>] :filters
1924
+ # An array of PoolOriginationIdentitiesFilter objects to filter the
1925
+ # results..
1926
+ #
1927
+ # @option params [String] :next_token
1928
+ # The token to be used for the next set of paginated results. You don't
1929
+ # need to supply a value for this field in the initial request.
1930
+ #
1931
+ # @option params [Integer] :max_results
1932
+ # The maximum number of results to return per each request.
1933
+ #
1934
+ # @return [Types::ListPoolOriginationIdentitiesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1935
+ #
1936
+ # * {Types::ListPoolOriginationIdentitiesResult#pool_arn #pool_arn} => String
1937
+ # * {Types::ListPoolOriginationIdentitiesResult#pool_id #pool_id} => String
1938
+ # * {Types::ListPoolOriginationIdentitiesResult#origination_identities #origination_identities} => Array&lt;Types::OriginationIdentityMetadata&gt;
1939
+ # * {Types::ListPoolOriginationIdentitiesResult#next_token #next_token} => String
1940
+ #
1941
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1942
+ #
1943
+ # @example Request syntax with placeholder values
1944
+ #
1945
+ # resp = client.list_pool_origination_identities({
1946
+ # pool_id: "PoolIdOrArn", # required
1947
+ # filters: [
1948
+ # {
1949
+ # name: "iso-country-code", # required, accepts iso-country-code, number-capability
1950
+ # values: ["FilterValue"], # required
1951
+ # },
1952
+ # ],
1953
+ # next_token: "NextToken",
1954
+ # max_results: 1,
1955
+ # })
1956
+ #
1957
+ # @example Response structure
1958
+ #
1959
+ # resp.pool_arn #=> String
1960
+ # resp.pool_id #=> String
1961
+ # resp.origination_identities #=> Array
1962
+ # resp.origination_identities[0].origination_identity_arn #=> String
1963
+ # resp.origination_identities[0].origination_identity #=> String
1964
+ # resp.origination_identities[0].iso_country_code #=> String
1965
+ # resp.origination_identities[0].number_capabilities #=> Array
1966
+ # resp.origination_identities[0].number_capabilities[0] #=> String, one of "SMS", "VOICE"
1967
+ # resp.next_token #=> String
1968
+ #
1969
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/ListPoolOriginationIdentities AWS API Documentation
1970
+ #
1971
+ # @overload list_pool_origination_identities(params = {})
1972
+ # @param [Hash] params ({})
1973
+ def list_pool_origination_identities(params = {}, options = {})
1974
+ req = build_request(:list_pool_origination_identities, params)
1975
+ req.send_request(options)
1976
+ end
1977
+
1978
+ # List all tags associated with a resource.
1979
+ #
1980
+ # @option params [required, String] :resource_arn
1981
+ # The Amazon Resource Name (ARN) of the resource to query for.
1982
+ #
1983
+ # @return [Types::ListTagsForResourceResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1984
+ #
1985
+ # * {Types::ListTagsForResourceResult#resource_arn #resource_arn} => String
1986
+ # * {Types::ListTagsForResourceResult#tags #tags} => Array&lt;Types::Tag&gt;
1987
+ #
1988
+ # @example Request syntax with placeholder values
1989
+ #
1990
+ # resp = client.list_tags_for_resource({
1991
+ # resource_arn: "AmazonResourceName", # required
1992
+ # })
1993
+ #
1994
+ # @example Response structure
1995
+ #
1996
+ # resp.resource_arn #=> String
1997
+ # resp.tags #=> Array
1998
+ # resp.tags[0].key #=> String
1999
+ # resp.tags[0].value #=> String
2000
+ #
2001
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/ListTagsForResource AWS API Documentation
2002
+ #
2003
+ # @overload list_tags_for_resource(params = {})
2004
+ # @param [Hash] params ({})
2005
+ def list_tags_for_resource(params = {}, options = {})
2006
+ req = build_request(:list_tags_for_resource, params)
2007
+ req.send_request(options)
2008
+ end
2009
+
2010
+ # Creates or updates a keyword configuration on an origination phone
2011
+ # number or pool.
2012
+ #
2013
+ # A keyword is a word that you can search for on a particular phone
2014
+ # number or pool. It is also a specific word or phrase that an end user
2015
+ # can send to your number to elicit a response, such as an informational
2016
+ # message or a special offer. When your number receives a message that
2017
+ # begins with a keyword, Amazon Pinpoint responds with a customizable
2018
+ # message.
2019
+ #
2020
+ # If you specify a keyword that isn't valid, an Error is returned.
2021
+ #
2022
+ # @option params [required, String] :origination_identity
2023
+ # The origination identity to use such as a PhoneNumberId,
2024
+ # PhoneNumberArn, SenderId or SenderIdArn. You can use
2025
+ # DescribePhoneNumbers get the values for PhoneNumberId and
2026
+ # PhoneNumberArn while DescribeSenderIds can be used to get the values
2027
+ # for SenderId and SenderIdArn.
2028
+ #
2029
+ # @option params [required, String] :keyword
2030
+ # The new keyword to add.
2031
+ #
2032
+ # @option params [required, String] :keyword_message
2033
+ # The message associated with the keyword.
2034
+ #
2035
+ # * AUTOMATIC\_RESPONSE: A message is sent to the recipient.
2036
+ #
2037
+ # * OPT\_OUT: Keeps the recipient from receiving future messages.
2038
+ #
2039
+ # * OPT\_IN: The recipient wants to receive future messages.
2040
+ #
2041
+ # @option params [String] :keyword_action
2042
+ # The action to perform for the new keyword when it is received.
2043
+ #
2044
+ # @return [Types::PutKeywordResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2045
+ #
2046
+ # * {Types::PutKeywordResult#origination_identity_arn #origination_identity_arn} => String
2047
+ # * {Types::PutKeywordResult#origination_identity #origination_identity} => String
2048
+ # * {Types::PutKeywordResult#keyword #keyword} => String
2049
+ # * {Types::PutKeywordResult#keyword_message #keyword_message} => String
2050
+ # * {Types::PutKeywordResult#keyword_action #keyword_action} => String
2051
+ #
2052
+ # @example Request syntax with placeholder values
2053
+ #
2054
+ # resp = client.put_keyword({
2055
+ # origination_identity: "PhoneOrPoolIdOrArn", # required
2056
+ # keyword: "Keyword", # required
2057
+ # keyword_message: "KeywordMessage", # required
2058
+ # keyword_action: "AUTOMATIC_RESPONSE", # accepts AUTOMATIC_RESPONSE, OPT_OUT, OPT_IN
2059
+ # })
2060
+ #
2061
+ # @example Response structure
2062
+ #
2063
+ # resp.origination_identity_arn #=> String
2064
+ # resp.origination_identity #=> String
2065
+ # resp.keyword #=> String
2066
+ # resp.keyword_message #=> String
2067
+ # resp.keyword_action #=> String, one of "AUTOMATIC_RESPONSE", "OPT_OUT", "OPT_IN"
2068
+ #
2069
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/PutKeyword AWS API Documentation
2070
+ #
2071
+ # @overload put_keyword(params = {})
2072
+ # @param [Hash] params ({})
2073
+ def put_keyword(params = {}, options = {})
2074
+ req = build_request(:put_keyword, params)
2075
+ req.send_request(options)
2076
+ end
2077
+
2078
+ # Creates an opted out destination phone number in the opt-out list.
2079
+ #
2080
+ # If the destination phone number isn't valid or if the specified
2081
+ # opt-out list doesn't exist, an Error is returned.
2082
+ #
2083
+ # @option params [required, String] :opt_out_list_name
2084
+ # The OptOutListName or OptOutListArn to add the phone number to.
2085
+ #
2086
+ # @option params [required, String] :opted_out_number
2087
+ # The phone number to add to the OptOutList in E.164 format.
2088
+ #
2089
+ # @return [Types::PutOptedOutNumberResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2090
+ #
2091
+ # * {Types::PutOptedOutNumberResult#opt_out_list_arn #opt_out_list_arn} => String
2092
+ # * {Types::PutOptedOutNumberResult#opt_out_list_name #opt_out_list_name} => String
2093
+ # * {Types::PutOptedOutNumberResult#opted_out_number #opted_out_number} => String
2094
+ # * {Types::PutOptedOutNumberResult#opted_out_timestamp #opted_out_timestamp} => Time
2095
+ # * {Types::PutOptedOutNumberResult#end_user_opted_out #end_user_opted_out} => Boolean
2096
+ #
2097
+ # @example Request syntax with placeholder values
2098
+ #
2099
+ # resp = client.put_opted_out_number({
2100
+ # opt_out_list_name: "OptOutListNameOrArn", # required
2101
+ # opted_out_number: "PhoneNumber", # required
2102
+ # })
2103
+ #
2104
+ # @example Response structure
2105
+ #
2106
+ # resp.opt_out_list_arn #=> String
2107
+ # resp.opt_out_list_name #=> String
2108
+ # resp.opted_out_number #=> String
2109
+ # resp.opted_out_timestamp #=> Time
2110
+ # resp.end_user_opted_out #=> Boolean
2111
+ #
2112
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/PutOptedOutNumber AWS API Documentation
2113
+ #
2114
+ # @overload put_opted_out_number(params = {})
2115
+ # @param [Hash] params ({})
2116
+ def put_opted_out_number(params = {}, options = {})
2117
+ req = build_request(:put_opted_out_number, params)
2118
+ req.send_request(options)
2119
+ end
2120
+
2121
+ # Releases an existing origination phone number in your account. Once
2122
+ # released, a phone number is no longer available for sending messages.
2123
+ #
2124
+ # If the origination phone number has deletion protection enabled or is
2125
+ # associated with a pool, an Error is returned.
2126
+ #
2127
+ # @option params [required, String] :phone_number_id
2128
+ # The PhoneNumberId or PhoneNumberArn of the phone number to release.
2129
+ # You can use DescribePhoneNumbers to get the values for PhoneNumberId
2130
+ # and PhoneNumberArn.
2131
+ #
2132
+ # @return [Types::ReleasePhoneNumberResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2133
+ #
2134
+ # * {Types::ReleasePhoneNumberResult#phone_number_arn #phone_number_arn} => String
2135
+ # * {Types::ReleasePhoneNumberResult#phone_number_id #phone_number_id} => String
2136
+ # * {Types::ReleasePhoneNumberResult#phone_number #phone_number} => String
2137
+ # * {Types::ReleasePhoneNumberResult#status #status} => String
2138
+ # * {Types::ReleasePhoneNumberResult#iso_country_code #iso_country_code} => String
2139
+ # * {Types::ReleasePhoneNumberResult#message_type #message_type} => String
2140
+ # * {Types::ReleasePhoneNumberResult#number_capabilities #number_capabilities} => Array&lt;String&gt;
2141
+ # * {Types::ReleasePhoneNumberResult#number_type #number_type} => String
2142
+ # * {Types::ReleasePhoneNumberResult#monthly_leasing_price #monthly_leasing_price} => String
2143
+ # * {Types::ReleasePhoneNumberResult#two_way_enabled #two_way_enabled} => Boolean
2144
+ # * {Types::ReleasePhoneNumberResult#two_way_channel_arn #two_way_channel_arn} => String
2145
+ # * {Types::ReleasePhoneNumberResult#self_managed_opt_outs_enabled #self_managed_opt_outs_enabled} => Boolean
2146
+ # * {Types::ReleasePhoneNumberResult#opt_out_list_name #opt_out_list_name} => String
2147
+ # * {Types::ReleasePhoneNumberResult#created_timestamp #created_timestamp} => Time
2148
+ #
2149
+ # @example Request syntax with placeholder values
2150
+ #
2151
+ # resp = client.release_phone_number({
2152
+ # phone_number_id: "PhoneNumberIdOrArn", # required
2153
+ # })
2154
+ #
2155
+ # @example Response structure
2156
+ #
2157
+ # resp.phone_number_arn #=> String
2158
+ # resp.phone_number_id #=> String
2159
+ # resp.phone_number #=> String
2160
+ # resp.status #=> String, one of "PENDING", "ACTIVE", "ASSOCIATING", "DISASSOCIATING", "DELETED"
2161
+ # resp.iso_country_code #=> String
2162
+ # resp.message_type #=> String, one of "TRANSACTIONAL", "PROMOTIONAL"
2163
+ # resp.number_capabilities #=> Array
2164
+ # resp.number_capabilities[0] #=> String, one of "SMS", "VOICE"
2165
+ # resp.number_type #=> String, one of "SHORT_CODE", "LONG_CODE", "TOLL_FREE", "TEN_DLC"
2166
+ # resp.monthly_leasing_price #=> String
2167
+ # resp.two_way_enabled #=> Boolean
2168
+ # resp.two_way_channel_arn #=> String
2169
+ # resp.self_managed_opt_outs_enabled #=> Boolean
2170
+ # resp.opt_out_list_name #=> String
2171
+ # resp.created_timestamp #=> Time
2172
+ #
2173
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/ReleasePhoneNumber AWS API Documentation
2174
+ #
2175
+ # @overload release_phone_number(params = {})
2176
+ # @param [Hash] params ({})
2177
+ def release_phone_number(params = {}, options = {})
2178
+ req = build_request(:release_phone_number, params)
2179
+ req.send_request(options)
2180
+ end
2181
+
2182
+ # Request an origination phone number for use in your account. For more
2183
+ # information on phone number request see [ Requesting a number ][1] in
2184
+ # the *Amazon Pinpoint User Guide*.
2185
+ #
2186
+ #
2187
+ #
2188
+ # [1]: https://docs.aws.amazon.com/pinpoint/latest/userguide/settings-sms-request-number.html
2189
+ #
2190
+ # @option params [required, String] :iso_country_code
2191
+ # The two-character code, in ISO 3166-1 alpha-2 format, for the country
2192
+ # or region.
2193
+ #
2194
+ # @option params [required, String] :message_type
2195
+ # The type of message. Valid values are TRANSACTIONAL for messages that
2196
+ # are critical or time-sensitive and PROMOTIONAL for messages that
2197
+ # aren't critical or time-sensitive.
2198
+ #
2199
+ # @option params [required, Array<String>] :number_capabilities
2200
+ # Indicates if the phone number will be used for text messages, voice
2201
+ # messages, or both.
2202
+ #
2203
+ # @option params [required, String] :number_type
2204
+ # The type of phone number to request.
2205
+ #
2206
+ # @option params [String] :opt_out_list_name
2207
+ # The name of the OptOutList to associate with the phone number. You can
2208
+ # use the OutOutListName or OptPutListArn.
2209
+ #
2210
+ # @option params [String] :pool_id
2211
+ # The pool to associated with the phone number. You can use the PoolId
2212
+ # or PoolArn.
2213
+ #
2214
+ # @option params [String] :registration_id
2215
+ # Use this field to attach your phone number for an external
2216
+ # registration process.
2217
+ #
2218
+ # @option params [Boolean] :deletion_protection_enabled
2219
+ # By default this is set to false. When set to true the phone number
2220
+ # can't be deleted.
2221
+ #
2222
+ # @option params [Array<Types::Tag>] :tags
2223
+ # An array of tags (key and value pairs) associate with the requested
2224
+ # phone number.
2225
+ #
2226
+ # @option params [String] :client_token
2227
+ # Unique, case-sensitive identifier that you provide to ensure the
2228
+ # idempotency of the request. If you don't specify a client token, a
2229
+ # randomly generated token is used for the request to ensure
2230
+ # idempotency.
2231
+ #
2232
+ # **A suitable default value is auto-generated.** You should normally
2233
+ # not need to pass this option.**
2234
+ #
2235
+ # @return [Types::RequestPhoneNumberResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2236
+ #
2237
+ # * {Types::RequestPhoneNumberResult#phone_number_arn #phone_number_arn} => String
2238
+ # * {Types::RequestPhoneNumberResult#phone_number_id #phone_number_id} => String
2239
+ # * {Types::RequestPhoneNumberResult#phone_number #phone_number} => String
2240
+ # * {Types::RequestPhoneNumberResult#status #status} => String
2241
+ # * {Types::RequestPhoneNumberResult#iso_country_code #iso_country_code} => String
2242
+ # * {Types::RequestPhoneNumberResult#message_type #message_type} => String
2243
+ # * {Types::RequestPhoneNumberResult#number_capabilities #number_capabilities} => Array&lt;String&gt;
2244
+ # * {Types::RequestPhoneNumberResult#number_type #number_type} => String
2245
+ # * {Types::RequestPhoneNumberResult#monthly_leasing_price #monthly_leasing_price} => String
2246
+ # * {Types::RequestPhoneNumberResult#two_way_enabled #two_way_enabled} => Boolean
2247
+ # * {Types::RequestPhoneNumberResult#two_way_channel_arn #two_way_channel_arn} => String
2248
+ # * {Types::RequestPhoneNumberResult#self_managed_opt_outs_enabled #self_managed_opt_outs_enabled} => Boolean
2249
+ # * {Types::RequestPhoneNumberResult#opt_out_list_name #opt_out_list_name} => String
2250
+ # * {Types::RequestPhoneNumberResult#deletion_protection_enabled #deletion_protection_enabled} => Boolean
2251
+ # * {Types::RequestPhoneNumberResult#pool_id #pool_id} => String
2252
+ # * {Types::RequestPhoneNumberResult#tags #tags} => Array&lt;Types::Tag&gt;
2253
+ # * {Types::RequestPhoneNumberResult#created_timestamp #created_timestamp} => Time
2254
+ #
2255
+ # @example Request syntax with placeholder values
2256
+ #
2257
+ # resp = client.request_phone_number({
2258
+ # iso_country_code: "IsoCountryCode", # required
2259
+ # message_type: "TRANSACTIONAL", # required, accepts TRANSACTIONAL, PROMOTIONAL
2260
+ # number_capabilities: ["SMS"], # required, accepts SMS, VOICE
2261
+ # number_type: "LONG_CODE", # required, accepts LONG_CODE, TOLL_FREE, TEN_DLC
2262
+ # opt_out_list_name: "OptOutListNameOrArn",
2263
+ # pool_id: "PoolIdOrArn",
2264
+ # registration_id: "RegistrationId",
2265
+ # deletion_protection_enabled: false,
2266
+ # tags: [
2267
+ # {
2268
+ # key: "TagKey", # required
2269
+ # value: "TagValue", # required
2270
+ # },
2271
+ # ],
2272
+ # client_token: "ClientToken",
2273
+ # })
2274
+ #
2275
+ # @example Response structure
2276
+ #
2277
+ # resp.phone_number_arn #=> String
2278
+ # resp.phone_number_id #=> String
2279
+ # resp.phone_number #=> String
2280
+ # resp.status #=> String, one of "PENDING", "ACTIVE", "ASSOCIATING", "DISASSOCIATING", "DELETED"
2281
+ # resp.iso_country_code #=> String
2282
+ # resp.message_type #=> String, one of "TRANSACTIONAL", "PROMOTIONAL"
2283
+ # resp.number_capabilities #=> Array
2284
+ # resp.number_capabilities[0] #=> String, one of "SMS", "VOICE"
2285
+ # resp.number_type #=> String, one of "LONG_CODE", "TOLL_FREE", "TEN_DLC"
2286
+ # resp.monthly_leasing_price #=> String
2287
+ # resp.two_way_enabled #=> Boolean
2288
+ # resp.two_way_channel_arn #=> String
2289
+ # resp.self_managed_opt_outs_enabled #=> Boolean
2290
+ # resp.opt_out_list_name #=> String
2291
+ # resp.deletion_protection_enabled #=> Boolean
2292
+ # resp.pool_id #=> String
2293
+ # resp.tags #=> Array
2294
+ # resp.tags[0].key #=> String
2295
+ # resp.tags[0].value #=> String
2296
+ # resp.created_timestamp #=> Time
2297
+ #
2298
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/RequestPhoneNumber AWS API Documentation
2299
+ #
2300
+ # @overload request_phone_number(params = {})
2301
+ # @param [Hash] params ({})
2302
+ def request_phone_number(params = {}, options = {})
2303
+ req = build_request(:request_phone_number, params)
2304
+ req.send_request(options)
2305
+ end
2306
+
2307
+ # Creates a new text message and sends it to a recipient's phone
2308
+ # number.
2309
+ #
2310
+ # SMS throughput limits are measured in Message Parts per Second (MPS).
2311
+ # Your MPS limit depends on the destination country of your messages, as
2312
+ # well as the type of phone number (origination number) that you use to
2313
+ # send the message. For more information, see [Message Parts per Second
2314
+ # (MPS) limits][1] in the *Amazon Pinpoint User Guide*.
2315
+ #
2316
+ #
2317
+ #
2318
+ # [1]: https://docs.aws.amazon.com/pinpoint/latest/userguide/channels-sms-limitations-mps.html
2319
+ #
2320
+ # @option params [required, String] :destination_phone_number
2321
+ # The destination phone number in E.164 format.
2322
+ #
2323
+ # @option params [String] :origination_identity
2324
+ # The origination identity of the message. This can be either the
2325
+ # PhoneNumber, PhoneNumberId, PhoneNumberArn, SenderId, SenderIdArn,
2326
+ # PoolId, or PoolArn.
2327
+ #
2328
+ # @option params [String] :message_body
2329
+ # The body of the text message.
2330
+ #
2331
+ # @option params [String] :message_type
2332
+ # The type of message. Valid values are TRANSACTIONAL for messages that
2333
+ # are critical or time-sensitive and PROMOTIONAL for messages that
2334
+ # aren't critical or time-sensitive.
2335
+ #
2336
+ # @option params [String] :keyword
2337
+ # When you register a short code in the US, you must specify a program
2338
+ # name. If you don’t have a US short code, omit this attribute.
2339
+ #
2340
+ # @option params [String] :configuration_set_name
2341
+ # The name of the configuration set to use. This can be either the
2342
+ # ConfigurationSetName or ConfigurationSetArn.
2343
+ #
2344
+ # @option params [String] :max_price
2345
+ # The maximum amount that you want to spend, in US dollars, per each
2346
+ # text message part. A text message can contain multiple parts.
2347
+ #
2348
+ # @option params [Integer] :time_to_live
2349
+ # How long the text message is valid for. By default this is 72 hours.
2350
+ #
2351
+ # @option params [Hash<String,String>] :context
2352
+ # You can specify custom data in this field. If you do, that data is
2353
+ # logged to the event destination.
2354
+ #
2355
+ # @option params [Hash<String,String>] :destination_country_parameters
2356
+ # This field is used for any country-specific registration requirements.
2357
+ # Currently, this setting is only used when you send messages to
2358
+ # recipients in India using a sender ID. For more information see
2359
+ # [Special requirements for sending SMS messages to recipients in
2360
+ # India][1].
2361
+ #
2362
+ #
2363
+ #
2364
+ # [1]: https://docs.aws.amazon.com/pinpoint/latest/userguide/channels-sms-senderid-india.html
2365
+ #
2366
+ # @option params [Boolean] :dry_run
2367
+ # When set to true, the message is checked and validated, but isn't
2368
+ # sent to the end recipient.
2369
+ #
2370
+ # @return [Types::SendTextMessageResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2371
+ #
2372
+ # * {Types::SendTextMessageResult#message_id #message_id} => String
2373
+ #
2374
+ # @example Request syntax with placeholder values
2375
+ #
2376
+ # resp = client.send_text_message({
2377
+ # destination_phone_number: "PhoneNumber", # required
2378
+ # origination_identity: "TextMessageOriginationIdentity",
2379
+ # message_body: "TextMessageBody",
2380
+ # message_type: "TRANSACTIONAL", # accepts TRANSACTIONAL, PROMOTIONAL
2381
+ # keyword: "Keyword",
2382
+ # configuration_set_name: "ConfigurationSetNameOrArn",
2383
+ # max_price: "MaxPrice",
2384
+ # time_to_live: 1,
2385
+ # context: {
2386
+ # "ContextKey" => "ContextValue",
2387
+ # },
2388
+ # destination_country_parameters: {
2389
+ # "IN_TEMPLATE_ID" => "DestinationCountryParameterValue",
2390
+ # },
2391
+ # dry_run: false,
2392
+ # })
2393
+ #
2394
+ # @example Response structure
2395
+ #
2396
+ # resp.message_id #=> String
2397
+ #
2398
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/SendTextMessage AWS API Documentation
2399
+ #
2400
+ # @overload send_text_message(params = {})
2401
+ # @param [Hash] params ({})
2402
+ def send_text_message(params = {}, options = {})
2403
+ req = build_request(:send_text_message, params)
2404
+ req.send_request(options)
2405
+ end
2406
+
2407
+ # Allows you to send a request that sends a text message through Amazon
2408
+ # Pinpoint. This operation uses [Amazon Polly][1] to convert a text
2409
+ # script into a voice message.
2410
+ #
2411
+ #
2412
+ #
2413
+ # [1]: http://aws.amazon.com/polly/
2414
+ #
2415
+ # @option params [required, String] :destination_phone_number
2416
+ # The destination phone number in E.164 format.
2417
+ #
2418
+ # @option params [required, String] :origination_identity
2419
+ # The origination identity to use for the voice call. This can be the
2420
+ # PhoneNumber, PhoneNumberId, PhoneNumberArn, PoolId, or PoolArn.
2421
+ #
2422
+ # @option params [String] :message_body
2423
+ # The text to convert to a voice message.
2424
+ #
2425
+ # @option params [String] :message_body_text_type
2426
+ # Specifies if the MessageBody field contains text or [speech synthesis
2427
+ # markup language (SSML)][1].
2428
+ #
2429
+ # * TEXT: This is the default value. When used the maximum character
2430
+ # limit is 3000.
2431
+ #
2432
+ # * SSML: When used the maximum character limit is 6000 including SSML
2433
+ # tagging.
2434
+ #
2435
+ #
2436
+ #
2437
+ # [1]: https://docs.aws.amazon.com/polly/latest/dg/what-is.html
2438
+ #
2439
+ # @option params [String] :voice_id
2440
+ # The voice for the [Amazon Polly][1] service to use. By default this is
2441
+ # set to "MATTHEW".
2442
+ #
2443
+ #
2444
+ #
2445
+ # [1]: https://docs.aws.amazon.com/polly/latest/dg/what-is.html
2446
+ #
2447
+ # @option params [String] :configuration_set_name
2448
+ # The name of the configuration set to use. This can be either the
2449
+ # ConfigurationSetName or ConfigurationSetArn.
2450
+ #
2451
+ # @option params [String] :max_price_per_minute
2452
+ # The maximum amount to spend per voice message, in US dollars.
2453
+ #
2454
+ # @option params [Integer] :time_to_live
2455
+ # How long the voice message is valid for. By default this is 72 hours.
2456
+ #
2457
+ # @option params [Hash<String,String>] :context
2458
+ # You can specify custom data in this field. If you do, that data is
2459
+ # logged to the event destination.
2460
+ #
2461
+ # @option params [Boolean] :dry_run
2462
+ # When set to true, the message is checked and validated, but isn't
2463
+ # sent to the end recipient.
2464
+ #
2465
+ # @return [Types::SendVoiceMessageResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2466
+ #
2467
+ # * {Types::SendVoiceMessageResult#message_id #message_id} => String
2468
+ #
2469
+ # @example Request syntax with placeholder values
2470
+ #
2471
+ # resp = client.send_voice_message({
2472
+ # destination_phone_number: "PhoneNumber", # required
2473
+ # origination_identity: "VoiceMessageOriginationIdentity", # required
2474
+ # message_body: "VoiceMessageBody",
2475
+ # message_body_text_type: "TEXT", # accepts TEXT, SSML
2476
+ # voice_id: "AMY", # accepts AMY, ASTRID, BIANCA, BRIAN, CAMILA, CARLA, CARMEN, CELINE, CHANTAL, CONCHITA, CRISTIANO, DORA, EMMA, ENRIQUE, EWA, FILIZ, GERAINT, GIORGIO, GWYNETH, HANS, INES, IVY, JACEK, JAN, JOANNA, JOEY, JUSTIN, KARL, KENDRA, KIMBERLY, LEA, LIV, LOTTE, LUCIA, LUPE, MADS, MAJA, MARLENE, MATHIEU, MATTHEW, MAXIM, MIA, MIGUEL, MIZUKI, NAJA, NICOLE, PENELOPE, RAVEENA, RICARDO, RUBEN, RUSSELL, SALLI, SEOYEON, TAKUMI, TATYANA, VICKI, VITORIA, ZEINA, ZHIYU
2477
+ # configuration_set_name: "ConfigurationSetNameOrArn",
2478
+ # max_price_per_minute: "MaxPrice",
2479
+ # time_to_live: 1,
2480
+ # context: {
2481
+ # "ContextKey" => "ContextValue",
2482
+ # },
2483
+ # dry_run: false,
2484
+ # })
2485
+ #
2486
+ # @example Response structure
2487
+ #
2488
+ # resp.message_id #=> String
2489
+ #
2490
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/SendVoiceMessage AWS API Documentation
2491
+ #
2492
+ # @overload send_voice_message(params = {})
2493
+ # @param [Hash] params ({})
2494
+ def send_voice_message(params = {}, options = {})
2495
+ req = build_request(:send_voice_message, params)
2496
+ req.send_request(options)
2497
+ end
2498
+
2499
+ # Sets the default message type on a configuration set.
2500
+ #
2501
+ # Choose the category of SMS messages that you plan to send from this
2502
+ # account. If you send account-related messages or time-sensitive
2503
+ # messages such as one-time passcodes, choose **Transactional**. If you
2504
+ # plan to send messages that contain marketing material or other
2505
+ # promotional content, choose **Promotional**. This setting applies to
2506
+ # your entire Amazon Web Services account.
2507
+ #
2508
+ # @option params [required, String] :configuration_set_name
2509
+ # The configuration set to update with a new default message type. This
2510
+ # field can be the ConsigurationSetName or ConfigurationSetArn.
2511
+ #
2512
+ # @option params [required, String] :message_type
2513
+ # The type of message. Valid values are TRANSACTIONAL for messages that
2514
+ # are critical or time-sensitive and PROMOTIONAL for messages that
2515
+ # aren't critical or time-sensitive.
2516
+ #
2517
+ # @return [Types::SetDefaultMessageTypeResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2518
+ #
2519
+ # * {Types::SetDefaultMessageTypeResult#configuration_set_arn #configuration_set_arn} => String
2520
+ # * {Types::SetDefaultMessageTypeResult#configuration_set_name #configuration_set_name} => String
2521
+ # * {Types::SetDefaultMessageTypeResult#message_type #message_type} => String
2522
+ #
2523
+ # @example Request syntax with placeholder values
2524
+ #
2525
+ # resp = client.set_default_message_type({
2526
+ # configuration_set_name: "ConfigurationSetNameOrArn", # required
2527
+ # message_type: "TRANSACTIONAL", # required, accepts TRANSACTIONAL, PROMOTIONAL
2528
+ # })
2529
+ #
2530
+ # @example Response structure
2531
+ #
2532
+ # resp.configuration_set_arn #=> String
2533
+ # resp.configuration_set_name #=> String
2534
+ # resp.message_type #=> String, one of "TRANSACTIONAL", "PROMOTIONAL"
2535
+ #
2536
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/SetDefaultMessageType AWS API Documentation
2537
+ #
2538
+ # @overload set_default_message_type(params = {})
2539
+ # @param [Hash] params ({})
2540
+ def set_default_message_type(params = {}, options = {})
2541
+ req = build_request(:set_default_message_type, params)
2542
+ req.send_request(options)
2543
+ end
2544
+
2545
+ # Sets default sender ID on a configuration set.
2546
+ #
2547
+ # When sending a text message to a destination country that supports
2548
+ # sender IDs, the default sender ID on the configuration set specified
2549
+ # will be used if no dedicated origination phone numbers or registered
2550
+ # sender IDs are available in your account.
2551
+ #
2552
+ # @option params [required, String] :configuration_set_name
2553
+ # The configuration set to updated with a new default SenderId. This
2554
+ # field can be the ConsigurationSetName or ConfigurationSetArn.
2555
+ #
2556
+ # @option params [required, String] :sender_id
2557
+ # The current sender ID for the configuration set. When sending a text
2558
+ # message to a destination country which supports SenderIds, the default
2559
+ # sender ID on the configuration set specified on SendTextMessage will
2560
+ # be used if no dedicated origination phone numbers or registered
2561
+ # SenderIds are available in your account, instead of a generic sender
2562
+ # ID, such as 'NOTICE'.
2563
+ #
2564
+ # @return [Types::SetDefaultSenderIdResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2565
+ #
2566
+ # * {Types::SetDefaultSenderIdResult#configuration_set_arn #configuration_set_arn} => String
2567
+ # * {Types::SetDefaultSenderIdResult#configuration_set_name #configuration_set_name} => String
2568
+ # * {Types::SetDefaultSenderIdResult#sender_id #sender_id} => String
2569
+ #
2570
+ # @example Request syntax with placeholder values
2571
+ #
2572
+ # resp = client.set_default_sender_id({
2573
+ # configuration_set_name: "ConfigurationSetNameOrArn", # required
2574
+ # sender_id: "SenderId", # required
2575
+ # })
2576
+ #
2577
+ # @example Response structure
2578
+ #
2579
+ # resp.configuration_set_arn #=> String
2580
+ # resp.configuration_set_name #=> String
2581
+ # resp.sender_id #=> String
2582
+ #
2583
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/SetDefaultSenderId AWS API Documentation
2584
+ #
2585
+ # @overload set_default_sender_id(params = {})
2586
+ # @param [Hash] params ({})
2587
+ def set_default_sender_id(params = {}, options = {})
2588
+ req = build_request(:set_default_sender_id, params)
2589
+ req.send_request(options)
2590
+ end
2591
+
2592
+ # Sets an account level monthly spend limit override for sending text
2593
+ # messages. The requested spend limit must be less than or equal to the
2594
+ # `MaxLimit`, which is set by Amazon Web Services.
2595
+ #
2596
+ # @option params [required, Integer] :monthly_limit
2597
+ # The new monthly limit to enforce on text messages.
2598
+ #
2599
+ # @return [Types::SetTextMessageSpendLimitOverrideResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2600
+ #
2601
+ # * {Types::SetTextMessageSpendLimitOverrideResult#monthly_limit #monthly_limit} => Integer
2602
+ #
2603
+ # @example Request syntax with placeholder values
2604
+ #
2605
+ # resp = client.set_text_message_spend_limit_override({
2606
+ # monthly_limit: 1, # required
2607
+ # })
2608
+ #
2609
+ # @example Response structure
2610
+ #
2611
+ # resp.monthly_limit #=> Integer
2612
+ #
2613
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/SetTextMessageSpendLimitOverride AWS API Documentation
2614
+ #
2615
+ # @overload set_text_message_spend_limit_override(params = {})
2616
+ # @param [Hash] params ({})
2617
+ def set_text_message_spend_limit_override(params = {}, options = {})
2618
+ req = build_request(:set_text_message_spend_limit_override, params)
2619
+ req.send_request(options)
2620
+ end
2621
+
2622
+ # Sets an account level monthly spend limit override for sending voice
2623
+ # messages. The requested spend limit must be less than or equal to the
2624
+ # `MaxLimit`, which is set by Amazon Web Services.
2625
+ #
2626
+ # @option params [required, Integer] :monthly_limit
2627
+ # The new monthly limit to enforce on voice messages.
2628
+ #
2629
+ # @return [Types::SetVoiceMessageSpendLimitOverrideResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2630
+ #
2631
+ # * {Types::SetVoiceMessageSpendLimitOverrideResult#monthly_limit #monthly_limit} => Integer
2632
+ #
2633
+ # @example Request syntax with placeholder values
2634
+ #
2635
+ # resp = client.set_voice_message_spend_limit_override({
2636
+ # monthly_limit: 1, # required
2637
+ # })
2638
+ #
2639
+ # @example Response structure
2640
+ #
2641
+ # resp.monthly_limit #=> Integer
2642
+ #
2643
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/SetVoiceMessageSpendLimitOverride AWS API Documentation
2644
+ #
2645
+ # @overload set_voice_message_spend_limit_override(params = {})
2646
+ # @param [Hash] params ({})
2647
+ def set_voice_message_spend_limit_override(params = {}, options = {})
2648
+ req = build_request(:set_voice_message_spend_limit_override, params)
2649
+ req.send_request(options)
2650
+ end
2651
+
2652
+ # Adds or overwrites only the specified tags for the specified Amazon
2653
+ # Pinpoint SMS Voice, version 2 resource. When you specify an existing
2654
+ # tag key, the value is overwritten with the new value. Each resource
2655
+ # can have a maximum of 50 tags. Each tag consists of a key and an
2656
+ # optional value. Tag keys must be unique per resource. For more
2657
+ # information about tags, see [ Tagging Amazon Pinpoint resources][1] in
2658
+ # the *Amazon Pinpoint Developer Guide*.
2659
+ #
2660
+ #
2661
+ #
2662
+ # [1]: https://docs.aws.amazon.com/pinpoint/latest/developerguide/tagging-resources.html
2663
+ #
2664
+ # @option params [required, String] :resource_arn
2665
+ # The Amazon Resource Name (ARN) of the resource.
2666
+ #
2667
+ # @option params [required, Array<Types::Tag>] :tags
2668
+ # An array of key and value pair tags that are associated with the
2669
+ # resource.
2670
+ #
2671
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2672
+ #
2673
+ # @example Request syntax with placeholder values
2674
+ #
2675
+ # resp = client.tag_resource({
2676
+ # resource_arn: "AmazonResourceName", # required
2677
+ # tags: [ # required
2678
+ # {
2679
+ # key: "TagKey", # required
2680
+ # value: "TagValue", # required
2681
+ # },
2682
+ # ],
2683
+ # })
2684
+ #
2685
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/TagResource AWS API Documentation
2686
+ #
2687
+ # @overload tag_resource(params = {})
2688
+ # @param [Hash] params ({})
2689
+ def tag_resource(params = {}, options = {})
2690
+ req = build_request(:tag_resource, params)
2691
+ req.send_request(options)
2692
+ end
2693
+
2694
+ # Removes the association of the specified tags from an Amazon Pinpoint
2695
+ # SMS Voice V2 resource. For more information on tags see [ Tagging
2696
+ # Amazon Pinpoint resources][1] in the *Amazon Pinpoint Developer
2697
+ # Guide*.
2698
+ #
2699
+ #
2700
+ #
2701
+ # [1]: https://docs.aws.amazon.com/pinpoint/latest/developerguide/tagging-resources.html
2702
+ #
2703
+ # @option params [required, String] :resource_arn
2704
+ # The Amazon Resource Name (ARN) of the resource.
2705
+ #
2706
+ # @option params [required, Array<String>] :tag_keys
2707
+ # An array of tag key values to unassociate with the resource.
2708
+ #
2709
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2710
+ #
2711
+ # @example Request syntax with placeholder values
2712
+ #
2713
+ # resp = client.untag_resource({
2714
+ # resource_arn: "AmazonResourceName", # required
2715
+ # tag_keys: ["TagKey"], # required
2716
+ # })
2717
+ #
2718
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/UntagResource AWS API Documentation
2719
+ #
2720
+ # @overload untag_resource(params = {})
2721
+ # @param [Hash] params ({})
2722
+ def untag_resource(params = {}, options = {})
2723
+ req = build_request(:untag_resource, params)
2724
+ req.send_request(options)
2725
+ end
2726
+
2727
+ # Updates an existing event destination in a configuration set. You can
2728
+ # update the IAM role ARN for CloudWatch Logs and Kinesis Data Firehose.
2729
+ # You can also enable or disable the event destination.
2730
+ #
2731
+ # You may want to update an event destination to change its matching
2732
+ # event types or updating the destination resource ARN. You can't
2733
+ # change an event destination's type between CloudWatch Logs, Kinesis
2734
+ # Data Firehose, and Amazon SNS.
2735
+ #
2736
+ # @option params [required, String] :configuration_set_name
2737
+ # The configuration set to update with the new event destination. Valid
2738
+ # values for this can be the ConfigurationSetName or
2739
+ # ConfigurationSetArn.
2740
+ #
2741
+ # @option params [required, String] :event_destination_name
2742
+ # The name to use for the event destination.
2743
+ #
2744
+ # @option params [Boolean] :enabled
2745
+ # When set to true logging is enabled.
2746
+ #
2747
+ # @option params [Array<String>] :matching_event_types
2748
+ # An array of event types that determine which events to log.
2749
+ #
2750
+ # @option params [Types::CloudWatchLogsDestination] :cloud_watch_logs_destination
2751
+ # An object that contains information about an event destination that
2752
+ # sends data to CloudWatch Logs.
2753
+ #
2754
+ # @option params [Types::KinesisFirehoseDestination] :kinesis_firehose_destination
2755
+ # An object that contains information about an event destination for
2756
+ # logging to Kinesis Data Firehose.
2757
+ #
2758
+ # @option params [Types::SnsDestination] :sns_destination
2759
+ # An object that contains information about an event destination that
2760
+ # sends data to Amazon SNS.
2761
+ #
2762
+ # @return [Types::UpdateEventDestinationResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2763
+ #
2764
+ # * {Types::UpdateEventDestinationResult#configuration_set_arn #configuration_set_arn} => String
2765
+ # * {Types::UpdateEventDestinationResult#configuration_set_name #configuration_set_name} => String
2766
+ # * {Types::UpdateEventDestinationResult#event_destination #event_destination} => Types::EventDestination
2767
+ #
2768
+ # @example Request syntax with placeholder values
2769
+ #
2770
+ # resp = client.update_event_destination({
2771
+ # configuration_set_name: "ConfigurationSetNameOrArn", # required
2772
+ # event_destination_name: "EventDestinationName", # required
2773
+ # enabled: false,
2774
+ # matching_event_types: ["ALL"], # accepts ALL, TEXT_ALL, TEXT_SENT, TEXT_PENDING, TEXT_QUEUED, TEXT_SUCCESSFUL, TEXT_DELIVERED, TEXT_INVALID, TEXT_INVALID_MESSAGE, TEXT_UNREACHABLE, TEXT_CARRIER_UNREACHABLE, TEXT_BLOCKED, TEXT_CARRIER_BLOCKED, TEXT_SPAM, TEXT_UNKNOWN, TEXT_TTL_EXPIRED, VOICE_ALL, VOICE_INITIATED, VOICE_RINGING, VOICE_ANSWERED, VOICE_COMPLETED, VOICE_BUSY, VOICE_NO_ANSWER, VOICE_FAILED, VOICE_TTL_EXPIRED
2775
+ # cloud_watch_logs_destination: {
2776
+ # iam_role_arn: "IamRoleArn", # required
2777
+ # log_group_arn: "LogGroupArn", # required
2778
+ # },
2779
+ # kinesis_firehose_destination: {
2780
+ # iam_role_arn: "IamRoleArn", # required
2781
+ # delivery_stream_arn: "DeliveryStreamArn", # required
2782
+ # },
2783
+ # sns_destination: {
2784
+ # topic_arn: "SnsTopicArn", # required
2785
+ # },
2786
+ # })
2787
+ #
2788
+ # @example Response structure
2789
+ #
2790
+ # resp.configuration_set_arn #=> String
2791
+ # resp.configuration_set_name #=> String
2792
+ # resp.event_destination.event_destination_name #=> String
2793
+ # resp.event_destination.enabled #=> Boolean
2794
+ # resp.event_destination.matching_event_types #=> Array
2795
+ # resp.event_destination.matching_event_types[0] #=> String, one of "ALL", "TEXT_ALL", "TEXT_SENT", "TEXT_PENDING", "TEXT_QUEUED", "TEXT_SUCCESSFUL", "TEXT_DELIVERED", "TEXT_INVALID", "TEXT_INVALID_MESSAGE", "TEXT_UNREACHABLE", "TEXT_CARRIER_UNREACHABLE", "TEXT_BLOCKED", "TEXT_CARRIER_BLOCKED", "TEXT_SPAM", "TEXT_UNKNOWN", "TEXT_TTL_EXPIRED", "VOICE_ALL", "VOICE_INITIATED", "VOICE_RINGING", "VOICE_ANSWERED", "VOICE_COMPLETED", "VOICE_BUSY", "VOICE_NO_ANSWER", "VOICE_FAILED", "VOICE_TTL_EXPIRED"
2796
+ # resp.event_destination.cloud_watch_logs_destination.iam_role_arn #=> String
2797
+ # resp.event_destination.cloud_watch_logs_destination.log_group_arn #=> String
2798
+ # resp.event_destination.kinesis_firehose_destination.iam_role_arn #=> String
2799
+ # resp.event_destination.kinesis_firehose_destination.delivery_stream_arn #=> String
2800
+ # resp.event_destination.sns_destination.topic_arn #=> String
2801
+ #
2802
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/UpdateEventDestination AWS API Documentation
2803
+ #
2804
+ # @overload update_event_destination(params = {})
2805
+ # @param [Hash] params ({})
2806
+ def update_event_destination(params = {}, options = {})
2807
+ req = build_request(:update_event_destination, params)
2808
+ req.send_request(options)
2809
+ end
2810
+
2811
+ # Updates the configuration of an existing origination phone number. You
2812
+ # can update the opt-out list, enable or disable two-way messaging,
2813
+ # change the TwoWayChannelArn, enable or disable self-managed opt-outs,
2814
+ # and enable or disable deletion protection.
2815
+ #
2816
+ # If the origination phone number is associated with a pool, an Error is
2817
+ # returned.
2818
+ #
2819
+ # @option params [required, String] :phone_number_id
2820
+ # The unique identifier of the phone number. Valid values for this field
2821
+ # can be either the PhoneNumberId or PhoneNumberArn.
2822
+ #
2823
+ # @option params [Boolean] :two_way_enabled
2824
+ # By default this is set to false. When set to true you can receive
2825
+ # incoming text messages from your end recipients.
2826
+ #
2827
+ # @option params [String] :two_way_channel_arn
2828
+ # The Amazon Resource Name (ARN) of the two way channel.
2829
+ #
2830
+ # @option params [Boolean] :self_managed_opt_outs_enabled
2831
+ # By default this is set to false. When an end recipient sends a message
2832
+ # that begins with HELP or STOP to one of your dedicated numbers, Amazon
2833
+ # Pinpoint automatically replies with a customizable message and adds
2834
+ # the end recipient to the OptOutList. When set to true you're
2835
+ # responsible for responding to HELP and STOP requests. You're also
2836
+ # responsible for tracking and honoring opt-out requests.
2837
+ #
2838
+ # @option params [String] :opt_out_list_name
2839
+ # The OptOutList to add the phone number to. Valid values for this field
2840
+ # can be either the OutOutListName or OutOutListArn.
2841
+ #
2842
+ # @option params [Boolean] :deletion_protection_enabled
2843
+ # By default this is set to false. When set to true the phone number
2844
+ # can't be deleted.
2845
+ #
2846
+ # @return [Types::UpdatePhoneNumberResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2847
+ #
2848
+ # * {Types::UpdatePhoneNumberResult#phone_number_arn #phone_number_arn} => String
2849
+ # * {Types::UpdatePhoneNumberResult#phone_number_id #phone_number_id} => String
2850
+ # * {Types::UpdatePhoneNumberResult#phone_number #phone_number} => String
2851
+ # * {Types::UpdatePhoneNumberResult#status #status} => String
2852
+ # * {Types::UpdatePhoneNumberResult#iso_country_code #iso_country_code} => String
2853
+ # * {Types::UpdatePhoneNumberResult#message_type #message_type} => String
2854
+ # * {Types::UpdatePhoneNumberResult#number_capabilities #number_capabilities} => Array&lt;String&gt;
2855
+ # * {Types::UpdatePhoneNumberResult#number_type #number_type} => String
2856
+ # * {Types::UpdatePhoneNumberResult#monthly_leasing_price #monthly_leasing_price} => String
2857
+ # * {Types::UpdatePhoneNumberResult#two_way_enabled #two_way_enabled} => Boolean
2858
+ # * {Types::UpdatePhoneNumberResult#two_way_channel_arn #two_way_channel_arn} => String
2859
+ # * {Types::UpdatePhoneNumberResult#self_managed_opt_outs_enabled #self_managed_opt_outs_enabled} => Boolean
2860
+ # * {Types::UpdatePhoneNumberResult#opt_out_list_name #opt_out_list_name} => String
2861
+ # * {Types::UpdatePhoneNumberResult#deletion_protection_enabled #deletion_protection_enabled} => Boolean
2862
+ # * {Types::UpdatePhoneNumberResult#created_timestamp #created_timestamp} => Time
2863
+ #
2864
+ # @example Request syntax with placeholder values
2865
+ #
2866
+ # resp = client.update_phone_number({
2867
+ # phone_number_id: "PhoneNumberIdOrArn", # required
2868
+ # two_way_enabled: false,
2869
+ # two_way_channel_arn: "TwoWayChannelArn",
2870
+ # self_managed_opt_outs_enabled: false,
2871
+ # opt_out_list_name: "OptOutListNameOrArn",
2872
+ # deletion_protection_enabled: false,
2873
+ # })
2874
+ #
2875
+ # @example Response structure
2876
+ #
2877
+ # resp.phone_number_arn #=> String
2878
+ # resp.phone_number_id #=> String
2879
+ # resp.phone_number #=> String
2880
+ # resp.status #=> String, one of "PENDING", "ACTIVE", "ASSOCIATING", "DISASSOCIATING", "DELETED"
2881
+ # resp.iso_country_code #=> String
2882
+ # resp.message_type #=> String, one of "TRANSACTIONAL", "PROMOTIONAL"
2883
+ # resp.number_capabilities #=> Array
2884
+ # resp.number_capabilities[0] #=> String, one of "SMS", "VOICE"
2885
+ # resp.number_type #=> String, one of "SHORT_CODE", "LONG_CODE", "TOLL_FREE", "TEN_DLC"
2886
+ # resp.monthly_leasing_price #=> String
2887
+ # resp.two_way_enabled #=> Boolean
2888
+ # resp.two_way_channel_arn #=> String
2889
+ # resp.self_managed_opt_outs_enabled #=> Boolean
2890
+ # resp.opt_out_list_name #=> String
2891
+ # resp.deletion_protection_enabled #=> Boolean
2892
+ # resp.created_timestamp #=> Time
2893
+ #
2894
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/UpdatePhoneNumber AWS API Documentation
2895
+ #
2896
+ # @overload update_phone_number(params = {})
2897
+ # @param [Hash] params ({})
2898
+ def update_phone_number(params = {}, options = {})
2899
+ req = build_request(:update_phone_number, params)
2900
+ req.send_request(options)
2901
+ end
2902
+
2903
+ # Updates the configuration of an existing pool. You can update the
2904
+ # opt-out list, enable or disable two-way messaging, change the
2905
+ # `TwoWayChannelArn`, enable or disable self-managed opt-outs, enable or
2906
+ # disable deletion protection, and enable or disable shared routes.
2907
+ #
2908
+ # @option params [required, String] :pool_id
2909
+ # The unique identifier of the pool to update. Valid values are either
2910
+ # the PoolId or PoolArn.
2911
+ #
2912
+ # @option params [Boolean] :two_way_enabled
2913
+ # By default this is set to false. When set to true you can receive
2914
+ # incoming text messages from your end recipients.
2915
+ #
2916
+ # @option params [String] :two_way_channel_arn
2917
+ # The Amazon Resource Name (ARN) of the two way channel.
2918
+ #
2919
+ # @option params [Boolean] :self_managed_opt_outs_enabled
2920
+ # By default this is set to false. When an end recipient sends a message
2921
+ # that begins with HELP or STOP to one of your dedicated numbers, Amazon
2922
+ # Pinpoint automatically replies with a customizable message and adds
2923
+ # the end recipient to the OptOutList. When set to true you're
2924
+ # responsible for responding to HELP and STOP requests. You're also
2925
+ # responsible for tracking and honoring opt-out requests.
2926
+ #
2927
+ # @option params [String] :opt_out_list_name
2928
+ # The OptOutList to associate with the pool. Valid values are either
2929
+ # OptOutListName or OptOutListArn.
2930
+ #
2931
+ # @option params [Boolean] :shared_routes_enabled
2932
+ # Indicates whether shared routes are enabled for the pool.
2933
+ #
2934
+ # @option params [Boolean] :deletion_protection_enabled
2935
+ # When set to true the pool can't be deleted.
2936
+ #
2937
+ # @return [Types::UpdatePoolResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2938
+ #
2939
+ # * {Types::UpdatePoolResult#pool_arn #pool_arn} => String
2940
+ # * {Types::UpdatePoolResult#pool_id #pool_id} => String
2941
+ # * {Types::UpdatePoolResult#status #status} => String
2942
+ # * {Types::UpdatePoolResult#message_type #message_type} => String
2943
+ # * {Types::UpdatePoolResult#two_way_enabled #two_way_enabled} => Boolean
2944
+ # * {Types::UpdatePoolResult#two_way_channel_arn #two_way_channel_arn} => String
2945
+ # * {Types::UpdatePoolResult#self_managed_opt_outs_enabled #self_managed_opt_outs_enabled} => Boolean
2946
+ # * {Types::UpdatePoolResult#opt_out_list_name #opt_out_list_name} => String
2947
+ # * {Types::UpdatePoolResult#shared_routes_enabled #shared_routes_enabled} => Boolean
2948
+ # * {Types::UpdatePoolResult#deletion_protection_enabled #deletion_protection_enabled} => Boolean
2949
+ # * {Types::UpdatePoolResult#created_timestamp #created_timestamp} => Time
2950
+ #
2951
+ # @example Request syntax with placeholder values
2952
+ #
2953
+ # resp = client.update_pool({
2954
+ # pool_id: "PoolIdOrArn", # required
2955
+ # two_way_enabled: false,
2956
+ # two_way_channel_arn: "TwoWayChannelArn",
2957
+ # self_managed_opt_outs_enabled: false,
2958
+ # opt_out_list_name: "OptOutListNameOrArn",
2959
+ # shared_routes_enabled: false,
2960
+ # deletion_protection_enabled: false,
2961
+ # })
2962
+ #
2963
+ # @example Response structure
2964
+ #
2965
+ # resp.pool_arn #=> String
2966
+ # resp.pool_id #=> String
2967
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "DELETING"
2968
+ # resp.message_type #=> String, one of "TRANSACTIONAL", "PROMOTIONAL"
2969
+ # resp.two_way_enabled #=> Boolean
2970
+ # resp.two_way_channel_arn #=> String
2971
+ # resp.self_managed_opt_outs_enabled #=> Boolean
2972
+ # resp.opt_out_list_name #=> String
2973
+ # resp.shared_routes_enabled #=> Boolean
2974
+ # resp.deletion_protection_enabled #=> Boolean
2975
+ # resp.created_timestamp #=> Time
2976
+ #
2977
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pinpoint-sms-voice-v2-2022-03-31/UpdatePool AWS API Documentation
2978
+ #
2979
+ # @overload update_pool(params = {})
2980
+ # @param [Hash] params ({})
2981
+ def update_pool(params = {}, options = {})
2982
+ req = build_request(:update_pool, params)
2983
+ req.send_request(options)
2984
+ end
2985
+
2986
+ # @!endgroup
2987
+
2988
+ # @param params ({})
2989
+ # @api private
2990
+ def build_request(operation_name, params = {})
2991
+ handlers = @handlers.for(operation_name)
2992
+ context = Seahorse::Client::RequestContext.new(
2993
+ operation_name: operation_name,
2994
+ operation: config.api.operation(operation_name),
2995
+ client: self,
2996
+ params: params,
2997
+ config: config)
2998
+ context[:gem_name] = 'aws-sdk-pinpointsmsvoicev2'
2999
+ context[:gem_version] = '1.0.0'
3000
+ Seahorse::Client::Request.new(handlers, context)
3001
+ end
3002
+
3003
+ # @api private
3004
+ # @deprecated
3005
+ def waiter_names
3006
+ []
3007
+ end
3008
+
3009
+ class << self
3010
+
3011
+ # @api private
3012
+ attr_reader :identifier
3013
+
3014
+ # @api private
3015
+ def errors_module
3016
+ Errors
3017
+ end
3018
+
3019
+ end
3020
+ end
3021
+ end