aws-sdk-geoplaces 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1960 @@
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/invocation_id.rb'
26
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
27
+ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
28
+ require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
29
+ require 'aws-sdk-core/plugins/transfer_encoding.rb'
30
+ require 'aws-sdk-core/plugins/http_checksum.rb'
31
+ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
32
+ require 'aws-sdk-core/plugins/request_compression.rb'
33
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
34
+ require 'aws-sdk-core/plugins/recursion_detection.rb'
35
+ require 'aws-sdk-core/plugins/telemetry.rb'
36
+ require 'aws-sdk-core/plugins/sign.rb'
37
+ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
38
+
39
+ module Aws::GeoPlaces
40
+ # An API client for GeoPlaces. To construct a client, you need to configure a `:region` and `:credentials`.
41
+ #
42
+ # client = Aws::GeoPlaces::Client.new(
43
+ # region: region_name,
44
+ # credentials: credentials,
45
+ # # ...
46
+ # )
47
+ #
48
+ # For details on configuring region and credentials see
49
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
50
+ #
51
+ # See {#initialize} for a full list of supported configuration options.
52
+ class Client < Seahorse::Client::Base
53
+
54
+ include Aws::ClientStubs
55
+
56
+ @identifier = :geoplaces
57
+
58
+ set_api(ClientApi::API)
59
+
60
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
61
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
62
+ add_plugin(Aws::Plugins::Logging)
63
+ add_plugin(Aws::Plugins::ParamConverter)
64
+ add_plugin(Aws::Plugins::ParamValidator)
65
+ add_plugin(Aws::Plugins::UserAgent)
66
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
67
+ add_plugin(Aws::Plugins::RetryErrors)
68
+ add_plugin(Aws::Plugins::GlobalConfiguration)
69
+ add_plugin(Aws::Plugins::RegionalEndpoint)
70
+ add_plugin(Aws::Plugins::EndpointDiscovery)
71
+ add_plugin(Aws::Plugins::EndpointPattern)
72
+ add_plugin(Aws::Plugins::ResponsePaging)
73
+ add_plugin(Aws::Plugins::StubResponses)
74
+ add_plugin(Aws::Plugins::IdempotencyToken)
75
+ add_plugin(Aws::Plugins::InvocationId)
76
+ add_plugin(Aws::Plugins::JsonvalueConverter)
77
+ add_plugin(Aws::Plugins::ClientMetricsPlugin)
78
+ add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
79
+ add_plugin(Aws::Plugins::TransferEncoding)
80
+ add_plugin(Aws::Plugins::HttpChecksum)
81
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
82
+ add_plugin(Aws::Plugins::RequestCompression)
83
+ add_plugin(Aws::Plugins::DefaultsMode)
84
+ add_plugin(Aws::Plugins::RecursionDetection)
85
+ add_plugin(Aws::Plugins::Telemetry)
86
+ add_plugin(Aws::Plugins::Sign)
87
+ add_plugin(Aws::Plugins::Protocols::RestJson)
88
+ add_plugin(Aws::GeoPlaces::Plugins::Endpoints)
89
+
90
+ # @overload initialize(options)
91
+ # @param [Hash] options
92
+ #
93
+ # @option options [Array<Seahorse::Client::Plugin>] :plugins ([]])
94
+ # A list of plugins to apply to the client. Each plugin is either a
95
+ # class name or an instance of a plugin class.
96
+ #
97
+ # @option options [required, Aws::CredentialProvider] :credentials
98
+ # Your AWS credentials. This can be an instance of any one of the
99
+ # following classes:
100
+ #
101
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
102
+ # credentials.
103
+ #
104
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
105
+ # shared file, such as `~/.aws/config`.
106
+ #
107
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
108
+ #
109
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
110
+ # assume a role after providing credentials via the web.
111
+ #
112
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
113
+ # access token generated from `aws login`.
114
+ #
115
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
116
+ # process that outputs to stdout.
117
+ #
118
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
119
+ # from an EC2 IMDS on an EC2 instance.
120
+ #
121
+ # * `Aws::ECSCredentials` - Used for loading credentials from
122
+ # instances running in ECS.
123
+ #
124
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
125
+ # from the Cognito Identity service.
126
+ #
127
+ # When `:credentials` are not configured directly, the following
128
+ # locations will be searched for credentials:
129
+ #
130
+ # * `Aws.config[:credentials]`
131
+ # * The `:access_key_id`, `:secret_access_key`, `:session_token`, and
132
+ # `:account_id` options.
133
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'],
134
+ # ENV['AWS_SESSION_TOKEN'], and ENV['AWS_ACCOUNT_ID']
135
+ # * `~/.aws/credentials`
136
+ # * `~/.aws/config`
137
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
138
+ # are very aggressive. Construct and pass an instance of
139
+ # `Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to
140
+ # enable retries and extended timeouts. Instance profile credential
141
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
142
+ # to true.
143
+ #
144
+ # @option options [required, String] :region
145
+ # The AWS region to connect to. The configured `:region` is
146
+ # used to determine the service `:endpoint`. When not passed,
147
+ # a default `:region` is searched for in the following locations:
148
+ #
149
+ # * `Aws.config[:region]`
150
+ # * `ENV['AWS_REGION']`
151
+ # * `ENV['AMAZON_REGION']`
152
+ # * `ENV['AWS_DEFAULT_REGION']`
153
+ # * `~/.aws/credentials`
154
+ # * `~/.aws/config`
155
+ #
156
+ # @option options [String] :access_key_id
157
+ #
158
+ # @option options [String] :account_id
159
+ #
160
+ # @option options [Boolean] :active_endpoint_cache (false)
161
+ # When set to `true`, a thread polling for endpoints will be running in
162
+ # the background every 60 secs (default). Defaults to `false`.
163
+ #
164
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
165
+ # Used only in `adaptive` retry mode. When true, the request will sleep
166
+ # until there is sufficent client side capacity to retry the request.
167
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
168
+ # not retry instead of sleeping.
169
+ #
170
+ # @option options [Boolean] :client_side_monitoring (false)
171
+ # When `true`, client-side metrics will be collected for all API requests from
172
+ # this client.
173
+ #
174
+ # @option options [String] :client_side_monitoring_client_id ("")
175
+ # Allows you to provide an identifier for this client which will be attached to
176
+ # all generated client side metrics. Defaults to an empty string.
177
+ #
178
+ # @option options [String] :client_side_monitoring_host ("127.0.0.1")
179
+ # Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client
180
+ # side monitoring agent is running on, where client metrics will be published via UDP.
181
+ #
182
+ # @option options [Integer] :client_side_monitoring_port (31000)
183
+ # Required for publishing client metrics. The port that the client side monitoring
184
+ # agent is running on, where client metrics will be published via UDP.
185
+ #
186
+ # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
187
+ # Allows you to provide a custom client-side monitoring publisher class. By default,
188
+ # will use the Client Side Monitoring Agent Publisher.
189
+ #
190
+ # @option options [Boolean] :convert_params (true)
191
+ # When `true`, an attempt is made to coerce request parameters into
192
+ # the required types.
193
+ #
194
+ # @option options [Boolean] :correct_clock_skew (true)
195
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
196
+ # a clock skew correction and retry requests with skewed client clocks.
197
+ #
198
+ # @option options [String] :defaults_mode ("legacy")
199
+ # See {Aws::DefaultsModeConfiguration} for a list of the
200
+ # accepted modes and the configuration defaults that are included.
201
+ #
202
+ # @option options [Boolean] :disable_host_prefix_injection (false)
203
+ # Set to true to disable SDK automatically adding host prefix
204
+ # to default service endpoint when available.
205
+ #
206
+ # @option options [Boolean] :disable_request_compression (false)
207
+ # When set to 'true' the request body will not be compressed
208
+ # for supported operations.
209
+ #
210
+ # @option options [String, URI::HTTPS, URI::HTTP] :endpoint
211
+ # Normally you should not configure the `:endpoint` option
212
+ # directly. This is normally constructed from the `:region`
213
+ # option. Configuring `:endpoint` is normally reserved for
214
+ # connecting to test or custom endpoints. The endpoint should
215
+ # be a URI formatted like:
216
+ #
217
+ # 'http://example.com'
218
+ # 'https://example.com'
219
+ # 'http://example.com:123'
220
+ #
221
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
222
+ # Used for the maximum size limit of the LRU cache storing endpoints data
223
+ # for endpoint discovery enabled operations. Defaults to 1000.
224
+ #
225
+ # @option options [Integer] :endpoint_cache_max_threads (10)
226
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
227
+ #
228
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
229
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
230
+ # Use this option to config the time interval in seconds for making
231
+ # requests fetching endpoints information. Defaults to 60 sec.
232
+ #
233
+ # @option options [Boolean] :endpoint_discovery (false)
234
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
235
+ #
236
+ # @option options [Boolean] :ignore_configured_endpoint_urls
237
+ # Setting to true disables use of endpoint URLs provided via environment
238
+ # variables and the shared configuration file.
239
+ #
240
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
241
+ # The log formatter.
242
+ #
243
+ # @option options [Symbol] :log_level (:info)
244
+ # The log level to send messages to the `:logger` at.
245
+ #
246
+ # @option options [Logger] :logger
247
+ # The Logger instance to send log messages to. If this option
248
+ # is not set, logging will be disabled.
249
+ #
250
+ # @option options [Integer] :max_attempts (3)
251
+ # An integer representing the maximum number attempts that will be made for
252
+ # a single request, including the initial attempt. For example,
253
+ # setting this value to 5 will result in a request being retried up to
254
+ # 4 times. Used in `standard` and `adaptive` retry modes.
255
+ #
256
+ # @option options [String] :profile ("default")
257
+ # Used when loading credentials from the shared credentials file
258
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
259
+ #
260
+ # @option options [Integer] :request_min_compression_size_bytes (10240)
261
+ # The minimum size in bytes that triggers compression for request
262
+ # bodies. The value must be non-negative integer value between 0
263
+ # and 10485780 bytes inclusive.
264
+ #
265
+ # @option options [Proc] :retry_backoff
266
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
267
+ # This option is only used in the `legacy` retry mode.
268
+ #
269
+ # @option options [Float] :retry_base_delay (0.3)
270
+ # The base delay in seconds used by the default backoff function. This option
271
+ # is only used in the `legacy` retry mode.
272
+ #
273
+ # @option options [Symbol] :retry_jitter (:none)
274
+ # A delay randomiser function used by the default backoff function.
275
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
276
+ # otherwise a Proc that takes and returns a number. This option is only used
277
+ # in the `legacy` retry mode.
278
+ #
279
+ # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
280
+ #
281
+ # @option options [Integer] :retry_limit (3)
282
+ # The maximum number of times to retry failed requests. Only
283
+ # ~ 500 level server errors and certain ~ 400 level client errors
284
+ # are retried. Generally, these are throttling errors, data
285
+ # checksum errors, networking errors, timeout errors, auth errors,
286
+ # endpoint discovery, and errors from expired credentials.
287
+ # This option is only used in the `legacy` retry mode.
288
+ #
289
+ # @option options [Integer] :retry_max_delay (0)
290
+ # The maximum number of seconds to delay between retries (0 for no limit)
291
+ # used by the default backoff function. This option is only used in the
292
+ # `legacy` retry mode.
293
+ #
294
+ # @option options [String] :retry_mode ("legacy")
295
+ # Specifies which retry algorithm to use. Values are:
296
+ #
297
+ # * `legacy` - The pre-existing retry behavior. This is default value if
298
+ # no retry mode is provided.
299
+ #
300
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
301
+ # This includes support for retry quotas, which limit the number of
302
+ # unsuccessful retries a client can make.
303
+ #
304
+ # * `adaptive` - An experimental retry mode that includes all the
305
+ # functionality of `standard` mode along with automatic client side
306
+ # throttling. This is a provisional mode that may change behavior
307
+ # in the future.
308
+ #
309
+ # @option options [String] :sdk_ua_app_id
310
+ # A unique and opaque application ID that is appended to the
311
+ # User-Agent header as app/sdk_ua_app_id. It should have a
312
+ # maximum length of 50. This variable is sourced from environment
313
+ # variable AWS_SDK_UA_APP_ID or the shared config profile attribute sdk_ua_app_id.
314
+ #
315
+ # @option options [String] :secret_access_key
316
+ #
317
+ # @option options [String] :session_token
318
+ #
319
+ # @option options [Array] :sigv4a_signing_region_set
320
+ # A list of regions that should be signed with SigV4a signing. When
321
+ # not passed, a default `:sigv4a_signing_region_set` is searched for
322
+ # in the following locations:
323
+ #
324
+ # * `Aws.config[:sigv4a_signing_region_set]`
325
+ # * `ENV['AWS_SIGV4A_SIGNING_REGION_SET']`
326
+ # * `~/.aws/config`
327
+ #
328
+ # @option options [Boolean] :stub_responses (false)
329
+ # Causes the client to return stubbed responses. By default
330
+ # fake responses are generated and returned. You can specify
331
+ # the response data to return or errors to raise by calling
332
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
333
+ #
334
+ # ** Please note ** When response stubbing is enabled, no HTTP
335
+ # requests are made, and retries are disabled.
336
+ #
337
+ # @option options [Aws::Telemetry::TelemetryProviderBase] :telemetry_provider (Aws::Telemetry::NoOpTelemetryProvider)
338
+ # Allows you to provide a telemetry provider, which is used to
339
+ # emit telemetry data. By default, uses `NoOpTelemetryProvider` which
340
+ # will not record or emit any telemetry data. The SDK supports the
341
+ # following telemetry providers:
342
+ #
343
+ # * OpenTelemetry (OTel) - To use the OTel provider, install and require the
344
+ # `opentelemetry-sdk` gem and then, pass in an instance of a
345
+ # `Aws::Telemetry::OTelProvider` for telemetry provider.
346
+ #
347
+ # @option options [Aws::TokenProvider] :token_provider
348
+ # A Bearer Token Provider. This can be an instance of any one of the
349
+ # following classes:
350
+ #
351
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
352
+ # tokens.
353
+ #
354
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
355
+ # access token generated from `aws login`.
356
+ #
357
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
358
+ # will be used to search for tokens configured for your profile in shared configuration files.
359
+ #
360
+ # @option options [Boolean] :use_dualstack_endpoint
361
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
362
+ # will be used if available.
363
+ #
364
+ # @option options [Boolean] :use_fips_endpoint
365
+ # When set to `true`, fips compatible endpoints will be used if available.
366
+ # When a `fips` region is used, the region is normalized and this config
367
+ # is set to `true`.
368
+ #
369
+ # @option options [Boolean] :validate_params (true)
370
+ # When `true`, request parameters are validated before
371
+ # sending the request.
372
+ #
373
+ # @option options [Aws::GeoPlaces::EndpointProvider] :endpoint_provider
374
+ # The endpoint provider used to resolve endpoints. Any object that responds to
375
+ # `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to
376
+ # `Aws::GeoPlaces::EndpointParameters`.
377
+ #
378
+ # @option options [Float] :http_continue_timeout (1)
379
+ # The number of seconds to wait for a 100-continue response before sending the
380
+ # request body. This option has no effect unless the request has "Expect"
381
+ # header set to "100-continue". Defaults to `nil` which disables this
382
+ # behaviour. This value can safely be set per request on the session.
383
+ #
384
+ # @option options [Float] :http_idle_timeout (5)
385
+ # The number of seconds a connection is allowed to sit idle before it
386
+ # is considered stale. Stale connections are closed and removed from the
387
+ # pool before making a request.
388
+ #
389
+ # @option options [Float] :http_open_timeout (15)
390
+ # The default number of seconds to wait for response data.
391
+ # This value can safely be set per-request on the session.
392
+ #
393
+ # @option options [URI::HTTP,String] :http_proxy
394
+ # A proxy to send requests through. Formatted like 'http://proxy.com:123'.
395
+ #
396
+ # @option options [Float] :http_read_timeout (60)
397
+ # The default number of seconds to wait for response data.
398
+ # This value can safely be set per-request on the session.
399
+ #
400
+ # @option options [Boolean] :http_wire_trace (false)
401
+ # When `true`, HTTP debug output will be sent to the `:logger`.
402
+ #
403
+ # @option options [Proc] :on_chunk_received
404
+ # When a Proc object is provided, it will be used as callback when each chunk
405
+ # of the response body is received. It provides three arguments: the chunk,
406
+ # the number of bytes received, and the total number of
407
+ # bytes in the response (or nil if the server did not send a `content-length`).
408
+ #
409
+ # @option options [Proc] :on_chunk_sent
410
+ # When a Proc object is provided, it will be used as callback when each chunk
411
+ # of the request body is sent. It provides three arguments: the chunk,
412
+ # the number of bytes read from the body, and the total number of
413
+ # bytes in the body.
414
+ #
415
+ # @option options [Boolean] :raise_response_errors (true)
416
+ # When `true`, response errors are raised.
417
+ #
418
+ # @option options [String] :ssl_ca_bundle
419
+ # Full path to the SSL certificate authority bundle file that should be used when
420
+ # verifying peer certificates. If you do not pass `:ssl_ca_bundle` or
421
+ # `:ssl_ca_directory` the the system default will be used if available.
422
+ #
423
+ # @option options [String] :ssl_ca_directory
424
+ # Full path of the directory that contains the unbundled SSL certificate
425
+ # authority files for verifying peer certificates. If you do
426
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the system
427
+ # default will be used if available.
428
+ #
429
+ # @option options [String] :ssl_ca_store
430
+ # Sets the X509::Store to verify peer certificate.
431
+ #
432
+ # @option options [OpenSSL::X509::Certificate] :ssl_cert
433
+ # Sets a client certificate when creating http connections.
434
+ #
435
+ # @option options [OpenSSL::PKey] :ssl_key
436
+ # Sets a client key when creating http connections.
437
+ #
438
+ # @option options [Float] :ssl_timeout
439
+ # Sets the SSL timeout in seconds
440
+ #
441
+ # @option options [Boolean] :ssl_verify_peer (true)
442
+ # When `true`, SSL peer certificates are verified when establishing a connection.
443
+ #
444
+ def initialize(*args)
445
+ super
446
+ end
447
+
448
+ # @!group API Operations
449
+
450
+ # The autocomplete operation speeds up and increases the accuracy of
451
+ # entering addresses by providing a list of address candidates matching
452
+ # a partially entered address. Results are sorted from most to least
453
+ # matching. Filtering and biasing can be used to increase the relevance
454
+ # of the results if additional search context is known
455
+ #
456
+ # @option params [required, String] :query_text
457
+ # The free-form text query to match addresses against. This is usually a
458
+ # partially typed address from an end user in an address box or form.
459
+ #
460
+ # @option params [Integer] :max_results
461
+ # An optional limit for the number of results returned in a single call.
462
+ #
463
+ # @option params [Array<Float>] :bias_position
464
+ # The position in longitude and latitude that the results should be
465
+ # close to. Typically, place results returned are ranked higher the
466
+ # closer they are to this position. Stored in `[lng, lat]` and in the
467
+ # WSG84 format.
468
+ #
469
+ # <note markdown="1"> The fields `BiasPosition`, `FilterBoundingBox`, and `FilterCircle` are
470
+ # mutually exclusive.
471
+ #
472
+ # </note>
473
+ #
474
+ # @option params [Types::AutocompleteFilter] :filter
475
+ # A structure which contains a set of inclusion/exclusion properties
476
+ # that results must posses in order to be returned as a result.
477
+ #
478
+ # @option params [String] :postal_code_mode
479
+ # The `PostalCodeMode` affects how postal code results are returned. If
480
+ # a postal code spans multiple localities and this value is empty,
481
+ # partial district or locality information may be returned under a
482
+ # single postal code result entry. If it's populated with the value
483
+ # `cityLookup`, all cities in that postal code are returned.
484
+ #
485
+ # @option params [Array<String>] :additional_features
486
+ # A list of optional additional parameters that can be requested for
487
+ # each result.
488
+ #
489
+ # @option params [String] :language
490
+ # A list of [BCP 47][1] compliant language codes for the results to be
491
+ # rendered in. If there is no data for the result in the requested
492
+ # language, data will be returned in the default language for the entry.
493
+ #
494
+ #
495
+ #
496
+ # [1]: https://en.wikipedia.org/wiki/IETF_language_tag
497
+ #
498
+ # @option params [String] :political_view
499
+ # The alpha-2 or alpha-3 character code for the political view of a
500
+ # country. The political view applies to the results of the request to
501
+ # represent unresolved territorial claims through the point of view of
502
+ # the specified country.
503
+ #
504
+ # @option params [String] :intended_use
505
+ # Indicates if the results will be stored. Defaults to `SingleUse`, if
506
+ # left empty.
507
+ #
508
+ # @option params [String] :key
509
+ # Optional: The API key to be used for authorization. Either an API key
510
+ # or valid SigV4 signature must be provided when making a request.
511
+ #
512
+ # @return [Types::AutocompleteResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
513
+ #
514
+ # * {Types::AutocompleteResponse#pricing_bucket #pricing_bucket} => String
515
+ # * {Types::AutocompleteResponse#result_items #result_items} => Array&lt;Types::AutocompleteResultItem&gt;
516
+ #
517
+ # @example Request syntax with placeholder values
518
+ #
519
+ # resp = client.autocomplete({
520
+ # query_text: "AutocompleteRequestQueryTextString", # required
521
+ # max_results: 1,
522
+ # bias_position: [1.0],
523
+ # filter: {
524
+ # bounding_box: [1.0],
525
+ # circle: {
526
+ # center: [1.0], # required
527
+ # radius: 1, # required
528
+ # },
529
+ # include_countries: ["CountryCode"],
530
+ # include_place_types: ["Locality"], # accepts Locality, PostalCode
531
+ # },
532
+ # postal_code_mode: "MergeAllSpannedLocalities", # accepts MergeAllSpannedLocalities, EnumerateSpannedLocalities
533
+ # additional_features: ["Core"], # accepts Core
534
+ # language: "LanguageTag",
535
+ # political_view: "CountryCode",
536
+ # intended_use: "SingleUse", # accepts SingleUse
537
+ # key: "ApiKey",
538
+ # })
539
+ #
540
+ # @example Response structure
541
+ #
542
+ # resp.pricing_bucket #=> String
543
+ # resp.result_items #=> Array
544
+ # resp.result_items[0].place_id #=> String
545
+ # resp.result_items[0].place_type #=> String, one of "Country", "Region", "SubRegion", "Locality", "District", "SubDistrict", "PostalCode", "Block", "SubBlock", "Intersection", "Street", "PointOfInterest", "PointAddress", "InterpolatedAddress"
546
+ # resp.result_items[0].title #=> String
547
+ # resp.result_items[0].address.label #=> String
548
+ # resp.result_items[0].address.country.code_2 #=> String
549
+ # resp.result_items[0].address.country.code_3 #=> String
550
+ # resp.result_items[0].address.country.name #=> String
551
+ # resp.result_items[0].address.region.code #=> String
552
+ # resp.result_items[0].address.region.name #=> String
553
+ # resp.result_items[0].address.sub_region.code #=> String
554
+ # resp.result_items[0].address.sub_region.name #=> String
555
+ # resp.result_items[0].address.locality #=> String
556
+ # resp.result_items[0].address.district #=> String
557
+ # resp.result_items[0].address.sub_district #=> String
558
+ # resp.result_items[0].address.postal_code #=> String
559
+ # resp.result_items[0].address.block #=> String
560
+ # resp.result_items[0].address.sub_block #=> String
561
+ # resp.result_items[0].address.intersection #=> Array
562
+ # resp.result_items[0].address.intersection[0] #=> String
563
+ # resp.result_items[0].address.street #=> String
564
+ # resp.result_items[0].address.street_components #=> Array
565
+ # resp.result_items[0].address.street_components[0].base_name #=> String
566
+ # resp.result_items[0].address.street_components[0].type #=> String
567
+ # resp.result_items[0].address.street_components[0].type_placement #=> String, one of "BeforeBaseName", "AfterBaseName"
568
+ # resp.result_items[0].address.street_components[0].type_separator #=> String
569
+ # resp.result_items[0].address.street_components[0].prefix #=> String
570
+ # resp.result_items[0].address.street_components[0].suffix #=> String
571
+ # resp.result_items[0].address.street_components[0].direction #=> String
572
+ # resp.result_items[0].address.street_components[0].language #=> String
573
+ # resp.result_items[0].address.address_number #=> String
574
+ # resp.result_items[0].address.building #=> String
575
+ # resp.result_items[0].distance #=> Integer
576
+ # resp.result_items[0].language #=> String
577
+ # resp.result_items[0].political_view #=> String
578
+ # resp.result_items[0].highlights.title #=> Array
579
+ # resp.result_items[0].highlights.title[0].start_index #=> Integer
580
+ # resp.result_items[0].highlights.title[0].end_index #=> Integer
581
+ # resp.result_items[0].highlights.title[0].value #=> String
582
+ # resp.result_items[0].highlights.address.label #=> Array
583
+ # resp.result_items[0].highlights.address.label[0].start_index #=> Integer
584
+ # resp.result_items[0].highlights.address.label[0].end_index #=> Integer
585
+ # resp.result_items[0].highlights.address.label[0].value #=> String
586
+ # resp.result_items[0].highlights.address.country.code #=> Array
587
+ # resp.result_items[0].highlights.address.country.code[0].start_index #=> Integer
588
+ # resp.result_items[0].highlights.address.country.code[0].end_index #=> Integer
589
+ # resp.result_items[0].highlights.address.country.code[0].value #=> String
590
+ # resp.result_items[0].highlights.address.country.name #=> Array
591
+ # resp.result_items[0].highlights.address.country.name[0].start_index #=> Integer
592
+ # resp.result_items[0].highlights.address.country.name[0].end_index #=> Integer
593
+ # resp.result_items[0].highlights.address.country.name[0].value #=> String
594
+ # resp.result_items[0].highlights.address.region.code #=> Array
595
+ # resp.result_items[0].highlights.address.region.code[0].start_index #=> Integer
596
+ # resp.result_items[0].highlights.address.region.code[0].end_index #=> Integer
597
+ # resp.result_items[0].highlights.address.region.code[0].value #=> String
598
+ # resp.result_items[0].highlights.address.region.name #=> Array
599
+ # resp.result_items[0].highlights.address.region.name[0].start_index #=> Integer
600
+ # resp.result_items[0].highlights.address.region.name[0].end_index #=> Integer
601
+ # resp.result_items[0].highlights.address.region.name[0].value #=> String
602
+ # resp.result_items[0].highlights.address.sub_region.code #=> Array
603
+ # resp.result_items[0].highlights.address.sub_region.code[0].start_index #=> Integer
604
+ # resp.result_items[0].highlights.address.sub_region.code[0].end_index #=> Integer
605
+ # resp.result_items[0].highlights.address.sub_region.code[0].value #=> String
606
+ # resp.result_items[0].highlights.address.sub_region.name #=> Array
607
+ # resp.result_items[0].highlights.address.sub_region.name[0].start_index #=> Integer
608
+ # resp.result_items[0].highlights.address.sub_region.name[0].end_index #=> Integer
609
+ # resp.result_items[0].highlights.address.sub_region.name[0].value #=> String
610
+ # resp.result_items[0].highlights.address.locality #=> Array
611
+ # resp.result_items[0].highlights.address.locality[0].start_index #=> Integer
612
+ # resp.result_items[0].highlights.address.locality[0].end_index #=> Integer
613
+ # resp.result_items[0].highlights.address.locality[0].value #=> String
614
+ # resp.result_items[0].highlights.address.district #=> Array
615
+ # resp.result_items[0].highlights.address.district[0].start_index #=> Integer
616
+ # resp.result_items[0].highlights.address.district[0].end_index #=> Integer
617
+ # resp.result_items[0].highlights.address.district[0].value #=> String
618
+ # resp.result_items[0].highlights.address.sub_district #=> Array
619
+ # resp.result_items[0].highlights.address.sub_district[0].start_index #=> Integer
620
+ # resp.result_items[0].highlights.address.sub_district[0].end_index #=> Integer
621
+ # resp.result_items[0].highlights.address.sub_district[0].value #=> String
622
+ # resp.result_items[0].highlights.address.street #=> Array
623
+ # resp.result_items[0].highlights.address.street[0].start_index #=> Integer
624
+ # resp.result_items[0].highlights.address.street[0].end_index #=> Integer
625
+ # resp.result_items[0].highlights.address.street[0].value #=> String
626
+ # resp.result_items[0].highlights.address.block #=> Array
627
+ # resp.result_items[0].highlights.address.block[0].start_index #=> Integer
628
+ # resp.result_items[0].highlights.address.block[0].end_index #=> Integer
629
+ # resp.result_items[0].highlights.address.block[0].value #=> String
630
+ # resp.result_items[0].highlights.address.sub_block #=> Array
631
+ # resp.result_items[0].highlights.address.sub_block[0].start_index #=> Integer
632
+ # resp.result_items[0].highlights.address.sub_block[0].end_index #=> Integer
633
+ # resp.result_items[0].highlights.address.sub_block[0].value #=> String
634
+ # resp.result_items[0].highlights.address.intersection #=> Array
635
+ # resp.result_items[0].highlights.address.intersection[0] #=> Array
636
+ # resp.result_items[0].highlights.address.intersection[0][0].start_index #=> Integer
637
+ # resp.result_items[0].highlights.address.intersection[0][0].end_index #=> Integer
638
+ # resp.result_items[0].highlights.address.intersection[0][0].value #=> String
639
+ # resp.result_items[0].highlights.address.postal_code #=> Array
640
+ # resp.result_items[0].highlights.address.postal_code[0].start_index #=> Integer
641
+ # resp.result_items[0].highlights.address.postal_code[0].end_index #=> Integer
642
+ # resp.result_items[0].highlights.address.postal_code[0].value #=> String
643
+ # resp.result_items[0].highlights.address.address_number #=> Array
644
+ # resp.result_items[0].highlights.address.address_number[0].start_index #=> Integer
645
+ # resp.result_items[0].highlights.address.address_number[0].end_index #=> Integer
646
+ # resp.result_items[0].highlights.address.address_number[0].value #=> String
647
+ # resp.result_items[0].highlights.address.building #=> Array
648
+ # resp.result_items[0].highlights.address.building[0].start_index #=> Integer
649
+ # resp.result_items[0].highlights.address.building[0].end_index #=> Integer
650
+ # resp.result_items[0].highlights.address.building[0].value #=> String
651
+ #
652
+ # @see http://docs.aws.amazon.com/goto/WebAPI/geo-places-2020-11-19/Autocomplete AWS API Documentation
653
+ #
654
+ # @overload autocomplete(params = {})
655
+ # @param [Hash] params ({})
656
+ def autocomplete(params = {}, options = {})
657
+ req = build_request(:autocomplete, params)
658
+ req.send_request(options)
659
+ end
660
+
661
+ # The `Geocode` action allows you to obtain coordinates, addresses, and
662
+ # other information about places.
663
+ #
664
+ # @option params [String] :query_text
665
+ # The free-form text query to match addresses against. This is usually a
666
+ # partially typed address from an end user in an address box or form.
667
+ #
668
+ # @option params [Types::GeocodeQueryComponents] :query_components
669
+ # A structured free text query allows you to search for places by the
670
+ # name or text representation of specific properties of the place.
671
+ #
672
+ # @option params [Integer] :max_results
673
+ # An optional limit for the number of results returned in a single call.
674
+ #
675
+ # @option params [Array<Float>] :bias_position
676
+ # The position, in longitude and latitude, that the results should be
677
+ # close to. Typically, place results returned are ranked higher the
678
+ # closer they are to this position. Stored in `[lng, lat]` and in the
679
+ # WSG84 format.
680
+ #
681
+ # <note markdown="1"> The fields `BiasPosition`, `FilterBoundingBox`, and `FilterCircle` are
682
+ # mutually exclusive.
683
+ #
684
+ # </note>
685
+ #
686
+ # @option params [Types::GeocodeFilter] :filter
687
+ # A structure which contains a set of inclusion/exclusion properties
688
+ # that results must posses in order to be returned as a result.
689
+ #
690
+ # @option params [Array<String>] :additional_features
691
+ # A list of optional additional parameters, such as time zone, that can
692
+ # be requested for each result.
693
+ #
694
+ # @option params [String] :language
695
+ # A list of [BCP 47][1] compliant language codes for the results to be
696
+ # rendered in. If there is no data for the result in the requested
697
+ # language, data will be returned in the default language for the entry.
698
+ #
699
+ #
700
+ #
701
+ # [1]: https://en.wikipedia.org/wiki/IETF_language_tag
702
+ #
703
+ # @option params [String] :political_view
704
+ # The alpha-2 or alpha-3 character code for the political view of a
705
+ # country. The political view applies to the results of the request to
706
+ # represent unresolved territorial claims through the point of view of
707
+ # the specified country.
708
+ #
709
+ # @option params [String] :intended_use
710
+ # Indicates if the results will be stored. Defaults to `SingleUse`, if
711
+ # left empty.
712
+ #
713
+ # @option params [String] :key
714
+ # Optional: The API key to be used for authorization. Either an API key
715
+ # or valid SigV4 signature must be provided when making a request.
716
+ #
717
+ # @return [Types::GeocodeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
718
+ #
719
+ # * {Types::GeocodeResponse#pricing_bucket #pricing_bucket} => String
720
+ # * {Types::GeocodeResponse#result_items #result_items} => Array&lt;Types::GeocodeResultItem&gt;
721
+ #
722
+ # @example Request syntax with placeholder values
723
+ #
724
+ # resp = client.geocode({
725
+ # query_text: "GeocodeRequestQueryTextString",
726
+ # query_components: {
727
+ # country: "GeocodeQueryComponentsCountryString",
728
+ # region: "GeocodeQueryComponentsRegionString",
729
+ # sub_region: "GeocodeQueryComponentsSubRegionString",
730
+ # locality: "GeocodeQueryComponentsLocalityString",
731
+ # district: "GeocodeQueryComponentsDistrictString",
732
+ # street: "GeocodeQueryComponentsStreetString",
733
+ # address_number: "GeocodeQueryComponentsAddressNumberString",
734
+ # postal_code: "GeocodeQueryComponentsPostalCodeString",
735
+ # },
736
+ # max_results: 1,
737
+ # bias_position: [1.0],
738
+ # filter: {
739
+ # include_countries: ["CountryCode"],
740
+ # include_place_types: ["Locality"], # accepts Locality, PostalCode, Intersection, Street, PointAddress, InterpolatedAddress
741
+ # },
742
+ # additional_features: ["TimeZone"], # accepts TimeZone, Access
743
+ # language: "LanguageTag",
744
+ # political_view: "CountryCode",
745
+ # intended_use: "SingleUse", # accepts SingleUse, Storage
746
+ # key: "ApiKey",
747
+ # })
748
+ #
749
+ # @example Response structure
750
+ #
751
+ # resp.pricing_bucket #=> String
752
+ # resp.result_items #=> Array
753
+ # resp.result_items[0].place_id #=> String
754
+ # resp.result_items[0].place_type #=> String, one of "Country", "Region", "SubRegion", "Locality", "District", "SubDistrict", "PostalCode", "Block", "SubBlock", "Intersection", "Street", "PointOfInterest", "PointAddress", "InterpolatedAddress"
755
+ # resp.result_items[0].title #=> String
756
+ # resp.result_items[0].address.label #=> String
757
+ # resp.result_items[0].address.country.code_2 #=> String
758
+ # resp.result_items[0].address.country.code_3 #=> String
759
+ # resp.result_items[0].address.country.name #=> String
760
+ # resp.result_items[0].address.region.code #=> String
761
+ # resp.result_items[0].address.region.name #=> String
762
+ # resp.result_items[0].address.sub_region.code #=> String
763
+ # resp.result_items[0].address.sub_region.name #=> String
764
+ # resp.result_items[0].address.locality #=> String
765
+ # resp.result_items[0].address.district #=> String
766
+ # resp.result_items[0].address.sub_district #=> String
767
+ # resp.result_items[0].address.postal_code #=> String
768
+ # resp.result_items[0].address.block #=> String
769
+ # resp.result_items[0].address.sub_block #=> String
770
+ # resp.result_items[0].address.intersection #=> Array
771
+ # resp.result_items[0].address.intersection[0] #=> String
772
+ # resp.result_items[0].address.street #=> String
773
+ # resp.result_items[0].address.street_components #=> Array
774
+ # resp.result_items[0].address.street_components[0].base_name #=> String
775
+ # resp.result_items[0].address.street_components[0].type #=> String
776
+ # resp.result_items[0].address.street_components[0].type_placement #=> String, one of "BeforeBaseName", "AfterBaseName"
777
+ # resp.result_items[0].address.street_components[0].type_separator #=> String
778
+ # resp.result_items[0].address.street_components[0].prefix #=> String
779
+ # resp.result_items[0].address.street_components[0].suffix #=> String
780
+ # resp.result_items[0].address.street_components[0].direction #=> String
781
+ # resp.result_items[0].address.street_components[0].language #=> String
782
+ # resp.result_items[0].address.address_number #=> String
783
+ # resp.result_items[0].address.building #=> String
784
+ # resp.result_items[0].address_number_corrected #=> Boolean
785
+ # resp.result_items[0].postal_code_details #=> Array
786
+ # resp.result_items[0].postal_code_details[0].postal_code #=> String
787
+ # resp.result_items[0].postal_code_details[0].postal_authority #=> String, one of "Usps"
788
+ # resp.result_items[0].postal_code_details[0].postal_code_type #=> String, one of "UspsZip", "UspsZipPlus4"
789
+ # resp.result_items[0].postal_code_details[0].usps_zip.zip_classification_code #=> String, one of "Military", "PostOfficeBoxes", "Unique"
790
+ # resp.result_items[0].postal_code_details[0].usps_zip_plus_4.record_type_code #=> String, one of "Firm", "General", "HighRise", "PostOfficeBox", "Rural", "Street"
791
+ # resp.result_items[0].position #=> Array
792
+ # resp.result_items[0].position[0] #=> Float
793
+ # resp.result_items[0].distance #=> Integer
794
+ # resp.result_items[0].map_view #=> Array
795
+ # resp.result_items[0].map_view[0] #=> Float
796
+ # resp.result_items[0].categories #=> Array
797
+ # resp.result_items[0].categories[0].id #=> String
798
+ # resp.result_items[0].categories[0].name #=> String
799
+ # resp.result_items[0].categories[0].localized_name #=> String
800
+ # resp.result_items[0].categories[0].primary #=> Boolean
801
+ # resp.result_items[0].food_types #=> Array
802
+ # resp.result_items[0].food_types[0].localized_name #=> String
803
+ # resp.result_items[0].food_types[0].id #=> String
804
+ # resp.result_items[0].food_types[0].primary #=> Boolean
805
+ # resp.result_items[0].access_points #=> Array
806
+ # resp.result_items[0].access_points[0].position #=> Array
807
+ # resp.result_items[0].access_points[0].position[0] #=> Float
808
+ # resp.result_items[0].time_zone.name #=> String
809
+ # resp.result_items[0].time_zone.offset #=> String
810
+ # resp.result_items[0].time_zone.offset_seconds #=> Integer
811
+ # resp.result_items[0].political_view #=> String
812
+ # resp.result_items[0].match_scores.overall #=> Float
813
+ # resp.result_items[0].match_scores.components.title #=> Float
814
+ # resp.result_items[0].match_scores.components.address.country #=> Float
815
+ # resp.result_items[0].match_scores.components.address.region #=> Float
816
+ # resp.result_items[0].match_scores.components.address.sub_region #=> Float
817
+ # resp.result_items[0].match_scores.components.address.locality #=> Float
818
+ # resp.result_items[0].match_scores.components.address.district #=> Float
819
+ # resp.result_items[0].match_scores.components.address.sub_district #=> Float
820
+ # resp.result_items[0].match_scores.components.address.postal_code #=> Float
821
+ # resp.result_items[0].match_scores.components.address.block #=> Float
822
+ # resp.result_items[0].match_scores.components.address.sub_block #=> Float
823
+ # resp.result_items[0].match_scores.components.address.intersection #=> Array
824
+ # resp.result_items[0].match_scores.components.address.intersection[0] #=> Float
825
+ # resp.result_items[0].match_scores.components.address.address_number #=> Float
826
+ # resp.result_items[0].match_scores.components.address.building #=> Float
827
+ #
828
+ # @see http://docs.aws.amazon.com/goto/WebAPI/geo-places-2020-11-19/Geocode AWS API Documentation
829
+ #
830
+ # @overload geocode(params = {})
831
+ # @param [Hash] params ({})
832
+ def geocode(params = {}, options = {})
833
+ req = build_request(:geocode, params)
834
+ req.send_request(options)
835
+ end
836
+
837
+ # Finds a place by its unique ID. A `PlaceId` is returned by other place
838
+ # operations.
839
+ #
840
+ # @option params [required, String] :place_id
841
+ # The `PlaceId` of the place you wish to receive the information for.
842
+ #
843
+ # @option params [Array<String>] :additional_features
844
+ # A list of optional additional parameters such as time zone that can be
845
+ # requested for each result.
846
+ #
847
+ # @option params [String] :language
848
+ # A list of [BCP 47][1] compliant language codes for the results to be
849
+ # rendered in. If there is no data for the result in the requested
850
+ # language, data will be returned in the default language for the entry.
851
+ #
852
+ #
853
+ #
854
+ # [1]: https://en.wikipedia.org/wiki/IETF_language_tag
855
+ #
856
+ # @option params [String] :political_view
857
+ # The alpha-2 or alpha-3 character code for the political view of a
858
+ # country. The political view applies to the results of the request to
859
+ # represent unresolved territorial claims through the point of view of
860
+ # the specified country.
861
+ #
862
+ # @option params [String] :intended_use
863
+ # Indicates if the results will be stored. Defaults to `SingleUse`, if
864
+ # left empty.
865
+ #
866
+ # @option params [String] :key
867
+ # Optional: The API key to be used for authorization. Either an API key
868
+ # or valid SigV4 signature must be provided when making a request.
869
+ #
870
+ # @return [Types::GetPlaceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
871
+ #
872
+ # * {Types::GetPlaceResponse#place_id #place_id} => String
873
+ # * {Types::GetPlaceResponse#place_type #place_type} => String
874
+ # * {Types::GetPlaceResponse#title #title} => String
875
+ # * {Types::GetPlaceResponse#pricing_bucket #pricing_bucket} => String
876
+ # * {Types::GetPlaceResponse#address #address} => Types::Address
877
+ # * {Types::GetPlaceResponse#address_number_corrected #address_number_corrected} => Boolean
878
+ # * {Types::GetPlaceResponse#postal_code_details #postal_code_details} => Array&lt;Types::PostalCodeDetails&gt;
879
+ # * {Types::GetPlaceResponse#position #position} => Array&lt;Float&gt;
880
+ # * {Types::GetPlaceResponse#map_view #map_view} => Array&lt;Float&gt;
881
+ # * {Types::GetPlaceResponse#categories #categories} => Array&lt;Types::Category&gt;
882
+ # * {Types::GetPlaceResponse#food_types #food_types} => Array&lt;Types::FoodType&gt;
883
+ # * {Types::GetPlaceResponse#business_chains #business_chains} => Array&lt;Types::BusinessChain&gt;
884
+ # * {Types::GetPlaceResponse#contacts #contacts} => Types::Contacts
885
+ # * {Types::GetPlaceResponse#opening_hours #opening_hours} => Array&lt;Types::OpeningHours&gt;
886
+ # * {Types::GetPlaceResponse#access_points #access_points} => Array&lt;Types::AccessPoint&gt;
887
+ # * {Types::GetPlaceResponse#access_restrictions #access_restrictions} => Array&lt;Types::AccessRestriction&gt;
888
+ # * {Types::GetPlaceResponse#time_zone #time_zone} => Types::TimeZone
889
+ # * {Types::GetPlaceResponse#political_view #political_view} => String
890
+ # * {Types::GetPlaceResponse#phonemes #phonemes} => Types::PhonemeDetails
891
+ #
892
+ # @example Request syntax with placeholder values
893
+ #
894
+ # resp = client.get_place({
895
+ # place_id: "GetPlaceRequestPlaceIdString", # required
896
+ # additional_features: ["TimeZone"], # accepts TimeZone, Phonemes, Access, Contact
897
+ # language: "LanguageTag",
898
+ # political_view: "CountryCode",
899
+ # intended_use: "SingleUse", # accepts SingleUse, Storage
900
+ # key: "ApiKey",
901
+ # })
902
+ #
903
+ # @example Response structure
904
+ #
905
+ # resp.place_id #=> String
906
+ # resp.place_type #=> String, one of "Country", "Region", "SubRegion", "Locality", "District", "SubDistrict", "PostalCode", "Block", "SubBlock", "Intersection", "Street", "PointOfInterest", "PointAddress", "InterpolatedAddress"
907
+ # resp.title #=> String
908
+ # resp.pricing_bucket #=> String
909
+ # resp.address.label #=> String
910
+ # resp.address.country.code_2 #=> String
911
+ # resp.address.country.code_3 #=> String
912
+ # resp.address.country.name #=> String
913
+ # resp.address.region.code #=> String
914
+ # resp.address.region.name #=> String
915
+ # resp.address.sub_region.code #=> String
916
+ # resp.address.sub_region.name #=> String
917
+ # resp.address.locality #=> String
918
+ # resp.address.district #=> String
919
+ # resp.address.sub_district #=> String
920
+ # resp.address.postal_code #=> String
921
+ # resp.address.block #=> String
922
+ # resp.address.sub_block #=> String
923
+ # resp.address.intersection #=> Array
924
+ # resp.address.intersection[0] #=> String
925
+ # resp.address.street #=> String
926
+ # resp.address.street_components #=> Array
927
+ # resp.address.street_components[0].base_name #=> String
928
+ # resp.address.street_components[0].type #=> String
929
+ # resp.address.street_components[0].type_placement #=> String, one of "BeforeBaseName", "AfterBaseName"
930
+ # resp.address.street_components[0].type_separator #=> String
931
+ # resp.address.street_components[0].prefix #=> String
932
+ # resp.address.street_components[0].suffix #=> String
933
+ # resp.address.street_components[0].direction #=> String
934
+ # resp.address.street_components[0].language #=> String
935
+ # resp.address.address_number #=> String
936
+ # resp.address.building #=> String
937
+ # resp.address_number_corrected #=> Boolean
938
+ # resp.postal_code_details #=> Array
939
+ # resp.postal_code_details[0].postal_code #=> String
940
+ # resp.postal_code_details[0].postal_authority #=> String, one of "Usps"
941
+ # resp.postal_code_details[0].postal_code_type #=> String, one of "UspsZip", "UspsZipPlus4"
942
+ # resp.postal_code_details[0].usps_zip.zip_classification_code #=> String, one of "Military", "PostOfficeBoxes", "Unique"
943
+ # resp.postal_code_details[0].usps_zip_plus_4.record_type_code #=> String, one of "Firm", "General", "HighRise", "PostOfficeBox", "Rural", "Street"
944
+ # resp.position #=> Array
945
+ # resp.position[0] #=> Float
946
+ # resp.map_view #=> Array
947
+ # resp.map_view[0] #=> Float
948
+ # resp.categories #=> Array
949
+ # resp.categories[0].id #=> String
950
+ # resp.categories[0].name #=> String
951
+ # resp.categories[0].localized_name #=> String
952
+ # resp.categories[0].primary #=> Boolean
953
+ # resp.food_types #=> Array
954
+ # resp.food_types[0].localized_name #=> String
955
+ # resp.food_types[0].id #=> String
956
+ # resp.food_types[0].primary #=> Boolean
957
+ # resp.business_chains #=> Array
958
+ # resp.business_chains[0].name #=> String
959
+ # resp.business_chains[0].id #=> String
960
+ # resp.contacts.phones #=> Array
961
+ # resp.contacts.phones[0].label #=> String
962
+ # resp.contacts.phones[0].value #=> String
963
+ # resp.contacts.phones[0].categories #=> Array
964
+ # resp.contacts.phones[0].categories[0].id #=> String
965
+ # resp.contacts.phones[0].categories[0].name #=> String
966
+ # resp.contacts.phones[0].categories[0].localized_name #=> String
967
+ # resp.contacts.phones[0].categories[0].primary #=> Boolean
968
+ # resp.contacts.faxes #=> Array
969
+ # resp.contacts.faxes[0].label #=> String
970
+ # resp.contacts.faxes[0].value #=> String
971
+ # resp.contacts.faxes[0].categories #=> Array
972
+ # resp.contacts.faxes[0].categories[0].id #=> String
973
+ # resp.contacts.faxes[0].categories[0].name #=> String
974
+ # resp.contacts.faxes[0].categories[0].localized_name #=> String
975
+ # resp.contacts.faxes[0].categories[0].primary #=> Boolean
976
+ # resp.contacts.websites #=> Array
977
+ # resp.contacts.websites[0].label #=> String
978
+ # resp.contacts.websites[0].value #=> String
979
+ # resp.contacts.websites[0].categories #=> Array
980
+ # resp.contacts.websites[0].categories[0].id #=> String
981
+ # resp.contacts.websites[0].categories[0].name #=> String
982
+ # resp.contacts.websites[0].categories[0].localized_name #=> String
983
+ # resp.contacts.websites[0].categories[0].primary #=> Boolean
984
+ # resp.contacts.emails #=> Array
985
+ # resp.contacts.emails[0].label #=> String
986
+ # resp.contacts.emails[0].value #=> String
987
+ # resp.contacts.emails[0].categories #=> Array
988
+ # resp.contacts.emails[0].categories[0].id #=> String
989
+ # resp.contacts.emails[0].categories[0].name #=> String
990
+ # resp.contacts.emails[0].categories[0].localized_name #=> String
991
+ # resp.contacts.emails[0].categories[0].primary #=> Boolean
992
+ # resp.opening_hours #=> Array
993
+ # resp.opening_hours[0].display #=> Array
994
+ # resp.opening_hours[0].display[0] #=> String
995
+ # resp.opening_hours[0].open_now #=> Boolean
996
+ # resp.opening_hours[0].components #=> Array
997
+ # resp.opening_hours[0].components[0].open_time #=> String
998
+ # resp.opening_hours[0].components[0].open_duration #=> String
999
+ # resp.opening_hours[0].components[0].recurrence #=> String
1000
+ # resp.opening_hours[0].categories #=> Array
1001
+ # resp.opening_hours[0].categories[0].id #=> String
1002
+ # resp.opening_hours[0].categories[0].name #=> String
1003
+ # resp.opening_hours[0].categories[0].localized_name #=> String
1004
+ # resp.opening_hours[0].categories[0].primary #=> Boolean
1005
+ # resp.access_points #=> Array
1006
+ # resp.access_points[0].position #=> Array
1007
+ # resp.access_points[0].position[0] #=> Float
1008
+ # resp.access_restrictions #=> Array
1009
+ # resp.access_restrictions[0].restricted #=> Boolean
1010
+ # resp.access_restrictions[0].categories #=> Array
1011
+ # resp.access_restrictions[0].categories[0].id #=> String
1012
+ # resp.access_restrictions[0].categories[0].name #=> String
1013
+ # resp.access_restrictions[0].categories[0].localized_name #=> String
1014
+ # resp.access_restrictions[0].categories[0].primary #=> Boolean
1015
+ # resp.time_zone.name #=> String
1016
+ # resp.time_zone.offset #=> String
1017
+ # resp.time_zone.offset_seconds #=> Integer
1018
+ # resp.political_view #=> String
1019
+ # resp.phonemes.title #=> Array
1020
+ # resp.phonemes.title[0].value #=> String
1021
+ # resp.phonemes.title[0].language #=> String
1022
+ # resp.phonemes.title[0].preferred #=> Boolean
1023
+ # resp.phonemes.address.country #=> Array
1024
+ # resp.phonemes.address.country[0].value #=> String
1025
+ # resp.phonemes.address.country[0].language #=> String
1026
+ # resp.phonemes.address.country[0].preferred #=> Boolean
1027
+ # resp.phonemes.address.region #=> Array
1028
+ # resp.phonemes.address.region[0].value #=> String
1029
+ # resp.phonemes.address.region[0].language #=> String
1030
+ # resp.phonemes.address.region[0].preferred #=> Boolean
1031
+ # resp.phonemes.address.sub_region #=> Array
1032
+ # resp.phonemes.address.sub_region[0].value #=> String
1033
+ # resp.phonemes.address.sub_region[0].language #=> String
1034
+ # resp.phonemes.address.sub_region[0].preferred #=> Boolean
1035
+ # resp.phonemes.address.locality #=> Array
1036
+ # resp.phonemes.address.locality[0].value #=> String
1037
+ # resp.phonemes.address.locality[0].language #=> String
1038
+ # resp.phonemes.address.locality[0].preferred #=> Boolean
1039
+ # resp.phonemes.address.district #=> Array
1040
+ # resp.phonemes.address.district[0].value #=> String
1041
+ # resp.phonemes.address.district[0].language #=> String
1042
+ # resp.phonemes.address.district[0].preferred #=> Boolean
1043
+ # resp.phonemes.address.sub_district #=> Array
1044
+ # resp.phonemes.address.sub_district[0].value #=> String
1045
+ # resp.phonemes.address.sub_district[0].language #=> String
1046
+ # resp.phonemes.address.sub_district[0].preferred #=> Boolean
1047
+ # resp.phonemes.address.block #=> Array
1048
+ # resp.phonemes.address.block[0].value #=> String
1049
+ # resp.phonemes.address.block[0].language #=> String
1050
+ # resp.phonemes.address.block[0].preferred #=> Boolean
1051
+ # resp.phonemes.address.sub_block #=> Array
1052
+ # resp.phonemes.address.sub_block[0].value #=> String
1053
+ # resp.phonemes.address.sub_block[0].language #=> String
1054
+ # resp.phonemes.address.sub_block[0].preferred #=> Boolean
1055
+ # resp.phonemes.address.street #=> Array
1056
+ # resp.phonemes.address.street[0].value #=> String
1057
+ # resp.phonemes.address.street[0].language #=> String
1058
+ # resp.phonemes.address.street[0].preferred #=> Boolean
1059
+ #
1060
+ # @see http://docs.aws.amazon.com/goto/WebAPI/geo-places-2020-11-19/GetPlace AWS API Documentation
1061
+ #
1062
+ # @overload get_place(params = {})
1063
+ # @param [Hash] params ({})
1064
+ def get_place(params = {}, options = {})
1065
+ req = build_request(:get_place, params)
1066
+ req.send_request(options)
1067
+ end
1068
+
1069
+ # The `ReverseGeocode` operation allows you to retrieve addresses and
1070
+ # place information from coordinates.
1071
+ #
1072
+ # @option params [required, Array<Float>] :query_position
1073
+ # The position, in `[lng, lat]` for which you are querying nearby
1074
+ # resultsfor. Results closer to the position will be ranked higher then
1075
+ # results further away from the position
1076
+ #
1077
+ # @option params [Integer] :query_radius
1078
+ # The maximum distance in meters from the QueryPosition from which a
1079
+ # result will be returned.
1080
+ #
1081
+ # @option params [Integer] :max_results
1082
+ # An optional limit for the number of results returned in a single call.
1083
+ #
1084
+ # @option params [Types::ReverseGeocodeFilter] :filter
1085
+ # A structure which contains a set of inclusion/exclusion properties
1086
+ # that results must posses in order to be returned as a result.
1087
+ #
1088
+ # @option params [Array<String>] :additional_features
1089
+ # A list of optional additional parameters, such as time zone that can
1090
+ # be requested for each result.
1091
+ #
1092
+ # @option params [String] :language
1093
+ # A list of [BCP 47][1] compliant language codes for the results to be
1094
+ # rendered in. If there is no data for the result in the requested
1095
+ # language, data will be returned in the default language for the entry.
1096
+ #
1097
+ #
1098
+ #
1099
+ # [1]: https://en.wikipedia.org/wiki/IETF_language_tag
1100
+ #
1101
+ # @option params [String] :political_view
1102
+ # The alpha-2 or alpha-3 character code for the political view of a
1103
+ # country. The political view applies to the results of the request to
1104
+ # represent unresolved territorial claims through the point of view of
1105
+ # the specified country.
1106
+ #
1107
+ # @option params [String] :intended_use
1108
+ # Indicates if the results will be stored. Defaults to `SingleUse`, if
1109
+ # left empty.
1110
+ #
1111
+ # @option params [String] :key
1112
+ # Optional: The API key to be used for authorization. Either an API key
1113
+ # or valid SigV4 signature must be provided when making a request.
1114
+ #
1115
+ # @return [Types::ReverseGeocodeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1116
+ #
1117
+ # * {Types::ReverseGeocodeResponse#pricing_bucket #pricing_bucket} => String
1118
+ # * {Types::ReverseGeocodeResponse#result_items #result_items} => Array&lt;Types::ReverseGeocodeResultItem&gt;
1119
+ #
1120
+ # @example Request syntax with placeholder values
1121
+ #
1122
+ # resp = client.reverse_geocode({
1123
+ # query_position: [1.0], # required
1124
+ # query_radius: 1,
1125
+ # max_results: 1,
1126
+ # filter: {
1127
+ # include_place_types: ["Locality"], # accepts Locality, Intersection, Street, PointAddress, InterpolatedAddress
1128
+ # },
1129
+ # additional_features: ["TimeZone"], # accepts TimeZone, Access
1130
+ # language: "LanguageTag",
1131
+ # political_view: "CountryCode",
1132
+ # intended_use: "SingleUse", # accepts SingleUse, Storage
1133
+ # key: "ApiKey",
1134
+ # })
1135
+ #
1136
+ # @example Response structure
1137
+ #
1138
+ # resp.pricing_bucket #=> String
1139
+ # resp.result_items #=> Array
1140
+ # resp.result_items[0].place_id #=> String
1141
+ # resp.result_items[0].place_type #=> String, one of "Country", "Region", "SubRegion", "Locality", "District", "SubDistrict", "PostalCode", "Block", "SubBlock", "Intersection", "Street", "PointOfInterest", "PointAddress", "InterpolatedAddress"
1142
+ # resp.result_items[0].title #=> String
1143
+ # resp.result_items[0].address.label #=> String
1144
+ # resp.result_items[0].address.country.code_2 #=> String
1145
+ # resp.result_items[0].address.country.code_3 #=> String
1146
+ # resp.result_items[0].address.country.name #=> String
1147
+ # resp.result_items[0].address.region.code #=> String
1148
+ # resp.result_items[0].address.region.name #=> String
1149
+ # resp.result_items[0].address.sub_region.code #=> String
1150
+ # resp.result_items[0].address.sub_region.name #=> String
1151
+ # resp.result_items[0].address.locality #=> String
1152
+ # resp.result_items[0].address.district #=> String
1153
+ # resp.result_items[0].address.sub_district #=> String
1154
+ # resp.result_items[0].address.postal_code #=> String
1155
+ # resp.result_items[0].address.block #=> String
1156
+ # resp.result_items[0].address.sub_block #=> String
1157
+ # resp.result_items[0].address.intersection #=> Array
1158
+ # resp.result_items[0].address.intersection[0] #=> String
1159
+ # resp.result_items[0].address.street #=> String
1160
+ # resp.result_items[0].address.street_components #=> Array
1161
+ # resp.result_items[0].address.street_components[0].base_name #=> String
1162
+ # resp.result_items[0].address.street_components[0].type #=> String
1163
+ # resp.result_items[0].address.street_components[0].type_placement #=> String, one of "BeforeBaseName", "AfterBaseName"
1164
+ # resp.result_items[0].address.street_components[0].type_separator #=> String
1165
+ # resp.result_items[0].address.street_components[0].prefix #=> String
1166
+ # resp.result_items[0].address.street_components[0].suffix #=> String
1167
+ # resp.result_items[0].address.street_components[0].direction #=> String
1168
+ # resp.result_items[0].address.street_components[0].language #=> String
1169
+ # resp.result_items[0].address.address_number #=> String
1170
+ # resp.result_items[0].address.building #=> String
1171
+ # resp.result_items[0].address_number_corrected #=> Boolean
1172
+ # resp.result_items[0].postal_code_details #=> Array
1173
+ # resp.result_items[0].postal_code_details[0].postal_code #=> String
1174
+ # resp.result_items[0].postal_code_details[0].postal_authority #=> String, one of "Usps"
1175
+ # resp.result_items[0].postal_code_details[0].postal_code_type #=> String, one of "UspsZip", "UspsZipPlus4"
1176
+ # resp.result_items[0].postal_code_details[0].usps_zip.zip_classification_code #=> String, one of "Military", "PostOfficeBoxes", "Unique"
1177
+ # resp.result_items[0].postal_code_details[0].usps_zip_plus_4.record_type_code #=> String, one of "Firm", "General", "HighRise", "PostOfficeBox", "Rural", "Street"
1178
+ # resp.result_items[0].position #=> Array
1179
+ # resp.result_items[0].position[0] #=> Float
1180
+ # resp.result_items[0].distance #=> Integer
1181
+ # resp.result_items[0].map_view #=> Array
1182
+ # resp.result_items[0].map_view[0] #=> Float
1183
+ # resp.result_items[0].categories #=> Array
1184
+ # resp.result_items[0].categories[0].id #=> String
1185
+ # resp.result_items[0].categories[0].name #=> String
1186
+ # resp.result_items[0].categories[0].localized_name #=> String
1187
+ # resp.result_items[0].categories[0].primary #=> Boolean
1188
+ # resp.result_items[0].food_types #=> Array
1189
+ # resp.result_items[0].food_types[0].localized_name #=> String
1190
+ # resp.result_items[0].food_types[0].id #=> String
1191
+ # resp.result_items[0].food_types[0].primary #=> Boolean
1192
+ # resp.result_items[0].access_points #=> Array
1193
+ # resp.result_items[0].access_points[0].position #=> Array
1194
+ # resp.result_items[0].access_points[0].position[0] #=> Float
1195
+ # resp.result_items[0].time_zone.name #=> String
1196
+ # resp.result_items[0].time_zone.offset #=> String
1197
+ # resp.result_items[0].time_zone.offset_seconds #=> Integer
1198
+ # resp.result_items[0].political_view #=> String
1199
+ #
1200
+ # @see http://docs.aws.amazon.com/goto/WebAPI/geo-places-2020-11-19/ReverseGeocode AWS API Documentation
1201
+ #
1202
+ # @overload reverse_geocode(params = {})
1203
+ # @param [Hash] params ({})
1204
+ def reverse_geocode(params = {}, options = {})
1205
+ req = build_request(:reverse_geocode, params)
1206
+ req.send_request(options)
1207
+ end
1208
+
1209
+ # Search nearby a specified location.
1210
+ #
1211
+ # @option params [required, Array<Float>] :query_position
1212
+ # The position, in `[lng, lat]` for which you are querying nearby
1213
+ # resultsfor. Results closer to the position will be ranked higher then
1214
+ # results further away from the position
1215
+ #
1216
+ # @option params [Integer] :query_radius
1217
+ # The maximum distance in meters from the QueryPosition from which a
1218
+ # result will be returned.
1219
+ #
1220
+ # @option params [Integer] :max_results
1221
+ # An optional limit for the number of results returned in a single call.
1222
+ #
1223
+ # @option params [Types::SearchNearbyFilter] :filter
1224
+ # A structure which contains a set of inclusion/exclusion properties
1225
+ # that results must posses in order to be returned as a result.
1226
+ #
1227
+ # @option params [Array<String>] :additional_features
1228
+ # A list of optional additional parameters, such as time zone, that can
1229
+ # be requested for each result.
1230
+ #
1231
+ # @option params [String] :language
1232
+ # A list of [BCP 47][1] compliant language codes for the results to be
1233
+ # rendered in. If there is no data for the result in the requested
1234
+ # language, data will be returned in the default language for the entry.
1235
+ #
1236
+ #
1237
+ #
1238
+ # [1]: https://en.wikipedia.org/wiki/IETF_language_tag
1239
+ #
1240
+ # @option params [String] :political_view
1241
+ # The alpha-2 or alpha-3 character code for the political view of a
1242
+ # country. The political view applies to the results of the request to
1243
+ # represent unresolved territorial claims through the point of view of
1244
+ # the specified country.
1245
+ #
1246
+ # @option params [String] :intended_use
1247
+ # Indicates if the results will be stored. Defaults to `SingleUse`, if
1248
+ # left empty.
1249
+ #
1250
+ # @option params [String] :next_token
1251
+ # If `nextToken` is returned, there are more results available. The
1252
+ # value of `nextToken` is a unique pagination token for each page.
1253
+ #
1254
+ # @option params [String] :key
1255
+ # Optional: The API key to be used for authorization. Either an API key
1256
+ # or valid SigV4 signature must be provided when making a request.
1257
+ #
1258
+ # @return [Types::SearchNearbyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1259
+ #
1260
+ # * {Types::SearchNearbyResponse#pricing_bucket #pricing_bucket} => String
1261
+ # * {Types::SearchNearbyResponse#result_items #result_items} => Array&lt;Types::SearchNearbyResultItem&gt;
1262
+ # * {Types::SearchNearbyResponse#next_token #next_token} => String
1263
+ #
1264
+ # @example Request syntax with placeholder values
1265
+ #
1266
+ # resp = client.search_nearby({
1267
+ # query_position: [1.0], # required
1268
+ # query_radius: 1,
1269
+ # max_results: 1,
1270
+ # filter: {
1271
+ # bounding_box: [1.0],
1272
+ # include_countries: ["CountryCode"],
1273
+ # include_categories: ["FilterCategoryListMemberString"],
1274
+ # exclude_categories: ["FilterCategoryListMemberString"],
1275
+ # include_business_chains: ["FilterBusinessChainListMemberString"],
1276
+ # exclude_business_chains: ["FilterBusinessChainListMemberString"],
1277
+ # include_food_types: ["FilterFoodTypeListMemberString"],
1278
+ # exclude_food_types: ["FilterFoodTypeListMemberString"],
1279
+ # },
1280
+ # additional_features: ["TimeZone"], # accepts TimeZone, Phonemes, Access, Contact
1281
+ # language: "LanguageTag",
1282
+ # political_view: "CountryCode",
1283
+ # intended_use: "SingleUse", # accepts SingleUse, Storage
1284
+ # next_token: "Token",
1285
+ # key: "ApiKey",
1286
+ # })
1287
+ #
1288
+ # @example Response structure
1289
+ #
1290
+ # resp.pricing_bucket #=> String
1291
+ # resp.result_items #=> Array
1292
+ # resp.result_items[0].place_id #=> String
1293
+ # resp.result_items[0].place_type #=> String, one of "Country", "Region", "SubRegion", "Locality", "District", "SubDistrict", "PostalCode", "Block", "SubBlock", "Intersection", "Street", "PointOfInterest", "PointAddress", "InterpolatedAddress"
1294
+ # resp.result_items[0].title #=> String
1295
+ # resp.result_items[0].address.label #=> String
1296
+ # resp.result_items[0].address.country.code_2 #=> String
1297
+ # resp.result_items[0].address.country.code_3 #=> String
1298
+ # resp.result_items[0].address.country.name #=> String
1299
+ # resp.result_items[0].address.region.code #=> String
1300
+ # resp.result_items[0].address.region.name #=> String
1301
+ # resp.result_items[0].address.sub_region.code #=> String
1302
+ # resp.result_items[0].address.sub_region.name #=> String
1303
+ # resp.result_items[0].address.locality #=> String
1304
+ # resp.result_items[0].address.district #=> String
1305
+ # resp.result_items[0].address.sub_district #=> String
1306
+ # resp.result_items[0].address.postal_code #=> String
1307
+ # resp.result_items[0].address.block #=> String
1308
+ # resp.result_items[0].address.sub_block #=> String
1309
+ # resp.result_items[0].address.intersection #=> Array
1310
+ # resp.result_items[0].address.intersection[0] #=> String
1311
+ # resp.result_items[0].address.street #=> String
1312
+ # resp.result_items[0].address.street_components #=> Array
1313
+ # resp.result_items[0].address.street_components[0].base_name #=> String
1314
+ # resp.result_items[0].address.street_components[0].type #=> String
1315
+ # resp.result_items[0].address.street_components[0].type_placement #=> String, one of "BeforeBaseName", "AfterBaseName"
1316
+ # resp.result_items[0].address.street_components[0].type_separator #=> String
1317
+ # resp.result_items[0].address.street_components[0].prefix #=> String
1318
+ # resp.result_items[0].address.street_components[0].suffix #=> String
1319
+ # resp.result_items[0].address.street_components[0].direction #=> String
1320
+ # resp.result_items[0].address.street_components[0].language #=> String
1321
+ # resp.result_items[0].address.address_number #=> String
1322
+ # resp.result_items[0].address.building #=> String
1323
+ # resp.result_items[0].address_number_corrected #=> Boolean
1324
+ # resp.result_items[0].position #=> Array
1325
+ # resp.result_items[0].position[0] #=> Float
1326
+ # resp.result_items[0].distance #=> Integer
1327
+ # resp.result_items[0].map_view #=> Array
1328
+ # resp.result_items[0].map_view[0] #=> Float
1329
+ # resp.result_items[0].categories #=> Array
1330
+ # resp.result_items[0].categories[0].id #=> String
1331
+ # resp.result_items[0].categories[0].name #=> String
1332
+ # resp.result_items[0].categories[0].localized_name #=> String
1333
+ # resp.result_items[0].categories[0].primary #=> Boolean
1334
+ # resp.result_items[0].food_types #=> Array
1335
+ # resp.result_items[0].food_types[0].localized_name #=> String
1336
+ # resp.result_items[0].food_types[0].id #=> String
1337
+ # resp.result_items[0].food_types[0].primary #=> Boolean
1338
+ # resp.result_items[0].business_chains #=> Array
1339
+ # resp.result_items[0].business_chains[0].name #=> String
1340
+ # resp.result_items[0].business_chains[0].id #=> String
1341
+ # resp.result_items[0].contacts.phones #=> Array
1342
+ # resp.result_items[0].contacts.phones[0].label #=> String
1343
+ # resp.result_items[0].contacts.phones[0].value #=> String
1344
+ # resp.result_items[0].contacts.phones[0].categories #=> Array
1345
+ # resp.result_items[0].contacts.phones[0].categories[0].id #=> String
1346
+ # resp.result_items[0].contacts.phones[0].categories[0].name #=> String
1347
+ # resp.result_items[0].contacts.phones[0].categories[0].localized_name #=> String
1348
+ # resp.result_items[0].contacts.phones[0].categories[0].primary #=> Boolean
1349
+ # resp.result_items[0].contacts.faxes #=> Array
1350
+ # resp.result_items[0].contacts.faxes[0].label #=> String
1351
+ # resp.result_items[0].contacts.faxes[0].value #=> String
1352
+ # resp.result_items[0].contacts.faxes[0].categories #=> Array
1353
+ # resp.result_items[0].contacts.faxes[0].categories[0].id #=> String
1354
+ # resp.result_items[0].contacts.faxes[0].categories[0].name #=> String
1355
+ # resp.result_items[0].contacts.faxes[0].categories[0].localized_name #=> String
1356
+ # resp.result_items[0].contacts.faxes[0].categories[0].primary #=> Boolean
1357
+ # resp.result_items[0].contacts.websites #=> Array
1358
+ # resp.result_items[0].contacts.websites[0].label #=> String
1359
+ # resp.result_items[0].contacts.websites[0].value #=> String
1360
+ # resp.result_items[0].contacts.websites[0].categories #=> Array
1361
+ # resp.result_items[0].contacts.websites[0].categories[0].id #=> String
1362
+ # resp.result_items[0].contacts.websites[0].categories[0].name #=> String
1363
+ # resp.result_items[0].contacts.websites[0].categories[0].localized_name #=> String
1364
+ # resp.result_items[0].contacts.websites[0].categories[0].primary #=> Boolean
1365
+ # resp.result_items[0].contacts.emails #=> Array
1366
+ # resp.result_items[0].contacts.emails[0].label #=> String
1367
+ # resp.result_items[0].contacts.emails[0].value #=> String
1368
+ # resp.result_items[0].contacts.emails[0].categories #=> Array
1369
+ # resp.result_items[0].contacts.emails[0].categories[0].id #=> String
1370
+ # resp.result_items[0].contacts.emails[0].categories[0].name #=> String
1371
+ # resp.result_items[0].contacts.emails[0].categories[0].localized_name #=> String
1372
+ # resp.result_items[0].contacts.emails[0].categories[0].primary #=> Boolean
1373
+ # resp.result_items[0].opening_hours #=> Array
1374
+ # resp.result_items[0].opening_hours[0].display #=> Array
1375
+ # resp.result_items[0].opening_hours[0].display[0] #=> String
1376
+ # resp.result_items[0].opening_hours[0].open_now #=> Boolean
1377
+ # resp.result_items[0].opening_hours[0].components #=> Array
1378
+ # resp.result_items[0].opening_hours[0].components[0].open_time #=> String
1379
+ # resp.result_items[0].opening_hours[0].components[0].open_duration #=> String
1380
+ # resp.result_items[0].opening_hours[0].components[0].recurrence #=> String
1381
+ # resp.result_items[0].opening_hours[0].categories #=> Array
1382
+ # resp.result_items[0].opening_hours[0].categories[0].id #=> String
1383
+ # resp.result_items[0].opening_hours[0].categories[0].name #=> String
1384
+ # resp.result_items[0].opening_hours[0].categories[0].localized_name #=> String
1385
+ # resp.result_items[0].opening_hours[0].categories[0].primary #=> Boolean
1386
+ # resp.result_items[0].access_points #=> Array
1387
+ # resp.result_items[0].access_points[0].position #=> Array
1388
+ # resp.result_items[0].access_points[0].position[0] #=> Float
1389
+ # resp.result_items[0].access_restrictions #=> Array
1390
+ # resp.result_items[0].access_restrictions[0].restricted #=> Boolean
1391
+ # resp.result_items[0].access_restrictions[0].categories #=> Array
1392
+ # resp.result_items[0].access_restrictions[0].categories[0].id #=> String
1393
+ # resp.result_items[0].access_restrictions[0].categories[0].name #=> String
1394
+ # resp.result_items[0].access_restrictions[0].categories[0].localized_name #=> String
1395
+ # resp.result_items[0].access_restrictions[0].categories[0].primary #=> Boolean
1396
+ # resp.result_items[0].time_zone.name #=> String
1397
+ # resp.result_items[0].time_zone.offset #=> String
1398
+ # resp.result_items[0].time_zone.offset_seconds #=> Integer
1399
+ # resp.result_items[0].political_view #=> String
1400
+ # resp.result_items[0].phonemes.title #=> Array
1401
+ # resp.result_items[0].phonemes.title[0].value #=> String
1402
+ # resp.result_items[0].phonemes.title[0].language #=> String
1403
+ # resp.result_items[0].phonemes.title[0].preferred #=> Boolean
1404
+ # resp.result_items[0].phonemes.address.country #=> Array
1405
+ # resp.result_items[0].phonemes.address.country[0].value #=> String
1406
+ # resp.result_items[0].phonemes.address.country[0].language #=> String
1407
+ # resp.result_items[0].phonemes.address.country[0].preferred #=> Boolean
1408
+ # resp.result_items[0].phonemes.address.region #=> Array
1409
+ # resp.result_items[0].phonemes.address.region[0].value #=> String
1410
+ # resp.result_items[0].phonemes.address.region[0].language #=> String
1411
+ # resp.result_items[0].phonemes.address.region[0].preferred #=> Boolean
1412
+ # resp.result_items[0].phonemes.address.sub_region #=> Array
1413
+ # resp.result_items[0].phonemes.address.sub_region[0].value #=> String
1414
+ # resp.result_items[0].phonemes.address.sub_region[0].language #=> String
1415
+ # resp.result_items[0].phonemes.address.sub_region[0].preferred #=> Boolean
1416
+ # resp.result_items[0].phonemes.address.locality #=> Array
1417
+ # resp.result_items[0].phonemes.address.locality[0].value #=> String
1418
+ # resp.result_items[0].phonemes.address.locality[0].language #=> String
1419
+ # resp.result_items[0].phonemes.address.locality[0].preferred #=> Boolean
1420
+ # resp.result_items[0].phonemes.address.district #=> Array
1421
+ # resp.result_items[0].phonemes.address.district[0].value #=> String
1422
+ # resp.result_items[0].phonemes.address.district[0].language #=> String
1423
+ # resp.result_items[0].phonemes.address.district[0].preferred #=> Boolean
1424
+ # resp.result_items[0].phonemes.address.sub_district #=> Array
1425
+ # resp.result_items[0].phonemes.address.sub_district[0].value #=> String
1426
+ # resp.result_items[0].phonemes.address.sub_district[0].language #=> String
1427
+ # resp.result_items[0].phonemes.address.sub_district[0].preferred #=> Boolean
1428
+ # resp.result_items[0].phonemes.address.block #=> Array
1429
+ # resp.result_items[0].phonemes.address.block[0].value #=> String
1430
+ # resp.result_items[0].phonemes.address.block[0].language #=> String
1431
+ # resp.result_items[0].phonemes.address.block[0].preferred #=> Boolean
1432
+ # resp.result_items[0].phonemes.address.sub_block #=> Array
1433
+ # resp.result_items[0].phonemes.address.sub_block[0].value #=> String
1434
+ # resp.result_items[0].phonemes.address.sub_block[0].language #=> String
1435
+ # resp.result_items[0].phonemes.address.sub_block[0].preferred #=> Boolean
1436
+ # resp.result_items[0].phonemes.address.street #=> Array
1437
+ # resp.result_items[0].phonemes.address.street[0].value #=> String
1438
+ # resp.result_items[0].phonemes.address.street[0].language #=> String
1439
+ # resp.result_items[0].phonemes.address.street[0].preferred #=> Boolean
1440
+ # resp.next_token #=> String
1441
+ #
1442
+ # @see http://docs.aws.amazon.com/goto/WebAPI/geo-places-2020-11-19/SearchNearby AWS API Documentation
1443
+ #
1444
+ # @overload search_nearby(params = {})
1445
+ # @param [Hash] params ({})
1446
+ def search_nearby(params = {}, options = {})
1447
+ req = build_request(:search_nearby, params)
1448
+ req.send_request(options)
1449
+ end
1450
+
1451
+ # Use the `SearchText` operation to search for geocode and place
1452
+ # information. You can then complete a follow-up query suggested from
1453
+ # the `Suggest` API via a query id.
1454
+ #
1455
+ # @option params [String] :query_text
1456
+ # The free-form text query to match addresses against. This is usually a
1457
+ # partially typed address from an end user in an address box or form.
1458
+ #
1459
+ # @option params [String] :query_id
1460
+ # The query Id.
1461
+ #
1462
+ # @option params [Integer] :max_results
1463
+ # An optional limit for the number of results returned in a single call.
1464
+ #
1465
+ # @option params [Array<Float>] :bias_position
1466
+ # The position, in longitude and latitude, that the results should be
1467
+ # close to. Typically, place results returned are ranked higher the
1468
+ # closer they are to this position. Stored in `[lng, lat]` and in the
1469
+ # WSG84 format.
1470
+ #
1471
+ # <note markdown="1"> The fields `BiasPosition`, `FilterBoundingBox`, and `FilterCircle` are
1472
+ # mutually exclusive.
1473
+ #
1474
+ # </note>
1475
+ #
1476
+ # @option params [Types::SearchTextFilter] :filter
1477
+ # A structure which contains a set of inclusion/exclusion properties
1478
+ # that results must posses in order to be returned as a result.
1479
+ #
1480
+ # @option params [Array<String>] :additional_features
1481
+ # A list of optional additional parameters, such as time zone, that can
1482
+ # be requested for each result.
1483
+ #
1484
+ # @option params [String] :language
1485
+ # A list of [BCP 47][1] compliant language codes for the results to be
1486
+ # rendered in. If there is no data for the result in the requested
1487
+ # language, data will be returned in the default language for the entry.
1488
+ #
1489
+ #
1490
+ #
1491
+ # [1]: https://en.wikipedia.org/wiki/IETF_language_tag
1492
+ #
1493
+ # @option params [String] :political_view
1494
+ # The alpha-2 or alpha-3 character code for the political view of a
1495
+ # country. The political view applies to the results of the request to
1496
+ # represent unresolved territorial claims through the point of view of
1497
+ # the specified country.
1498
+ #
1499
+ # @option params [String] :intended_use
1500
+ # Indicates if the results will be stored. Defaults to `SingleUse`, if
1501
+ # left empty.
1502
+ #
1503
+ # @option params [String] :next_token
1504
+ # If `nextToken` is returned, there are more results available. The
1505
+ # value of `nextToken` is a unique pagination token for each page.
1506
+ #
1507
+ # @option params [String] :key
1508
+ # Optional: The API key to be used for authorization. Either an API key
1509
+ # or valid SigV4 signature must be provided when making a request.
1510
+ #
1511
+ # @return [Types::SearchTextResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1512
+ #
1513
+ # * {Types::SearchTextResponse#pricing_bucket #pricing_bucket} => String
1514
+ # * {Types::SearchTextResponse#result_items #result_items} => Array&lt;Types::SearchTextResultItem&gt;
1515
+ # * {Types::SearchTextResponse#next_token #next_token} => String
1516
+ #
1517
+ # @example Request syntax with placeholder values
1518
+ #
1519
+ # resp = client.search_text({
1520
+ # query_text: "SearchTextRequestQueryTextString",
1521
+ # query_id: "SearchTextRequestQueryIdString",
1522
+ # max_results: 1,
1523
+ # bias_position: [1.0],
1524
+ # filter: {
1525
+ # bounding_box: [1.0],
1526
+ # circle: {
1527
+ # center: [1.0], # required
1528
+ # radius: 1, # required
1529
+ # },
1530
+ # include_countries: ["CountryCode"],
1531
+ # },
1532
+ # additional_features: ["TimeZone"], # accepts TimeZone, Phonemes, Access, Contact
1533
+ # language: "LanguageTag",
1534
+ # political_view: "CountryCode",
1535
+ # intended_use: "SingleUse", # accepts SingleUse, Storage
1536
+ # next_token: "Token",
1537
+ # key: "ApiKey",
1538
+ # })
1539
+ #
1540
+ # @example Response structure
1541
+ #
1542
+ # resp.pricing_bucket #=> String
1543
+ # resp.result_items #=> Array
1544
+ # resp.result_items[0].place_id #=> String
1545
+ # resp.result_items[0].place_type #=> String, one of "Country", "Region", "SubRegion", "Locality", "District", "SubDistrict", "PostalCode", "Block", "SubBlock", "Intersection", "Street", "PointOfInterest", "PointAddress", "InterpolatedAddress"
1546
+ # resp.result_items[0].title #=> String
1547
+ # resp.result_items[0].address.label #=> String
1548
+ # resp.result_items[0].address.country.code_2 #=> String
1549
+ # resp.result_items[0].address.country.code_3 #=> String
1550
+ # resp.result_items[0].address.country.name #=> String
1551
+ # resp.result_items[0].address.region.code #=> String
1552
+ # resp.result_items[0].address.region.name #=> String
1553
+ # resp.result_items[0].address.sub_region.code #=> String
1554
+ # resp.result_items[0].address.sub_region.name #=> String
1555
+ # resp.result_items[0].address.locality #=> String
1556
+ # resp.result_items[0].address.district #=> String
1557
+ # resp.result_items[0].address.sub_district #=> String
1558
+ # resp.result_items[0].address.postal_code #=> String
1559
+ # resp.result_items[0].address.block #=> String
1560
+ # resp.result_items[0].address.sub_block #=> String
1561
+ # resp.result_items[0].address.intersection #=> Array
1562
+ # resp.result_items[0].address.intersection[0] #=> String
1563
+ # resp.result_items[0].address.street #=> String
1564
+ # resp.result_items[0].address.street_components #=> Array
1565
+ # resp.result_items[0].address.street_components[0].base_name #=> String
1566
+ # resp.result_items[0].address.street_components[0].type #=> String
1567
+ # resp.result_items[0].address.street_components[0].type_placement #=> String, one of "BeforeBaseName", "AfterBaseName"
1568
+ # resp.result_items[0].address.street_components[0].type_separator #=> String
1569
+ # resp.result_items[0].address.street_components[0].prefix #=> String
1570
+ # resp.result_items[0].address.street_components[0].suffix #=> String
1571
+ # resp.result_items[0].address.street_components[0].direction #=> String
1572
+ # resp.result_items[0].address.street_components[0].language #=> String
1573
+ # resp.result_items[0].address.address_number #=> String
1574
+ # resp.result_items[0].address.building #=> String
1575
+ # resp.result_items[0].address_number_corrected #=> Boolean
1576
+ # resp.result_items[0].position #=> Array
1577
+ # resp.result_items[0].position[0] #=> Float
1578
+ # resp.result_items[0].distance #=> Integer
1579
+ # resp.result_items[0].map_view #=> Array
1580
+ # resp.result_items[0].map_view[0] #=> Float
1581
+ # resp.result_items[0].categories #=> Array
1582
+ # resp.result_items[0].categories[0].id #=> String
1583
+ # resp.result_items[0].categories[0].name #=> String
1584
+ # resp.result_items[0].categories[0].localized_name #=> String
1585
+ # resp.result_items[0].categories[0].primary #=> Boolean
1586
+ # resp.result_items[0].food_types #=> Array
1587
+ # resp.result_items[0].food_types[0].localized_name #=> String
1588
+ # resp.result_items[0].food_types[0].id #=> String
1589
+ # resp.result_items[0].food_types[0].primary #=> Boolean
1590
+ # resp.result_items[0].business_chains #=> Array
1591
+ # resp.result_items[0].business_chains[0].name #=> String
1592
+ # resp.result_items[0].business_chains[0].id #=> String
1593
+ # resp.result_items[0].contacts.phones #=> Array
1594
+ # resp.result_items[0].contacts.phones[0].label #=> String
1595
+ # resp.result_items[0].contacts.phones[0].value #=> String
1596
+ # resp.result_items[0].contacts.phones[0].categories #=> Array
1597
+ # resp.result_items[0].contacts.phones[0].categories[0].id #=> String
1598
+ # resp.result_items[0].contacts.phones[0].categories[0].name #=> String
1599
+ # resp.result_items[0].contacts.phones[0].categories[0].localized_name #=> String
1600
+ # resp.result_items[0].contacts.phones[0].categories[0].primary #=> Boolean
1601
+ # resp.result_items[0].contacts.faxes #=> Array
1602
+ # resp.result_items[0].contacts.faxes[0].label #=> String
1603
+ # resp.result_items[0].contacts.faxes[0].value #=> String
1604
+ # resp.result_items[0].contacts.faxes[0].categories #=> Array
1605
+ # resp.result_items[0].contacts.faxes[0].categories[0].id #=> String
1606
+ # resp.result_items[0].contacts.faxes[0].categories[0].name #=> String
1607
+ # resp.result_items[0].contacts.faxes[0].categories[0].localized_name #=> String
1608
+ # resp.result_items[0].contacts.faxes[0].categories[0].primary #=> Boolean
1609
+ # resp.result_items[0].contacts.websites #=> Array
1610
+ # resp.result_items[0].contacts.websites[0].label #=> String
1611
+ # resp.result_items[0].contacts.websites[0].value #=> String
1612
+ # resp.result_items[0].contacts.websites[0].categories #=> Array
1613
+ # resp.result_items[0].contacts.websites[0].categories[0].id #=> String
1614
+ # resp.result_items[0].contacts.websites[0].categories[0].name #=> String
1615
+ # resp.result_items[0].contacts.websites[0].categories[0].localized_name #=> String
1616
+ # resp.result_items[0].contacts.websites[0].categories[0].primary #=> Boolean
1617
+ # resp.result_items[0].contacts.emails #=> Array
1618
+ # resp.result_items[0].contacts.emails[0].label #=> String
1619
+ # resp.result_items[0].contacts.emails[0].value #=> String
1620
+ # resp.result_items[0].contacts.emails[0].categories #=> Array
1621
+ # resp.result_items[0].contacts.emails[0].categories[0].id #=> String
1622
+ # resp.result_items[0].contacts.emails[0].categories[0].name #=> String
1623
+ # resp.result_items[0].contacts.emails[0].categories[0].localized_name #=> String
1624
+ # resp.result_items[0].contacts.emails[0].categories[0].primary #=> Boolean
1625
+ # resp.result_items[0].opening_hours #=> Array
1626
+ # resp.result_items[0].opening_hours[0].display #=> Array
1627
+ # resp.result_items[0].opening_hours[0].display[0] #=> String
1628
+ # resp.result_items[0].opening_hours[0].open_now #=> Boolean
1629
+ # resp.result_items[0].opening_hours[0].components #=> Array
1630
+ # resp.result_items[0].opening_hours[0].components[0].open_time #=> String
1631
+ # resp.result_items[0].opening_hours[0].components[0].open_duration #=> String
1632
+ # resp.result_items[0].opening_hours[0].components[0].recurrence #=> String
1633
+ # resp.result_items[0].opening_hours[0].categories #=> Array
1634
+ # resp.result_items[0].opening_hours[0].categories[0].id #=> String
1635
+ # resp.result_items[0].opening_hours[0].categories[0].name #=> String
1636
+ # resp.result_items[0].opening_hours[0].categories[0].localized_name #=> String
1637
+ # resp.result_items[0].opening_hours[0].categories[0].primary #=> Boolean
1638
+ # resp.result_items[0].access_points #=> Array
1639
+ # resp.result_items[0].access_points[0].position #=> Array
1640
+ # resp.result_items[0].access_points[0].position[0] #=> Float
1641
+ # resp.result_items[0].access_restrictions #=> Array
1642
+ # resp.result_items[0].access_restrictions[0].restricted #=> Boolean
1643
+ # resp.result_items[0].access_restrictions[0].categories #=> Array
1644
+ # resp.result_items[0].access_restrictions[0].categories[0].id #=> String
1645
+ # resp.result_items[0].access_restrictions[0].categories[0].name #=> String
1646
+ # resp.result_items[0].access_restrictions[0].categories[0].localized_name #=> String
1647
+ # resp.result_items[0].access_restrictions[0].categories[0].primary #=> Boolean
1648
+ # resp.result_items[0].time_zone.name #=> String
1649
+ # resp.result_items[0].time_zone.offset #=> String
1650
+ # resp.result_items[0].time_zone.offset_seconds #=> Integer
1651
+ # resp.result_items[0].political_view #=> String
1652
+ # resp.result_items[0].phonemes.title #=> Array
1653
+ # resp.result_items[0].phonemes.title[0].value #=> String
1654
+ # resp.result_items[0].phonemes.title[0].language #=> String
1655
+ # resp.result_items[0].phonemes.title[0].preferred #=> Boolean
1656
+ # resp.result_items[0].phonemes.address.country #=> Array
1657
+ # resp.result_items[0].phonemes.address.country[0].value #=> String
1658
+ # resp.result_items[0].phonemes.address.country[0].language #=> String
1659
+ # resp.result_items[0].phonemes.address.country[0].preferred #=> Boolean
1660
+ # resp.result_items[0].phonemes.address.region #=> Array
1661
+ # resp.result_items[0].phonemes.address.region[0].value #=> String
1662
+ # resp.result_items[0].phonemes.address.region[0].language #=> String
1663
+ # resp.result_items[0].phonemes.address.region[0].preferred #=> Boolean
1664
+ # resp.result_items[0].phonemes.address.sub_region #=> Array
1665
+ # resp.result_items[0].phonemes.address.sub_region[0].value #=> String
1666
+ # resp.result_items[0].phonemes.address.sub_region[0].language #=> String
1667
+ # resp.result_items[0].phonemes.address.sub_region[0].preferred #=> Boolean
1668
+ # resp.result_items[0].phonemes.address.locality #=> Array
1669
+ # resp.result_items[0].phonemes.address.locality[0].value #=> String
1670
+ # resp.result_items[0].phonemes.address.locality[0].language #=> String
1671
+ # resp.result_items[0].phonemes.address.locality[0].preferred #=> Boolean
1672
+ # resp.result_items[0].phonemes.address.district #=> Array
1673
+ # resp.result_items[0].phonemes.address.district[0].value #=> String
1674
+ # resp.result_items[0].phonemes.address.district[0].language #=> String
1675
+ # resp.result_items[0].phonemes.address.district[0].preferred #=> Boolean
1676
+ # resp.result_items[0].phonemes.address.sub_district #=> Array
1677
+ # resp.result_items[0].phonemes.address.sub_district[0].value #=> String
1678
+ # resp.result_items[0].phonemes.address.sub_district[0].language #=> String
1679
+ # resp.result_items[0].phonemes.address.sub_district[0].preferred #=> Boolean
1680
+ # resp.result_items[0].phonemes.address.block #=> Array
1681
+ # resp.result_items[0].phonemes.address.block[0].value #=> String
1682
+ # resp.result_items[0].phonemes.address.block[0].language #=> String
1683
+ # resp.result_items[0].phonemes.address.block[0].preferred #=> Boolean
1684
+ # resp.result_items[0].phonemes.address.sub_block #=> Array
1685
+ # resp.result_items[0].phonemes.address.sub_block[0].value #=> String
1686
+ # resp.result_items[0].phonemes.address.sub_block[0].language #=> String
1687
+ # resp.result_items[0].phonemes.address.sub_block[0].preferred #=> Boolean
1688
+ # resp.result_items[0].phonemes.address.street #=> Array
1689
+ # resp.result_items[0].phonemes.address.street[0].value #=> String
1690
+ # resp.result_items[0].phonemes.address.street[0].language #=> String
1691
+ # resp.result_items[0].phonemes.address.street[0].preferred #=> Boolean
1692
+ # resp.next_token #=> String
1693
+ #
1694
+ # @see http://docs.aws.amazon.com/goto/WebAPI/geo-places-2020-11-19/SearchText AWS API Documentation
1695
+ #
1696
+ # @overload search_text(params = {})
1697
+ # @param [Hash] params ({})
1698
+ def search_text(params = {}, options = {})
1699
+ req = build_request(:search_text, params)
1700
+ req.send_request(options)
1701
+ end
1702
+
1703
+ # The `Suggest` operation finds addresses or place candidates based on
1704
+ # incomplete or misspelled queries. You then select the best query to
1705
+ # submit based on the returned results.
1706
+ #
1707
+ # @option params [required, String] :query_text
1708
+ # The free-form text query to match addresses against. This is usually a
1709
+ # partially typed address from an end user in an address box or form.
1710
+ #
1711
+ # @option params [Integer] :max_results
1712
+ # An optional limit for the number of results returned in a single call.
1713
+ #
1714
+ # @option params [Integer] :max_query_refinements
1715
+ # Maximum number of query terms to be returned for use with a search
1716
+ # text query.
1717
+ #
1718
+ # @option params [Array<Float>] :bias_position
1719
+ # The position, in longitude and latitude, that the results should be
1720
+ # close to. Typically, place results returned are ranked higher the
1721
+ # closer they are to this position. Stored in `[lng, lat]` and in the
1722
+ # WSG84 format.
1723
+ #
1724
+ # <note markdown="1"> The fields `BiasPosition`, `FilterBoundingBox`, and `FilterCircle` are
1725
+ # mutually exclusive.
1726
+ #
1727
+ # </note>
1728
+ #
1729
+ # @option params [Types::SuggestFilter] :filter
1730
+ # A structure which contains a set of inclusion/exclusion properties
1731
+ # that results must posses in order to be returned as a result.
1732
+ #
1733
+ # @option params [Array<String>] :additional_features
1734
+ # A list of optional additional parameters, such as time zone, that can
1735
+ # be requested for each result.
1736
+ #
1737
+ # @option params [String] :language
1738
+ # A list of [BCP 47][1] compliant language codes for the results to be
1739
+ # rendered in. If there is no data for the result in the requested
1740
+ # language, data will be returned in the default language for the entry.
1741
+ #
1742
+ #
1743
+ #
1744
+ # [1]: https://en.wikipedia.org/wiki/IETF_language_tag
1745
+ #
1746
+ # @option params [String] :political_view
1747
+ # The alpha-2 or alpha-3 character code for the political view of a
1748
+ # country. The political view applies to the results of the request to
1749
+ # represent unresolved territorial claims through the point of view of
1750
+ # the specified country.
1751
+ #
1752
+ # @option params [String] :intended_use
1753
+ # Indicates if the results will be stored. Defaults to `SingleUse`, if
1754
+ # left empty.
1755
+ #
1756
+ # @option params [String] :key
1757
+ # Optional: The API key to be used for authorization. Either an API key
1758
+ # or valid SigV4 signature must be provided when making a request.
1759
+ #
1760
+ # @return [Types::SuggestResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1761
+ #
1762
+ # * {Types::SuggestResponse#pricing_bucket #pricing_bucket} => String
1763
+ # * {Types::SuggestResponse#result_items #result_items} => Array&lt;Types::SuggestResultItem&gt;
1764
+ # * {Types::SuggestResponse#query_refinements #query_refinements} => Array&lt;Types::QueryRefinement&gt;
1765
+ #
1766
+ # @example Request syntax with placeholder values
1767
+ #
1768
+ # resp = client.suggest({
1769
+ # query_text: "SuggestRequestQueryTextString", # required
1770
+ # max_results: 1,
1771
+ # max_query_refinements: 1,
1772
+ # bias_position: [1.0],
1773
+ # filter: {
1774
+ # bounding_box: [1.0],
1775
+ # circle: {
1776
+ # center: [1.0], # required
1777
+ # radius: 1, # required
1778
+ # },
1779
+ # include_countries: ["CountryCode"],
1780
+ # },
1781
+ # additional_features: ["Core"], # accepts Core, TimeZone, Phonemes, Access
1782
+ # language: "LanguageTag",
1783
+ # political_view: "CountryCode",
1784
+ # intended_use: "SingleUse", # accepts SingleUse
1785
+ # key: "ApiKey",
1786
+ # })
1787
+ #
1788
+ # @example Response structure
1789
+ #
1790
+ # resp.pricing_bucket #=> String
1791
+ # resp.result_items #=> Array
1792
+ # resp.result_items[0].title #=> String
1793
+ # resp.result_items[0].suggest_result_item_type #=> String, one of "Place", "Query"
1794
+ # resp.result_items[0].place.place_id #=> String
1795
+ # resp.result_items[0].place.place_type #=> String, one of "Country", "Region", "SubRegion", "Locality", "District", "SubDistrict", "PostalCode", "Block", "SubBlock", "Intersection", "Street", "PointOfInterest", "PointAddress", "InterpolatedAddress"
1796
+ # resp.result_items[0].place.address.label #=> String
1797
+ # resp.result_items[0].place.address.country.code_2 #=> String
1798
+ # resp.result_items[0].place.address.country.code_3 #=> String
1799
+ # resp.result_items[0].place.address.country.name #=> String
1800
+ # resp.result_items[0].place.address.region.code #=> String
1801
+ # resp.result_items[0].place.address.region.name #=> String
1802
+ # resp.result_items[0].place.address.sub_region.code #=> String
1803
+ # resp.result_items[0].place.address.sub_region.name #=> String
1804
+ # resp.result_items[0].place.address.locality #=> String
1805
+ # resp.result_items[0].place.address.district #=> String
1806
+ # resp.result_items[0].place.address.sub_district #=> String
1807
+ # resp.result_items[0].place.address.postal_code #=> String
1808
+ # resp.result_items[0].place.address.block #=> String
1809
+ # resp.result_items[0].place.address.sub_block #=> String
1810
+ # resp.result_items[0].place.address.intersection #=> Array
1811
+ # resp.result_items[0].place.address.intersection[0] #=> String
1812
+ # resp.result_items[0].place.address.street #=> String
1813
+ # resp.result_items[0].place.address.street_components #=> Array
1814
+ # resp.result_items[0].place.address.street_components[0].base_name #=> String
1815
+ # resp.result_items[0].place.address.street_components[0].type #=> String
1816
+ # resp.result_items[0].place.address.street_components[0].type_placement #=> String, one of "BeforeBaseName", "AfterBaseName"
1817
+ # resp.result_items[0].place.address.street_components[0].type_separator #=> String
1818
+ # resp.result_items[0].place.address.street_components[0].prefix #=> String
1819
+ # resp.result_items[0].place.address.street_components[0].suffix #=> String
1820
+ # resp.result_items[0].place.address.street_components[0].direction #=> String
1821
+ # resp.result_items[0].place.address.street_components[0].language #=> String
1822
+ # resp.result_items[0].place.address.address_number #=> String
1823
+ # resp.result_items[0].place.address.building #=> String
1824
+ # resp.result_items[0].place.position #=> Array
1825
+ # resp.result_items[0].place.position[0] #=> Float
1826
+ # resp.result_items[0].place.distance #=> Integer
1827
+ # resp.result_items[0].place.map_view #=> Array
1828
+ # resp.result_items[0].place.map_view[0] #=> Float
1829
+ # resp.result_items[0].place.categories #=> Array
1830
+ # resp.result_items[0].place.categories[0].id #=> String
1831
+ # resp.result_items[0].place.categories[0].name #=> String
1832
+ # resp.result_items[0].place.categories[0].localized_name #=> String
1833
+ # resp.result_items[0].place.categories[0].primary #=> Boolean
1834
+ # resp.result_items[0].place.food_types #=> Array
1835
+ # resp.result_items[0].place.food_types[0].localized_name #=> String
1836
+ # resp.result_items[0].place.food_types[0].id #=> String
1837
+ # resp.result_items[0].place.food_types[0].primary #=> Boolean
1838
+ # resp.result_items[0].place.business_chains #=> Array
1839
+ # resp.result_items[0].place.business_chains[0].name #=> String
1840
+ # resp.result_items[0].place.business_chains[0].id #=> String
1841
+ # resp.result_items[0].place.access_points #=> Array
1842
+ # resp.result_items[0].place.access_points[0].position #=> Array
1843
+ # resp.result_items[0].place.access_points[0].position[0] #=> Float
1844
+ # resp.result_items[0].place.access_restrictions #=> Array
1845
+ # resp.result_items[0].place.access_restrictions[0].restricted #=> Boolean
1846
+ # resp.result_items[0].place.access_restrictions[0].categories #=> Array
1847
+ # resp.result_items[0].place.access_restrictions[0].categories[0].id #=> String
1848
+ # resp.result_items[0].place.access_restrictions[0].categories[0].name #=> String
1849
+ # resp.result_items[0].place.access_restrictions[0].categories[0].localized_name #=> String
1850
+ # resp.result_items[0].place.access_restrictions[0].categories[0].primary #=> Boolean
1851
+ # resp.result_items[0].place.time_zone.name #=> String
1852
+ # resp.result_items[0].place.time_zone.offset #=> String
1853
+ # resp.result_items[0].place.time_zone.offset_seconds #=> Integer
1854
+ # resp.result_items[0].place.political_view #=> String
1855
+ # resp.result_items[0].place.phonemes.title #=> Array
1856
+ # resp.result_items[0].place.phonemes.title[0].value #=> String
1857
+ # resp.result_items[0].place.phonemes.title[0].language #=> String
1858
+ # resp.result_items[0].place.phonemes.title[0].preferred #=> Boolean
1859
+ # resp.result_items[0].place.phonemes.address.country #=> Array
1860
+ # resp.result_items[0].place.phonemes.address.country[0].value #=> String
1861
+ # resp.result_items[0].place.phonemes.address.country[0].language #=> String
1862
+ # resp.result_items[0].place.phonemes.address.country[0].preferred #=> Boolean
1863
+ # resp.result_items[0].place.phonemes.address.region #=> Array
1864
+ # resp.result_items[0].place.phonemes.address.region[0].value #=> String
1865
+ # resp.result_items[0].place.phonemes.address.region[0].language #=> String
1866
+ # resp.result_items[0].place.phonemes.address.region[0].preferred #=> Boolean
1867
+ # resp.result_items[0].place.phonemes.address.sub_region #=> Array
1868
+ # resp.result_items[0].place.phonemes.address.sub_region[0].value #=> String
1869
+ # resp.result_items[0].place.phonemes.address.sub_region[0].language #=> String
1870
+ # resp.result_items[0].place.phonemes.address.sub_region[0].preferred #=> Boolean
1871
+ # resp.result_items[0].place.phonemes.address.locality #=> Array
1872
+ # resp.result_items[0].place.phonemes.address.locality[0].value #=> String
1873
+ # resp.result_items[0].place.phonemes.address.locality[0].language #=> String
1874
+ # resp.result_items[0].place.phonemes.address.locality[0].preferred #=> Boolean
1875
+ # resp.result_items[0].place.phonemes.address.district #=> Array
1876
+ # resp.result_items[0].place.phonemes.address.district[0].value #=> String
1877
+ # resp.result_items[0].place.phonemes.address.district[0].language #=> String
1878
+ # resp.result_items[0].place.phonemes.address.district[0].preferred #=> Boolean
1879
+ # resp.result_items[0].place.phonemes.address.sub_district #=> Array
1880
+ # resp.result_items[0].place.phonemes.address.sub_district[0].value #=> String
1881
+ # resp.result_items[0].place.phonemes.address.sub_district[0].language #=> String
1882
+ # resp.result_items[0].place.phonemes.address.sub_district[0].preferred #=> Boolean
1883
+ # resp.result_items[0].place.phonemes.address.block #=> Array
1884
+ # resp.result_items[0].place.phonemes.address.block[0].value #=> String
1885
+ # resp.result_items[0].place.phonemes.address.block[0].language #=> String
1886
+ # resp.result_items[0].place.phonemes.address.block[0].preferred #=> Boolean
1887
+ # resp.result_items[0].place.phonemes.address.sub_block #=> Array
1888
+ # resp.result_items[0].place.phonemes.address.sub_block[0].value #=> String
1889
+ # resp.result_items[0].place.phonemes.address.sub_block[0].language #=> String
1890
+ # resp.result_items[0].place.phonemes.address.sub_block[0].preferred #=> Boolean
1891
+ # resp.result_items[0].place.phonemes.address.street #=> Array
1892
+ # resp.result_items[0].place.phonemes.address.street[0].value #=> String
1893
+ # resp.result_items[0].place.phonemes.address.street[0].language #=> String
1894
+ # resp.result_items[0].place.phonemes.address.street[0].preferred #=> Boolean
1895
+ # resp.result_items[0].query.query_id #=> String
1896
+ # resp.result_items[0].query.query_type #=> String, one of "Category", "BusinessChain"
1897
+ # resp.result_items[0].highlights.title #=> Array
1898
+ # resp.result_items[0].highlights.title[0].start_index #=> Integer
1899
+ # resp.result_items[0].highlights.title[0].end_index #=> Integer
1900
+ # resp.result_items[0].highlights.title[0].value #=> String
1901
+ # resp.result_items[0].highlights.address.label #=> Array
1902
+ # resp.result_items[0].highlights.address.label[0].start_index #=> Integer
1903
+ # resp.result_items[0].highlights.address.label[0].end_index #=> Integer
1904
+ # resp.result_items[0].highlights.address.label[0].value #=> String
1905
+ # resp.query_refinements #=> Array
1906
+ # resp.query_refinements[0].refined_term #=> String
1907
+ # resp.query_refinements[0].original_term #=> String
1908
+ # resp.query_refinements[0].start_index #=> Integer
1909
+ # resp.query_refinements[0].end_index #=> Integer
1910
+ #
1911
+ # @see http://docs.aws.amazon.com/goto/WebAPI/geo-places-2020-11-19/Suggest AWS API Documentation
1912
+ #
1913
+ # @overload suggest(params = {})
1914
+ # @param [Hash] params ({})
1915
+ def suggest(params = {}, options = {})
1916
+ req = build_request(:suggest, params)
1917
+ req.send_request(options)
1918
+ end
1919
+
1920
+ # @!endgroup
1921
+
1922
+ # @param params ({})
1923
+ # @api private
1924
+ def build_request(operation_name, params = {})
1925
+ handlers = @handlers.for(operation_name)
1926
+ tracer = config.telemetry_provider.tracer_provider.tracer(
1927
+ Aws::Telemetry.module_to_tracer_name('Aws::GeoPlaces')
1928
+ )
1929
+ context = Seahorse::Client::RequestContext.new(
1930
+ operation_name: operation_name,
1931
+ operation: config.api.operation(operation_name),
1932
+ client: self,
1933
+ params: params,
1934
+ config: config,
1935
+ tracer: tracer
1936
+ )
1937
+ context[:gem_name] = 'aws-sdk-geoplaces'
1938
+ context[:gem_version] = '1.0.0'
1939
+ Seahorse::Client::Request.new(handlers, context)
1940
+ end
1941
+
1942
+ # @api private
1943
+ # @deprecated
1944
+ def waiter_names
1945
+ []
1946
+ end
1947
+
1948
+ class << self
1949
+
1950
+ # @api private
1951
+ attr_reader :identifier
1952
+
1953
+ # @api private
1954
+ def errors_module
1955
+ Errors
1956
+ end
1957
+
1958
+ end
1959
+ end
1960
+ end