aws-sdk-iotfleetwise 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,3147 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ require 'seahorse/client/plugins/content_length.rb'
11
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
12
+ require 'aws-sdk-core/plugins/logging.rb'
13
+ require 'aws-sdk-core/plugins/param_converter.rb'
14
+ require 'aws-sdk-core/plugins/param_validator.rb'
15
+ require 'aws-sdk-core/plugins/user_agent.rb'
16
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
17
+ require 'aws-sdk-core/plugins/retry_errors.rb'
18
+ require 'aws-sdk-core/plugins/global_configuration.rb'
19
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
20
+ require 'aws-sdk-core/plugins/endpoint_discovery.rb'
21
+ require 'aws-sdk-core/plugins/endpoint_pattern.rb'
22
+ require 'aws-sdk-core/plugins/response_paging.rb'
23
+ require 'aws-sdk-core/plugins/stub_responses.rb'
24
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
25
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
26
+ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
+ require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
+ require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
+ require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
32
+ require 'aws-sdk-core/plugins/recursion_detection.rb'
33
+ require 'aws-sdk-core/plugins/signature_v4.rb'
34
+ require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
35
+
36
+ Aws::Plugins::GlobalConfiguration.add_identifier(:iotfleetwise)
37
+
38
+ module Aws::IoTFleetWise
39
+ # An API client for IoTFleetWise. To construct a client, you need to configure a `:region` and `:credentials`.
40
+ #
41
+ # client = Aws::IoTFleetWise::Client.new(
42
+ # region: region_name,
43
+ # credentials: credentials,
44
+ # # ...
45
+ # )
46
+ #
47
+ # For details on configuring region and credentials see
48
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
49
+ #
50
+ # See {#initialize} for a full list of supported configuration options.
51
+ class Client < Seahorse::Client::Base
52
+
53
+ include Aws::ClientStubs
54
+
55
+ @identifier = :iotfleetwise
56
+
57
+ set_api(ClientApi::API)
58
+
59
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
60
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
61
+ add_plugin(Aws::Plugins::Logging)
62
+ add_plugin(Aws::Plugins::ParamConverter)
63
+ add_plugin(Aws::Plugins::ParamValidator)
64
+ add_plugin(Aws::Plugins::UserAgent)
65
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
66
+ add_plugin(Aws::Plugins::RetryErrors)
67
+ add_plugin(Aws::Plugins::GlobalConfiguration)
68
+ add_plugin(Aws::Plugins::RegionalEndpoint)
69
+ add_plugin(Aws::Plugins::EndpointDiscovery)
70
+ add_plugin(Aws::Plugins::EndpointPattern)
71
+ add_plugin(Aws::Plugins::ResponsePaging)
72
+ add_plugin(Aws::Plugins::StubResponses)
73
+ add_plugin(Aws::Plugins::IdempotencyToken)
74
+ add_plugin(Aws::Plugins::JsonvalueConverter)
75
+ add_plugin(Aws::Plugins::ClientMetricsPlugin)
76
+ add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
77
+ add_plugin(Aws::Plugins::TransferEncoding)
78
+ add_plugin(Aws::Plugins::HttpChecksum)
79
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
80
+ add_plugin(Aws::Plugins::DefaultsMode)
81
+ add_plugin(Aws::Plugins::RecursionDetection)
82
+ add_plugin(Aws::Plugins::SignatureV4)
83
+ add_plugin(Aws::Plugins::Protocols::JsonRpc)
84
+
85
+ # @overload initialize(options)
86
+ # @param [Hash] options
87
+ # @option options [required, Aws::CredentialProvider] :credentials
88
+ # Your AWS credentials. This can be an instance of any one of the
89
+ # following classes:
90
+ #
91
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
92
+ # credentials.
93
+ #
94
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
95
+ # shared file, such as `~/.aws/config`.
96
+ #
97
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
98
+ #
99
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
100
+ # assume a role after providing credentials via the web.
101
+ #
102
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
103
+ # access token generated from `aws login`.
104
+ #
105
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
106
+ # process that outputs to stdout.
107
+ #
108
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
109
+ # from an EC2 IMDS on an EC2 instance.
110
+ #
111
+ # * `Aws::ECSCredentials` - Used for loading credentials from
112
+ # instances running in ECS.
113
+ #
114
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
115
+ # from the Cognito Identity service.
116
+ #
117
+ # When `:credentials` are not configured directly, the following
118
+ # locations will be searched for credentials:
119
+ #
120
+ # * `Aws.config[:credentials]`
121
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
122
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
123
+ # * `~/.aws/credentials`
124
+ # * `~/.aws/config`
125
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
126
+ # are very aggressive. Construct and pass an instance of
127
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
128
+ # enable retries and extended timeouts. Instance profile credential
129
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
130
+ # to true.
131
+ #
132
+ # @option options [required, String] :region
133
+ # The AWS region to connect to. The configured `:region` is
134
+ # used to determine the service `:endpoint`. When not passed,
135
+ # a default `:region` is searched for in the following locations:
136
+ #
137
+ # * `Aws.config[:region]`
138
+ # * `ENV['AWS_REGION']`
139
+ # * `ENV['AMAZON_REGION']`
140
+ # * `ENV['AWS_DEFAULT_REGION']`
141
+ # * `~/.aws/credentials`
142
+ # * `~/.aws/config`
143
+ #
144
+ # @option options [String] :access_key_id
145
+ #
146
+ # @option options [Boolean] :active_endpoint_cache (false)
147
+ # When set to `true`, a thread polling for endpoints will be running in
148
+ # the background every 60 secs (default). Defaults to `false`.
149
+ #
150
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
151
+ # Used only in `adaptive` retry mode. When true, the request will sleep
152
+ # until there is sufficent client side capacity to retry the request.
153
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
154
+ # not retry instead of sleeping.
155
+ #
156
+ # @option options [Boolean] :client_side_monitoring (false)
157
+ # When `true`, client-side metrics will be collected for all API requests from
158
+ # this client.
159
+ #
160
+ # @option options [String] :client_side_monitoring_client_id ("")
161
+ # Allows you to provide an identifier for this client which will be attached to
162
+ # all generated client side metrics. Defaults to an empty string.
163
+ #
164
+ # @option options [String] :client_side_monitoring_host ("127.0.0.1")
165
+ # Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client
166
+ # side monitoring agent is running on, where client metrics will be published via UDP.
167
+ #
168
+ # @option options [Integer] :client_side_monitoring_port (31000)
169
+ # Required for publishing client metrics. The port that the client side monitoring
170
+ # agent is running on, where client metrics will be published via UDP.
171
+ #
172
+ # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
173
+ # Allows you to provide a custom client-side monitoring publisher class. By default,
174
+ # will use the Client Side Monitoring Agent Publisher.
175
+ #
176
+ # @option options [Boolean] :convert_params (true)
177
+ # When `true`, an attempt is made to coerce request parameters into
178
+ # the required types.
179
+ #
180
+ # @option options [Boolean] :correct_clock_skew (true)
181
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
182
+ # a clock skew correction and retry requests with skewed client clocks.
183
+ #
184
+ # @option options [String] :defaults_mode ("legacy")
185
+ # See {Aws::DefaultsModeConfiguration} for a list of the
186
+ # accepted modes and the configuration defaults that are included.
187
+ #
188
+ # @option options [Boolean] :disable_host_prefix_injection (false)
189
+ # Set to true to disable SDK automatically adding host prefix
190
+ # to default service endpoint when available.
191
+ #
192
+ # @option options [String] :endpoint
193
+ # The client endpoint is normally constructed from the `:region`
194
+ # option. You should only configure an `:endpoint` when connecting
195
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
196
+ #
197
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
198
+ # Used for the maximum size limit of the LRU cache storing endpoints data
199
+ # for endpoint discovery enabled operations. Defaults to 1000.
200
+ #
201
+ # @option options [Integer] :endpoint_cache_max_threads (10)
202
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
203
+ #
204
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
205
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
206
+ # Use this option to config the time interval in seconds for making
207
+ # requests fetching endpoints information. Defaults to 60 sec.
208
+ #
209
+ # @option options [Boolean] :endpoint_discovery (false)
210
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
211
+ #
212
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
213
+ # The log formatter.
214
+ #
215
+ # @option options [Symbol] :log_level (:info)
216
+ # The log level to send messages to the `:logger` at.
217
+ #
218
+ # @option options [Logger] :logger
219
+ # The Logger instance to send log messages to. If this option
220
+ # is not set, logging will be disabled.
221
+ #
222
+ # @option options [Integer] :max_attempts (3)
223
+ # An integer representing the maximum number attempts that will be made for
224
+ # a single request, including the initial attempt. For example,
225
+ # setting this value to 5 will result in a request being retried up to
226
+ # 4 times. Used in `standard` and `adaptive` retry modes.
227
+ #
228
+ # @option options [String] :profile ("default")
229
+ # Used when loading credentials from the shared credentials file
230
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
231
+ #
232
+ # @option options [Proc] :retry_backoff
233
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
234
+ # This option is only used in the `legacy` retry mode.
235
+ #
236
+ # @option options [Float] :retry_base_delay (0.3)
237
+ # The base delay in seconds used by the default backoff function. This option
238
+ # is only used in the `legacy` retry mode.
239
+ #
240
+ # @option options [Symbol] :retry_jitter (:none)
241
+ # A delay randomiser function used by the default backoff function.
242
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
243
+ # otherwise a Proc that takes and returns a number. This option is only used
244
+ # in the `legacy` retry mode.
245
+ #
246
+ # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
247
+ #
248
+ # @option options [Integer] :retry_limit (3)
249
+ # The maximum number of times to retry failed requests. Only
250
+ # ~ 500 level server errors and certain ~ 400 level client errors
251
+ # are retried. Generally, these are throttling errors, data
252
+ # checksum errors, networking errors, timeout errors, auth errors,
253
+ # endpoint discovery, and errors from expired credentials.
254
+ # This option is only used in the `legacy` retry mode.
255
+ #
256
+ # @option options [Integer] :retry_max_delay (0)
257
+ # The maximum number of seconds to delay between retries (0 for no limit)
258
+ # used by the default backoff function. This option is only used in the
259
+ # `legacy` retry mode.
260
+ #
261
+ # @option options [String] :retry_mode ("legacy")
262
+ # Specifies which retry algorithm to use. Values are:
263
+ #
264
+ # * `legacy` - The pre-existing retry behavior. This is default value if
265
+ # no retry mode is provided.
266
+ #
267
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
268
+ # This includes support for retry quotas, which limit the number of
269
+ # unsuccessful retries a client can make.
270
+ #
271
+ # * `adaptive` - An experimental retry mode that includes all the
272
+ # functionality of `standard` mode along with automatic client side
273
+ # throttling. This is a provisional mode that may change behavior
274
+ # in the future.
275
+ #
276
+ #
277
+ # @option options [String] :secret_access_key
278
+ #
279
+ # @option options [String] :session_token
280
+ #
281
+ # @option options [Boolean] :simple_json (false)
282
+ # Disables request parameter conversion, validation, and formatting.
283
+ # Also disable response data type conversions. This option is useful
284
+ # when you want to ensure the highest level of performance by
285
+ # avoiding overhead of walking request parameters and response data
286
+ # structures.
287
+ #
288
+ # When `:simple_json` is enabled, the request parameters hash must
289
+ # be formatted exactly as the DynamoDB API expects.
290
+ #
291
+ # @option options [Boolean] :stub_responses (false)
292
+ # Causes the client to return stubbed responses. By default
293
+ # fake responses are generated and returned. You can specify
294
+ # the response data to return or errors to raise by calling
295
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
296
+ #
297
+ # ** Please note ** When response stubbing is enabled, no HTTP
298
+ # requests are made, and retries are disabled.
299
+ #
300
+ # @option options [Boolean] :use_dualstack_endpoint
301
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
302
+ # will be used if available.
303
+ #
304
+ # @option options [Boolean] :use_fips_endpoint
305
+ # When set to `true`, fips compatible endpoints will be used if available.
306
+ # When a `fips` region is used, the region is normalized and this config
307
+ # is set to `true`.
308
+ #
309
+ # @option options [Boolean] :validate_params (true)
310
+ # When `true`, request parameters are validated before
311
+ # sending the request.
312
+ #
313
+ # @option options [URI::HTTP,String] :http_proxy A proxy to send
314
+ # requests through. Formatted like 'http://proxy.com:123'.
315
+ #
316
+ # @option options [Float] :http_open_timeout (15) The number of
317
+ # seconds to wait when opening a HTTP session before raising a
318
+ # `Timeout::Error`.
319
+ #
320
+ # @option options [Float] :http_read_timeout (60) The default
321
+ # number of seconds to wait for response data. This value can
322
+ # safely be set per-request on the session.
323
+ #
324
+ # @option options [Float] :http_idle_timeout (5) The number of
325
+ # seconds a connection is allowed to sit idle before it is
326
+ # considered stale. Stale connections are closed and removed
327
+ # from the pool before making a request.
328
+ #
329
+ # @option options [Float] :http_continue_timeout (1) The number of
330
+ # seconds to wait for a 100-continue response before sending the
331
+ # request body. This option has no effect unless the request has
332
+ # "Expect" header set to "100-continue". Defaults to `nil` which
333
+ # disables this behaviour. This value can safely be set per
334
+ # request on the session.
335
+ #
336
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
337
+ # in seconds.
338
+ #
339
+ # @option options [Boolean] :http_wire_trace (false) When `true`,
340
+ # HTTP debug output will be sent to the `:logger`.
341
+ #
342
+ # @option options [Boolean] :ssl_verify_peer (true) When `true`,
343
+ # SSL peer certificates are verified when establishing a
344
+ # connection.
345
+ #
346
+ # @option options [String] :ssl_ca_bundle Full path to the SSL
347
+ # certificate authority bundle file that should be used when
348
+ # verifying peer certificates. If you do not pass
349
+ # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
350
+ # will be used if available.
351
+ #
352
+ # @option options [String] :ssl_ca_directory Full path of the
353
+ # directory that contains the unbundled SSL certificate
354
+ # authority files for verifying peer certificates. If you do
355
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
356
+ # system default will be used if available.
357
+ #
358
+ def initialize(*args)
359
+ super
360
+ end
361
+
362
+ # @!group API Operations
363
+
364
+ # Adds, or associates, a vehicle with a fleet.
365
+ #
366
+ # @option params [required, String] :vehicle_name
367
+ # The unique ID of the vehicle to associate with the fleet.
368
+ #
369
+ # @option params [required, String] :fleet_id
370
+ # The ID of a fleet.
371
+ #
372
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
373
+ #
374
+ # @example Request syntax with placeholder values
375
+ #
376
+ # resp = client.associate_vehicle_fleet({
377
+ # vehicle_name: "vehicleName", # required
378
+ # fleet_id: "fleetId", # required
379
+ # })
380
+ #
381
+ # @overload associate_vehicle_fleet(params = {})
382
+ # @param [Hash] params ({})
383
+ def associate_vehicle_fleet(params = {}, options = {})
384
+ req = build_request(:associate_vehicle_fleet, params)
385
+ req.send_request(options)
386
+ end
387
+
388
+ # Creates a group, or batch, of vehicles.
389
+ #
390
+ # <note markdown="1"> You must specify a decoder manifest and a vehicle model (model
391
+ # manifest) for each vehicle.
392
+ #
393
+ # </note>
394
+ #
395
+ # For more information, see [Create multiple vehicles (AWS CLI)][1] in
396
+ # the *Amazon Web Services IoT FleetWise Developer Guide*.
397
+ #
398
+ #
399
+ #
400
+ # [1]: https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/create-vehicles-cli.html
401
+ #
402
+ # @option params [required, Array<Types::CreateVehicleRequestItem>] :vehicles
403
+ # A list of information about each vehicle to create. For more
404
+ # information, see the API data type.
405
+ #
406
+ # @return [Types::BatchCreateVehicleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
407
+ #
408
+ # * {Types::BatchCreateVehicleResponse#vehicles #vehicles} => Array&lt;Types::CreateVehicleResponseItem&gt;
409
+ # * {Types::BatchCreateVehicleResponse#errors #errors} => Array&lt;Types::CreateVehicleError&gt;
410
+ #
411
+ # @example Request syntax with placeholder values
412
+ #
413
+ # resp = client.batch_create_vehicle({
414
+ # vehicles: [ # required
415
+ # {
416
+ # vehicle_name: "vehicleName", # required
417
+ # model_manifest_arn: "arn", # required
418
+ # decoder_manifest_arn: "arn", # required
419
+ # attributes: {
420
+ # "attributeName" => "attributeValue",
421
+ # },
422
+ # association_behavior: "CreateIotThing", # accepts CreateIotThing, ValidateIotThingExists
423
+ # tags: [
424
+ # {
425
+ # key: "TagKey", # required
426
+ # value: "TagValue", # required
427
+ # },
428
+ # ],
429
+ # },
430
+ # ],
431
+ # })
432
+ #
433
+ # @example Response structure
434
+ #
435
+ # resp.vehicles #=> Array
436
+ # resp.vehicles[0].vehicle_name #=> String
437
+ # resp.vehicles[0].arn #=> String
438
+ # resp.vehicles[0].thing_arn #=> String
439
+ # resp.errors #=> Array
440
+ # resp.errors[0].vehicle_name #=> String
441
+ # resp.errors[0].code #=> String
442
+ # resp.errors[0].message #=> String
443
+ #
444
+ # @overload batch_create_vehicle(params = {})
445
+ # @param [Hash] params ({})
446
+ def batch_create_vehicle(params = {}, options = {})
447
+ req = build_request(:batch_create_vehicle, params)
448
+ req.send_request(options)
449
+ end
450
+
451
+ # Updates a group, or batch, of vehicles.
452
+ #
453
+ # <note markdown="1"> You must specify a decoder manifest and a vehicle model (model
454
+ # manifest) for each vehicle.
455
+ #
456
+ # </note>
457
+ #
458
+ # For more information, see [Update multiple vehicles (AWS CLI)][1] in
459
+ # the *Amazon Web Services IoT FleetWise Developer Guide*.
460
+ #
461
+ #
462
+ #
463
+ # [1]: https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/update-vehicles-cli.html
464
+ #
465
+ # @option params [required, Array<Types::UpdateVehicleRequestItem>] :vehicles
466
+ # A list of information about the vehicles to update. For more
467
+ # information, see the API data type.
468
+ #
469
+ # @return [Types::BatchUpdateVehicleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
470
+ #
471
+ # * {Types::BatchUpdateVehicleResponse#vehicles #vehicles} => Array&lt;Types::UpdateVehicleResponseItem&gt;
472
+ # * {Types::BatchUpdateVehicleResponse#errors #errors} => Array&lt;Types::UpdateVehicleError&gt;
473
+ #
474
+ # @example Request syntax with placeholder values
475
+ #
476
+ # resp = client.batch_update_vehicle({
477
+ # vehicles: [ # required
478
+ # {
479
+ # vehicle_name: "vehicleName", # required
480
+ # model_manifest_arn: "arn",
481
+ # decoder_manifest_arn: "arn",
482
+ # attributes: {
483
+ # "attributeName" => "attributeValue",
484
+ # },
485
+ # attribute_update_mode: "Overwrite", # accepts Overwrite, Merge
486
+ # },
487
+ # ],
488
+ # })
489
+ #
490
+ # @example Response structure
491
+ #
492
+ # resp.vehicles #=> Array
493
+ # resp.vehicles[0].vehicle_name #=> String
494
+ # resp.vehicles[0].arn #=> String
495
+ # resp.errors #=> Array
496
+ # resp.errors[0].vehicle_name #=> String
497
+ # resp.errors[0].code #=> Integer
498
+ # resp.errors[0].message #=> String
499
+ #
500
+ # @overload batch_update_vehicle(params = {})
501
+ # @param [Hash] params ({})
502
+ def batch_update_vehicle(params = {}, options = {})
503
+ req = build_request(:batch_update_vehicle, params)
504
+ req.send_request(options)
505
+ end
506
+
507
+ # Creates an orchestration of data collection rules. The Amazon Web
508
+ # Services IoT FleetWise Edge Agent software running in vehicles uses
509
+ # campaigns to decide how to collect and transfer data to the cloud. You
510
+ # create campaigns in the cloud. After you or your team approve
511
+ # campaigns, Amazon Web Services IoT FleetWise automatically deploys
512
+ # them to vehicles.
513
+ #
514
+ # For more information, see [Collect and transfer data with
515
+ # campaigns][1] in the *Amazon Web Services IoT FleetWise Developer
516
+ # Guide*.
517
+ #
518
+ #
519
+ #
520
+ # [1]: https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/campaigns.html
521
+ #
522
+ # @option params [required, String] :name
523
+ # The name of the campaign to create.
524
+ #
525
+ # @option params [String] :description
526
+ # An optional description of the campaign to help identify its purpose.
527
+ #
528
+ # @option params [required, String] :signal_catalog_arn
529
+ # (Optional) The Amazon Resource Name (ARN) of the signal catalog to
530
+ # associate with the campaign.
531
+ #
532
+ # @option params [required, String] :target_arn
533
+ # The ARN of the vehicle or fleet to deploy a campaign to.
534
+ #
535
+ # @option params [Time,DateTime,Date,Integer,String] :start_time
536
+ # (Optional) The time, in milliseconds, to deliver a campaign after it
537
+ # was approved. If it's not specified, `0` is used.
538
+ #
539
+ # Default: `0`
540
+ #
541
+ # @option params [Time,DateTime,Date,Integer,String] :expiry_time
542
+ # (Optional) The time the campaign expires, in seconds since epoch
543
+ # (January 1, 1970 at midnight UTC time). Vehicle data won't be
544
+ # collected after the campaign expires.
545
+ #
546
+ # Default: 253402243200 (December 31, 9999, 00:00:00 UTC)
547
+ #
548
+ # @option params [Integer] :post_trigger_collection_duration
549
+ # (Optional) How long (in milliseconds) to collect raw data after a
550
+ # triggering event initiates the collection. If it's not specified, `0`
551
+ # is used.
552
+ #
553
+ # Default: `0`
554
+ #
555
+ # @option params [String] :diagnostics_mode
556
+ # (Optional) Option for a vehicle to send diagnostic trouble codes to
557
+ # Amazon Web Services IoT FleetWise. If you want to send diagnostic
558
+ # trouble codes, use `SEND_ACTIVE_DTCS`. If it's not specified, `OFF`
559
+ # is used.
560
+ #
561
+ # Default: `OFF`
562
+ #
563
+ # @option params [String] :spooling_mode
564
+ # (Optional) Whether to store collected data after a vehicle lost a
565
+ # connection with the cloud. After a connection is re-established, the
566
+ # data is automatically forwarded to Amazon Web Services IoT FleetWise.
567
+ # If you want to store collected data when a vehicle loses connection
568
+ # with the cloud, use `TO_DISK`. If it's not specified, `OFF` is used.
569
+ #
570
+ # Default: `OFF`
571
+ #
572
+ # @option params [String] :compression
573
+ # (Optional) Whether to compress signals before transmitting data to
574
+ # Amazon Web Services IoT FleetWise. If you don't want to compress the
575
+ # signals, use `OFF`. If it's not specified, `SNAPPY` is used.
576
+ #
577
+ # Default: `SNAPPY`
578
+ #
579
+ # @option params [Integer] :priority
580
+ # (Optional) A number indicating the priority of one campaign over
581
+ # another campaign for a certain vehicle or fleet. A campaign with the
582
+ # lowest value is deployed to vehicles before any other campaigns. If
583
+ # it's not specified, `0` is used.
584
+ #
585
+ # Default: `0`
586
+ #
587
+ # @option params [Array<Types::SignalInformation>] :signals_to_collect
588
+ # (Optional) A list of information about signals to collect.
589
+ #
590
+ # @option params [required, Types::CollectionScheme] :collection_scheme
591
+ # The data collection scheme associated with the campaign. You can
592
+ # specify a scheme that collects data based on time or an event.
593
+ #
594
+ # @option params [Array<String>] :data_extra_dimensions
595
+ # (Optional) A list of vehicle attributes to associate with a campaign.
596
+ #
597
+ # Default: An empty array
598
+ #
599
+ # @option params [Array<Types::Tag>] :tags
600
+ # Metadata that can be used to manage the campaign.
601
+ #
602
+ # @return [Types::CreateCampaignResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
603
+ #
604
+ # * {Types::CreateCampaignResponse#name #name} => String
605
+ # * {Types::CreateCampaignResponse#arn #arn} => String
606
+ #
607
+ # @example Request syntax with placeholder values
608
+ #
609
+ # resp = client.create_campaign({
610
+ # name: "campaignName", # required
611
+ # description: "description",
612
+ # signal_catalog_arn: "arn", # required
613
+ # target_arn: "arn", # required
614
+ # start_time: Time.now,
615
+ # expiry_time: Time.now,
616
+ # post_trigger_collection_duration: 1,
617
+ # diagnostics_mode: "OFF", # accepts OFF, SEND_ACTIVE_DTCS
618
+ # spooling_mode: "OFF", # accepts OFF, TO_DISK
619
+ # compression: "OFF", # accepts OFF, SNAPPY
620
+ # priority: 1,
621
+ # signals_to_collect: [
622
+ # {
623
+ # name: "wildcardSignalName", # required
624
+ # max_sample_count: 1,
625
+ # minimum_sampling_interval_ms: 1,
626
+ # },
627
+ # ],
628
+ # collection_scheme: { # required
629
+ # time_based_collection_scheme: {
630
+ # period_ms: 1, # required
631
+ # },
632
+ # condition_based_collection_scheme: {
633
+ # expression: "eventExpression", # required
634
+ # minimum_trigger_interval_ms: 1,
635
+ # trigger_mode: "ALWAYS", # accepts ALWAYS, RISING_EDGE
636
+ # condition_language_version: 1,
637
+ # },
638
+ # },
639
+ # data_extra_dimensions: ["NodePath"],
640
+ # tags: [
641
+ # {
642
+ # key: "TagKey", # required
643
+ # value: "TagValue", # required
644
+ # },
645
+ # ],
646
+ # })
647
+ #
648
+ # @example Response structure
649
+ #
650
+ # resp.name #=> String
651
+ # resp.arn #=> String
652
+ #
653
+ # @overload create_campaign(params = {})
654
+ # @param [Hash] params ({})
655
+ def create_campaign(params = {}, options = {})
656
+ req = build_request(:create_campaign, params)
657
+ req.send_request(options)
658
+ end
659
+
660
+ # Creates the decoder manifest associated with a model manifest. To
661
+ # create a decoder manifest, the following must be true:
662
+ #
663
+ # * Every signal decoder has a unique name.
664
+ #
665
+ # * Each signal decoder is associated with a network interface.
666
+ #
667
+ # * Each network interface has a unique ID.
668
+ #
669
+ # * The signal decoders are specified in the model manifest.
670
+ #
671
+ # @option params [required, String] :name
672
+ # The unique name of the decoder manifest to create.
673
+ #
674
+ # @option params [String] :description
675
+ # A brief description of the decoder manifest.
676
+ #
677
+ # @option params [required, String] :model_manifest_arn
678
+ # The Amazon Resource Name (ARN) of the vehicle model (model manifest).
679
+ #
680
+ # @option params [Array<Types::SignalDecoder>] :signal_decoders
681
+ # A list of information about signal decoders.
682
+ #
683
+ # @option params [Array<Types::NetworkInterface>] :network_interfaces
684
+ # A list of information about available network interfaces.
685
+ #
686
+ # @option params [Array<Types::Tag>] :tags
687
+ # Metadata that can be used to manage the decoder manifest.
688
+ #
689
+ # @return [Types::CreateDecoderManifestResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
690
+ #
691
+ # * {Types::CreateDecoderManifestResponse#name #name} => String
692
+ # * {Types::CreateDecoderManifestResponse#arn #arn} => String
693
+ #
694
+ # @example Request syntax with placeholder values
695
+ #
696
+ # resp = client.create_decoder_manifest({
697
+ # name: "resourceName", # required
698
+ # description: "description",
699
+ # model_manifest_arn: "arn", # required
700
+ # signal_decoders: [
701
+ # {
702
+ # fully_qualified_name: "FullyQualifiedName", # required
703
+ # type: "CAN_SIGNAL", # required, accepts CAN_SIGNAL, OBD_SIGNAL
704
+ # interface_id: "InterfaceId", # required
705
+ # can_signal: {
706
+ # message_id: 1, # required
707
+ # is_big_endian: false, # required
708
+ # is_signed: false, # required
709
+ # start_bit: 1, # required
710
+ # offset: 1.0, # required
711
+ # factor: 1.0, # required
712
+ # length: 1, # required
713
+ # name: "CanSignalName",
714
+ # },
715
+ # obd_signal: {
716
+ # pid_response_length: 1, # required
717
+ # service_mode: 1, # required
718
+ # pid: 1, # required
719
+ # scaling: 1.0, # required
720
+ # offset: 1.0, # required
721
+ # start_byte: 1, # required
722
+ # byte_length: 1, # required
723
+ # bit_right_shift: 1,
724
+ # bit_mask_length: 1,
725
+ # },
726
+ # },
727
+ # ],
728
+ # network_interfaces: [
729
+ # {
730
+ # interface_id: "InterfaceId", # required
731
+ # type: "CAN_INTERFACE", # required, accepts CAN_INTERFACE, OBD_INTERFACE
732
+ # can_interface: {
733
+ # name: "CanInterfaceName", # required
734
+ # protocol_name: "ProtocolName",
735
+ # protocol_version: "ProtocolVersion",
736
+ # },
737
+ # obd_interface: {
738
+ # name: "ObdInterfaceName", # required
739
+ # request_message_id: 1, # required
740
+ # obd_standard: "ObdStandard",
741
+ # pid_request_interval_seconds: 1,
742
+ # dtc_request_interval_seconds: 1,
743
+ # use_extended_ids: false,
744
+ # has_transmission_ecu: false,
745
+ # },
746
+ # },
747
+ # ],
748
+ # tags: [
749
+ # {
750
+ # key: "TagKey", # required
751
+ # value: "TagValue", # required
752
+ # },
753
+ # ],
754
+ # })
755
+ #
756
+ # @example Response structure
757
+ #
758
+ # resp.name #=> String
759
+ # resp.arn #=> String
760
+ #
761
+ # @overload create_decoder_manifest(params = {})
762
+ # @param [Hash] params ({})
763
+ def create_decoder_manifest(params = {}, options = {})
764
+ req = build_request(:create_decoder_manifest, params)
765
+ req.send_request(options)
766
+ end
767
+
768
+ # Creates a fleet that represents a group of vehicles.
769
+ #
770
+ # <note markdown="1"> You must create both a signal catalog and vehicles before you can
771
+ # create a fleet.
772
+ #
773
+ # </note>
774
+ #
775
+ # For more information, see [Fleets][1] in the *Amazon Web Services IoT
776
+ # FleetWise Developer Guide*.
777
+ #
778
+ #
779
+ #
780
+ # [1]: https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/fleets.html
781
+ #
782
+ # @option params [required, String] :fleet_id
783
+ # The unique ID of the fleet to create.
784
+ #
785
+ # @option params [String] :description
786
+ # A brief description of the fleet to create.
787
+ #
788
+ # @option params [required, String] :signal_catalog_arn
789
+ # The Amazon Resource Name (ARN) of a signal catalog.
790
+ #
791
+ # @option params [Array<Types::Tag>] :tags
792
+ # Metadata that can be used to manage the fleet.
793
+ #
794
+ # @return [Types::CreateFleetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
795
+ #
796
+ # * {Types::CreateFleetResponse#id #id} => String
797
+ # * {Types::CreateFleetResponse#arn #arn} => String
798
+ #
799
+ # @example Request syntax with placeholder values
800
+ #
801
+ # resp = client.create_fleet({
802
+ # fleet_id: "fleetId", # required
803
+ # description: "description",
804
+ # signal_catalog_arn: "arn", # required
805
+ # tags: [
806
+ # {
807
+ # key: "TagKey", # required
808
+ # value: "TagValue", # required
809
+ # },
810
+ # ],
811
+ # })
812
+ #
813
+ # @example Response structure
814
+ #
815
+ # resp.id #=> String
816
+ # resp.arn #=> String
817
+ #
818
+ # @overload create_fleet(params = {})
819
+ # @param [Hash] params ({})
820
+ def create_fleet(params = {}, options = {})
821
+ req = build_request(:create_fleet, params)
822
+ req.send_request(options)
823
+ end
824
+
825
+ # Creates a vehicle model (model manifest) that specifies signals
826
+ # (attributes, branches, sensors, and actuators).
827
+ #
828
+ # For more information, see [Vehicle models][1] in the *Amazon Web
829
+ # Services IoT FleetWise Developer Guide*.
830
+ #
831
+ #
832
+ #
833
+ # [1]: https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/vehicle-models.html
834
+ #
835
+ # @option params [required, String] :name
836
+ # The name of the vehicle model to create.
837
+ #
838
+ # @option params [String] :description
839
+ # A brief description of the vehicle model.
840
+ #
841
+ # @option params [required, Array<String>] :nodes
842
+ # A list of nodes, which are a general abstraction of signals.
843
+ #
844
+ # @option params [required, String] :signal_catalog_arn
845
+ # The Amazon Resource Name (ARN) of a signal catalog.
846
+ #
847
+ # @option params [Array<Types::Tag>] :tags
848
+ # Metadata that can be used to manage the vehicle model.
849
+ #
850
+ # @return [Types::CreateModelManifestResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
851
+ #
852
+ # * {Types::CreateModelManifestResponse#name #name} => String
853
+ # * {Types::CreateModelManifestResponse#arn #arn} => String
854
+ #
855
+ # @example Request syntax with placeholder values
856
+ #
857
+ # resp = client.create_model_manifest({
858
+ # name: "resourceName", # required
859
+ # description: "description",
860
+ # nodes: ["string"], # required
861
+ # signal_catalog_arn: "arn", # required
862
+ # tags: [
863
+ # {
864
+ # key: "TagKey", # required
865
+ # value: "TagValue", # required
866
+ # },
867
+ # ],
868
+ # })
869
+ #
870
+ # @example Response structure
871
+ #
872
+ # resp.name #=> String
873
+ # resp.arn #=> String
874
+ #
875
+ # @overload create_model_manifest(params = {})
876
+ # @param [Hash] params ({})
877
+ def create_model_manifest(params = {}, options = {})
878
+ req = build_request(:create_model_manifest, params)
879
+ req.send_request(options)
880
+ end
881
+
882
+ # Creates a collection of standardized signals that can be reused to
883
+ # create vehicle models.
884
+ #
885
+ # @option params [required, String] :name
886
+ # The name of the signal catalog to create.
887
+ #
888
+ # @option params [String] :description
889
+ # A brief description of the signal catalog.
890
+ #
891
+ # @option params [Array<Types::Node>] :nodes
892
+ # A list of information about nodes, which are a general abstraction of
893
+ # signals. For more information, see the API data type.
894
+ #
895
+ # @option params [Array<Types::Tag>] :tags
896
+ # Metadata that can be used to manage the signal catalog.
897
+ #
898
+ # @return [Types::CreateSignalCatalogResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
899
+ #
900
+ # * {Types::CreateSignalCatalogResponse#name #name} => String
901
+ # * {Types::CreateSignalCatalogResponse#arn #arn} => String
902
+ #
903
+ # @example Request syntax with placeholder values
904
+ #
905
+ # resp = client.create_signal_catalog({
906
+ # name: "resourceName", # required
907
+ # description: "description",
908
+ # nodes: [
909
+ # {
910
+ # branch: {
911
+ # fully_qualified_name: "string", # required
912
+ # description: "description",
913
+ # },
914
+ # sensor: {
915
+ # fully_qualified_name: "string", # required
916
+ # data_type: "INT8", # required, accepts INT8, UINT8, INT16, UINT16, INT32, UINT32, INT64, UINT64, BOOLEAN, FLOAT, DOUBLE, STRING, UNIX_TIMESTAMP, INT8_ARRAY, UINT8_ARRAY, INT16_ARRAY, UINT16_ARRAY, INT32_ARRAY, UINT32_ARRAY, INT64_ARRAY, UINT64_ARRAY, BOOLEAN_ARRAY, FLOAT_ARRAY, DOUBLE_ARRAY, STRING_ARRAY, UNIX_TIMESTAMP_ARRAY, UNKNOWN
917
+ # description: "description",
918
+ # unit: "string",
919
+ # allowed_values: ["string"],
920
+ # min: 1.0,
921
+ # max: 1.0,
922
+ # },
923
+ # actuator: {
924
+ # fully_qualified_name: "string", # required
925
+ # data_type: "INT8", # required, accepts INT8, UINT8, INT16, UINT16, INT32, UINT32, INT64, UINT64, BOOLEAN, FLOAT, DOUBLE, STRING, UNIX_TIMESTAMP, INT8_ARRAY, UINT8_ARRAY, INT16_ARRAY, UINT16_ARRAY, INT32_ARRAY, UINT32_ARRAY, INT64_ARRAY, UINT64_ARRAY, BOOLEAN_ARRAY, FLOAT_ARRAY, DOUBLE_ARRAY, STRING_ARRAY, UNIX_TIMESTAMP_ARRAY, UNKNOWN
926
+ # description: "description",
927
+ # unit: "string",
928
+ # allowed_values: ["string"],
929
+ # min: 1.0,
930
+ # max: 1.0,
931
+ # assigned_value: "string",
932
+ # },
933
+ # attribute: {
934
+ # fully_qualified_name: "string", # required
935
+ # data_type: "INT8", # required, accepts INT8, UINT8, INT16, UINT16, INT32, UINT32, INT64, UINT64, BOOLEAN, FLOAT, DOUBLE, STRING, UNIX_TIMESTAMP, INT8_ARRAY, UINT8_ARRAY, INT16_ARRAY, UINT16_ARRAY, INT32_ARRAY, UINT32_ARRAY, INT64_ARRAY, UINT64_ARRAY, BOOLEAN_ARRAY, FLOAT_ARRAY, DOUBLE_ARRAY, STRING_ARRAY, UNIX_TIMESTAMP_ARRAY, UNKNOWN
936
+ # description: "description",
937
+ # unit: "string",
938
+ # allowed_values: ["string"],
939
+ # min: 1.0,
940
+ # max: 1.0,
941
+ # assigned_value: "string",
942
+ # default_value: "string",
943
+ # },
944
+ # },
945
+ # ],
946
+ # tags: [
947
+ # {
948
+ # key: "TagKey", # required
949
+ # value: "TagValue", # required
950
+ # },
951
+ # ],
952
+ # })
953
+ #
954
+ # @example Response structure
955
+ #
956
+ # resp.name #=> String
957
+ # resp.arn #=> String
958
+ #
959
+ # @overload create_signal_catalog(params = {})
960
+ # @param [Hash] params ({})
961
+ def create_signal_catalog(params = {}, options = {})
962
+ req = build_request(:create_signal_catalog, params)
963
+ req.send_request(options)
964
+ end
965
+
966
+ # Creates a vehicle, which is an instance of a vehicle model (model
967
+ # manifest). Vehicles created from the same vehicle model consist of the
968
+ # same signals inherited from the vehicle model.
969
+ #
970
+ # <note markdown="1"> If you have an existing Amazon Web Services IoT Thing, you can use
971
+ # Amazon Web Services IoT FleetWise to create a vehicle and collect data
972
+ # from your thing.
973
+ #
974
+ # </note>
975
+ #
976
+ # For more information, see [Create a vehicle (AWS CLI)][1] in the
977
+ # *Amazon Web Services IoT FleetWise Developer Guide*.
978
+ #
979
+ #
980
+ #
981
+ # [1]: https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/create-vehicle-cli.html
982
+ #
983
+ # @option params [required, String] :vehicle_name
984
+ # The unique ID of the vehicle to create.
985
+ #
986
+ # @option params [required, String] :model_manifest_arn
987
+ # The Amazon Resource Name ARN of a vehicle model.
988
+ #
989
+ # @option params [required, String] :decoder_manifest_arn
990
+ # The ARN of a decoder manifest.
991
+ #
992
+ # @option params [Hash<String,String>] :attributes
993
+ # Static information about a vehicle in a key-value pair. For example:
994
+ # `"engineType"`\: `"1.3 L R2"`
995
+ #
996
+ # @option params [String] :association_behavior
997
+ # An option to create a new Amazon Web Services IoT thing when creating
998
+ # a vehicle, or to validate an existing Amazon Web Services IoT thing as
999
+ # a vehicle.
1000
+ #
1001
+ # Default: ``
1002
+ #
1003
+ # @option params [Array<Types::Tag>] :tags
1004
+ # Metadata that can be used to manage the vehicle.
1005
+ #
1006
+ # @return [Types::CreateVehicleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1007
+ #
1008
+ # * {Types::CreateVehicleResponse#vehicle_name #vehicle_name} => String
1009
+ # * {Types::CreateVehicleResponse#arn #arn} => String
1010
+ # * {Types::CreateVehicleResponse#thing_arn #thing_arn} => String
1011
+ #
1012
+ # @example Request syntax with placeholder values
1013
+ #
1014
+ # resp = client.create_vehicle({
1015
+ # vehicle_name: "vehicleName", # required
1016
+ # model_manifest_arn: "arn", # required
1017
+ # decoder_manifest_arn: "arn", # required
1018
+ # attributes: {
1019
+ # "attributeName" => "attributeValue",
1020
+ # },
1021
+ # association_behavior: "CreateIotThing", # accepts CreateIotThing, ValidateIotThingExists
1022
+ # tags: [
1023
+ # {
1024
+ # key: "TagKey", # required
1025
+ # value: "TagValue", # required
1026
+ # },
1027
+ # ],
1028
+ # })
1029
+ #
1030
+ # @example Response structure
1031
+ #
1032
+ # resp.vehicle_name #=> String
1033
+ # resp.arn #=> String
1034
+ # resp.thing_arn #=> String
1035
+ #
1036
+ # @overload create_vehicle(params = {})
1037
+ # @param [Hash] params ({})
1038
+ def create_vehicle(params = {}, options = {})
1039
+ req = build_request(:create_vehicle, params)
1040
+ req.send_request(options)
1041
+ end
1042
+
1043
+ # Deletes a data collection campaign. Deleting a campaign suspends all
1044
+ # data collection and removes it from any vehicles.
1045
+ #
1046
+ # @option params [required, String] :name
1047
+ # The name of the campaign to delete.
1048
+ #
1049
+ # @return [Types::DeleteCampaignResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1050
+ #
1051
+ # * {Types::DeleteCampaignResponse#name #name} => String
1052
+ # * {Types::DeleteCampaignResponse#arn #arn} => String
1053
+ #
1054
+ # @example Request syntax with placeholder values
1055
+ #
1056
+ # resp = client.delete_campaign({
1057
+ # name: "campaignName", # required
1058
+ # })
1059
+ #
1060
+ # @example Response structure
1061
+ #
1062
+ # resp.name #=> String
1063
+ # resp.arn #=> String
1064
+ #
1065
+ # @overload delete_campaign(params = {})
1066
+ # @param [Hash] params ({})
1067
+ def delete_campaign(params = {}, options = {})
1068
+ req = build_request(:delete_campaign, params)
1069
+ req.send_request(options)
1070
+ end
1071
+
1072
+ # Deletes a decoder manifest. You can't delete a decoder manifest if it
1073
+ # has vehicles associated with it.
1074
+ #
1075
+ # <note markdown="1"> If the decoder manifest is successfully deleted, Amazon Web Services
1076
+ # IoT FleetWise sends back an HTTP 200 response with an empty body.
1077
+ #
1078
+ # </note>
1079
+ #
1080
+ # @option params [required, String] :name
1081
+ # The name of the decoder manifest to delete.
1082
+ #
1083
+ # @return [Types::DeleteDecoderManifestResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1084
+ #
1085
+ # * {Types::DeleteDecoderManifestResponse#name #name} => String
1086
+ # * {Types::DeleteDecoderManifestResponse#arn #arn} => String
1087
+ #
1088
+ # @example Request syntax with placeholder values
1089
+ #
1090
+ # resp = client.delete_decoder_manifest({
1091
+ # name: "resourceName", # required
1092
+ # })
1093
+ #
1094
+ # @example Response structure
1095
+ #
1096
+ # resp.name #=> String
1097
+ # resp.arn #=> String
1098
+ #
1099
+ # @overload delete_decoder_manifest(params = {})
1100
+ # @param [Hash] params ({})
1101
+ def delete_decoder_manifest(params = {}, options = {})
1102
+ req = build_request(:delete_decoder_manifest, params)
1103
+ req.send_request(options)
1104
+ end
1105
+
1106
+ # Deletes a fleet. Before you delete a fleet, all vehicles must be
1107
+ # dissociated from the fleet. For more information, see [Delete a fleet
1108
+ # (AWS CLI)][1] in the *Amazon Web Services IoT FleetWise Developer
1109
+ # Guide*.
1110
+ #
1111
+ # <note markdown="1"> If the fleet is successfully deleted, Amazon Web Services IoT
1112
+ # FleetWise sends back an HTTP 200 response with an empty body.
1113
+ #
1114
+ # </note>
1115
+ #
1116
+ #
1117
+ #
1118
+ # [1]: https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/delete-fleet-cli.html
1119
+ #
1120
+ # @option params [required, String] :fleet_id
1121
+ # The ID of the fleet to delete.
1122
+ #
1123
+ # @return [Types::DeleteFleetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1124
+ #
1125
+ # * {Types::DeleteFleetResponse#id #id} => String
1126
+ # * {Types::DeleteFleetResponse#arn #arn} => String
1127
+ #
1128
+ # @example Request syntax with placeholder values
1129
+ #
1130
+ # resp = client.delete_fleet({
1131
+ # fleet_id: "fleetId", # required
1132
+ # })
1133
+ #
1134
+ # @example Response structure
1135
+ #
1136
+ # resp.id #=> String
1137
+ # resp.arn #=> String
1138
+ #
1139
+ # @overload delete_fleet(params = {})
1140
+ # @param [Hash] params ({})
1141
+ def delete_fleet(params = {}, options = {})
1142
+ req = build_request(:delete_fleet, params)
1143
+ req.send_request(options)
1144
+ end
1145
+
1146
+ # Deletes a vehicle model (model manifest).
1147
+ #
1148
+ # <note markdown="1"> If the vehicle model is successfully deleted, Amazon Web Services IoT
1149
+ # FleetWise sends back an HTTP 200 response with an empty body.
1150
+ #
1151
+ # </note>
1152
+ #
1153
+ # @option params [required, String] :name
1154
+ # The name of the model manifest to delete.
1155
+ #
1156
+ # @return [Types::DeleteModelManifestResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1157
+ #
1158
+ # * {Types::DeleteModelManifestResponse#name #name} => String
1159
+ # * {Types::DeleteModelManifestResponse#arn #arn} => String
1160
+ #
1161
+ # @example Request syntax with placeholder values
1162
+ #
1163
+ # resp = client.delete_model_manifest({
1164
+ # name: "resourceName", # required
1165
+ # })
1166
+ #
1167
+ # @example Response structure
1168
+ #
1169
+ # resp.name #=> String
1170
+ # resp.arn #=> String
1171
+ #
1172
+ # @overload delete_model_manifest(params = {})
1173
+ # @param [Hash] params ({})
1174
+ def delete_model_manifest(params = {}, options = {})
1175
+ req = build_request(:delete_model_manifest, params)
1176
+ req.send_request(options)
1177
+ end
1178
+
1179
+ # Deletes a signal catalog.
1180
+ #
1181
+ # <note markdown="1"> If the signal catalog is successfully deleted, Amazon Web Services IoT
1182
+ # FleetWise sends back an HTTP 200 response with an empty body.
1183
+ #
1184
+ # </note>
1185
+ #
1186
+ # @option params [required, String] :name
1187
+ # The name of the signal catalog to delete.
1188
+ #
1189
+ # @return [Types::DeleteSignalCatalogResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1190
+ #
1191
+ # * {Types::DeleteSignalCatalogResponse#name #name} => String
1192
+ # * {Types::DeleteSignalCatalogResponse#arn #arn} => String
1193
+ #
1194
+ # @example Request syntax with placeholder values
1195
+ #
1196
+ # resp = client.delete_signal_catalog({
1197
+ # name: "resourceName", # required
1198
+ # })
1199
+ #
1200
+ # @example Response structure
1201
+ #
1202
+ # resp.name #=> String
1203
+ # resp.arn #=> String
1204
+ #
1205
+ # @overload delete_signal_catalog(params = {})
1206
+ # @param [Hash] params ({})
1207
+ def delete_signal_catalog(params = {}, options = {})
1208
+ req = build_request(:delete_signal_catalog, params)
1209
+ req.send_request(options)
1210
+ end
1211
+
1212
+ # Deletes a vehicle and removes it from any campaigns.
1213
+ #
1214
+ # <note markdown="1"> If the vehicle is successfully deleted, Amazon Web Services IoT
1215
+ # FleetWise sends back an HTTP 200 response with an empty body.
1216
+ #
1217
+ # </note>
1218
+ #
1219
+ # @option params [required, String] :vehicle_name
1220
+ # The ID of the vehicle to delete.
1221
+ #
1222
+ # @return [Types::DeleteVehicleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1223
+ #
1224
+ # * {Types::DeleteVehicleResponse#vehicle_name #vehicle_name} => String
1225
+ # * {Types::DeleteVehicleResponse#arn #arn} => String
1226
+ #
1227
+ # @example Request syntax with placeholder values
1228
+ #
1229
+ # resp = client.delete_vehicle({
1230
+ # vehicle_name: "vehicleName", # required
1231
+ # })
1232
+ #
1233
+ # @example Response structure
1234
+ #
1235
+ # resp.vehicle_name #=> String
1236
+ # resp.arn #=> String
1237
+ #
1238
+ # @overload delete_vehicle(params = {})
1239
+ # @param [Hash] params ({})
1240
+ def delete_vehicle(params = {}, options = {})
1241
+ req = build_request(:delete_vehicle, params)
1242
+ req.send_request(options)
1243
+ end
1244
+
1245
+ # Removes, or disassociates, a vehicle from a fleet. Disassociating a
1246
+ # vehicle from a fleet doesn't delete the vehicle.
1247
+ #
1248
+ # <note markdown="1"> If the vehicle is successfully dissociated from a fleet, Amazon Web
1249
+ # Services IoT FleetWise sends back an HTTP 200 response with an empty
1250
+ # body.
1251
+ #
1252
+ # </note>
1253
+ #
1254
+ # @option params [required, String] :vehicle_name
1255
+ # The unique ID of the vehicle to disassociate from the fleet.
1256
+ #
1257
+ # @option params [required, String] :fleet_id
1258
+ # The unique ID of a fleet.
1259
+ #
1260
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1261
+ #
1262
+ # @example Request syntax with placeholder values
1263
+ #
1264
+ # resp = client.disassociate_vehicle_fleet({
1265
+ # vehicle_name: "vehicleName", # required
1266
+ # fleet_id: "fleetId", # required
1267
+ # })
1268
+ #
1269
+ # @overload disassociate_vehicle_fleet(params = {})
1270
+ # @param [Hash] params ({})
1271
+ def disassociate_vehicle_fleet(params = {}, options = {})
1272
+ req = build_request(:disassociate_vehicle_fleet, params)
1273
+ req.send_request(options)
1274
+ end
1275
+
1276
+ # Retrieves information about a campaign.
1277
+ #
1278
+ # @option params [required, String] :name
1279
+ # The name of the campaign to retrieve information about.
1280
+ #
1281
+ # @return [Types::GetCampaignResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1282
+ #
1283
+ # * {Types::GetCampaignResponse#name #name} => String
1284
+ # * {Types::GetCampaignResponse#arn #arn} => String
1285
+ # * {Types::GetCampaignResponse#description #description} => String
1286
+ # * {Types::GetCampaignResponse#signal_catalog_arn #signal_catalog_arn} => String
1287
+ # * {Types::GetCampaignResponse#target_arn #target_arn} => String
1288
+ # * {Types::GetCampaignResponse#status #status} => String
1289
+ # * {Types::GetCampaignResponse#start_time #start_time} => Time
1290
+ # * {Types::GetCampaignResponse#expiry_time #expiry_time} => Time
1291
+ # * {Types::GetCampaignResponse#post_trigger_collection_duration #post_trigger_collection_duration} => Integer
1292
+ # * {Types::GetCampaignResponse#diagnostics_mode #diagnostics_mode} => String
1293
+ # * {Types::GetCampaignResponse#spooling_mode #spooling_mode} => String
1294
+ # * {Types::GetCampaignResponse#compression #compression} => String
1295
+ # * {Types::GetCampaignResponse#priority #priority} => Integer
1296
+ # * {Types::GetCampaignResponse#signals_to_collect #signals_to_collect} => Array&lt;Types::SignalInformation&gt;
1297
+ # * {Types::GetCampaignResponse#collection_scheme #collection_scheme} => Types::CollectionScheme
1298
+ # * {Types::GetCampaignResponse#data_extra_dimensions #data_extra_dimensions} => Array&lt;String&gt;
1299
+ # * {Types::GetCampaignResponse#creation_time #creation_time} => Time
1300
+ # * {Types::GetCampaignResponse#last_modification_time #last_modification_time} => Time
1301
+ #
1302
+ # @example Request syntax with placeholder values
1303
+ #
1304
+ # resp = client.get_campaign({
1305
+ # name: "campaignName", # required
1306
+ # })
1307
+ #
1308
+ # @example Response structure
1309
+ #
1310
+ # resp.name #=> String
1311
+ # resp.arn #=> String
1312
+ # resp.description #=> String
1313
+ # resp.signal_catalog_arn #=> String
1314
+ # resp.target_arn #=> String
1315
+ # resp.status #=> String, one of "CREATING", "WAITING_FOR_APPROVAL", "RUNNING", "SUSPENDED"
1316
+ # resp.start_time #=> Time
1317
+ # resp.expiry_time #=> Time
1318
+ # resp.post_trigger_collection_duration #=> Integer
1319
+ # resp.diagnostics_mode #=> String, one of "OFF", "SEND_ACTIVE_DTCS"
1320
+ # resp.spooling_mode #=> String, one of "OFF", "TO_DISK"
1321
+ # resp.compression #=> String, one of "OFF", "SNAPPY"
1322
+ # resp.priority #=> Integer
1323
+ # resp.signals_to_collect #=> Array
1324
+ # resp.signals_to_collect[0].name #=> String
1325
+ # resp.signals_to_collect[0].max_sample_count #=> Integer
1326
+ # resp.signals_to_collect[0].minimum_sampling_interval_ms #=> Integer
1327
+ # resp.collection_scheme.time_based_collection_scheme.period_ms #=> Integer
1328
+ # resp.collection_scheme.condition_based_collection_scheme.expression #=> String
1329
+ # resp.collection_scheme.condition_based_collection_scheme.minimum_trigger_interval_ms #=> Integer
1330
+ # resp.collection_scheme.condition_based_collection_scheme.trigger_mode #=> String, one of "ALWAYS", "RISING_EDGE"
1331
+ # resp.collection_scheme.condition_based_collection_scheme.condition_language_version #=> Integer
1332
+ # resp.data_extra_dimensions #=> Array
1333
+ # resp.data_extra_dimensions[0] #=> String
1334
+ # resp.creation_time #=> Time
1335
+ # resp.last_modification_time #=> Time
1336
+ #
1337
+ # @overload get_campaign(params = {})
1338
+ # @param [Hash] params ({})
1339
+ def get_campaign(params = {}, options = {})
1340
+ req = build_request(:get_campaign, params)
1341
+ req.send_request(options)
1342
+ end
1343
+
1344
+ # Retrieves information about a created decoder manifest.
1345
+ #
1346
+ # @option params [required, String] :name
1347
+ # The name of the decoder manifest to retrieve information about.
1348
+ #
1349
+ # @return [Types::GetDecoderManifestResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1350
+ #
1351
+ # * {Types::GetDecoderManifestResponse#name #name} => String
1352
+ # * {Types::GetDecoderManifestResponse#arn #arn} => String
1353
+ # * {Types::GetDecoderManifestResponse#description #description} => String
1354
+ # * {Types::GetDecoderManifestResponse#model_manifest_arn #model_manifest_arn} => String
1355
+ # * {Types::GetDecoderManifestResponse#status #status} => String
1356
+ # * {Types::GetDecoderManifestResponse#creation_time #creation_time} => Time
1357
+ # * {Types::GetDecoderManifestResponse#last_modification_time #last_modification_time} => Time
1358
+ #
1359
+ # @example Request syntax with placeholder values
1360
+ #
1361
+ # resp = client.get_decoder_manifest({
1362
+ # name: "resourceName", # required
1363
+ # })
1364
+ #
1365
+ # @example Response structure
1366
+ #
1367
+ # resp.name #=> String
1368
+ # resp.arn #=> String
1369
+ # resp.description #=> String
1370
+ # resp.model_manifest_arn #=> String
1371
+ # resp.status #=> String, one of "ACTIVE", "DRAFT"
1372
+ # resp.creation_time #=> Time
1373
+ # resp.last_modification_time #=> Time
1374
+ #
1375
+ # @overload get_decoder_manifest(params = {})
1376
+ # @param [Hash] params ({})
1377
+ def get_decoder_manifest(params = {}, options = {})
1378
+ req = build_request(:get_decoder_manifest, params)
1379
+ req.send_request(options)
1380
+ end
1381
+
1382
+ # Retrieves information about a fleet.
1383
+ #
1384
+ # @option params [required, String] :fleet_id
1385
+ # The ID of the fleet to retrieve information about.
1386
+ #
1387
+ # @return [Types::GetFleetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1388
+ #
1389
+ # * {Types::GetFleetResponse#id #id} => String
1390
+ # * {Types::GetFleetResponse#arn #arn} => String
1391
+ # * {Types::GetFleetResponse#description #description} => String
1392
+ # * {Types::GetFleetResponse#signal_catalog_arn #signal_catalog_arn} => String
1393
+ # * {Types::GetFleetResponse#creation_time #creation_time} => Time
1394
+ # * {Types::GetFleetResponse#last_modification_time #last_modification_time} => Time
1395
+ #
1396
+ # @example Request syntax with placeholder values
1397
+ #
1398
+ # resp = client.get_fleet({
1399
+ # fleet_id: "fleetId", # required
1400
+ # })
1401
+ #
1402
+ # @example Response structure
1403
+ #
1404
+ # resp.id #=> String
1405
+ # resp.arn #=> String
1406
+ # resp.description #=> String
1407
+ # resp.signal_catalog_arn #=> String
1408
+ # resp.creation_time #=> Time
1409
+ # resp.last_modification_time #=> Time
1410
+ #
1411
+ # @overload get_fleet(params = {})
1412
+ # @param [Hash] params ({})
1413
+ def get_fleet(params = {}, options = {})
1414
+ req = build_request(:get_fleet, params)
1415
+ req.send_request(options)
1416
+ end
1417
+
1418
+ # Retrieves the logging options.
1419
+ #
1420
+ # @return [Types::GetLoggingOptionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1421
+ #
1422
+ # * {Types::GetLoggingOptionsResponse#cloud_watch_log_delivery #cloud_watch_log_delivery} => Types::CloudWatchLogDeliveryOptions
1423
+ #
1424
+ # @example Response structure
1425
+ #
1426
+ # resp.cloud_watch_log_delivery.log_type #=> String, one of "OFF", "ERROR"
1427
+ # resp.cloud_watch_log_delivery.log_group_name #=> String
1428
+ #
1429
+ # @overload get_logging_options(params = {})
1430
+ # @param [Hash] params ({})
1431
+ def get_logging_options(params = {}, options = {})
1432
+ req = build_request(:get_logging_options, params)
1433
+ req.send_request(options)
1434
+ end
1435
+
1436
+ # Retrieves information about a vehicle model (model manifest).
1437
+ #
1438
+ # @option params [required, String] :name
1439
+ # The name of the vehicle model to retrieve information about.
1440
+ #
1441
+ # @return [Types::GetModelManifestResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1442
+ #
1443
+ # * {Types::GetModelManifestResponse#name #name} => String
1444
+ # * {Types::GetModelManifestResponse#arn #arn} => String
1445
+ # * {Types::GetModelManifestResponse#description #description} => String
1446
+ # * {Types::GetModelManifestResponse#signal_catalog_arn #signal_catalog_arn} => String
1447
+ # * {Types::GetModelManifestResponse#status #status} => String
1448
+ # * {Types::GetModelManifestResponse#creation_time #creation_time} => Time
1449
+ # * {Types::GetModelManifestResponse#last_modification_time #last_modification_time} => Time
1450
+ #
1451
+ # @example Request syntax with placeholder values
1452
+ #
1453
+ # resp = client.get_model_manifest({
1454
+ # name: "resourceName", # required
1455
+ # })
1456
+ #
1457
+ # @example Response structure
1458
+ #
1459
+ # resp.name #=> String
1460
+ # resp.arn #=> String
1461
+ # resp.description #=> String
1462
+ # resp.signal_catalog_arn #=> String
1463
+ # resp.status #=> String, one of "ACTIVE", "DRAFT"
1464
+ # resp.creation_time #=> Time
1465
+ # resp.last_modification_time #=> Time
1466
+ #
1467
+ # @overload get_model_manifest(params = {})
1468
+ # @param [Hash] params ({})
1469
+ def get_model_manifest(params = {}, options = {})
1470
+ req = build_request(:get_model_manifest, params)
1471
+ req.send_request(options)
1472
+ end
1473
+
1474
+ # Retrieves information about the status of registering your Amazon Web
1475
+ # Services account, IAM, and Amazon Timestream resources so that Amazon
1476
+ # Web Services IoT FleetWise can transfer your vehicle data to the
1477
+ # Amazon Web Services Cloud.
1478
+ #
1479
+ # For more information, including step-by-step procedures, see [Setting
1480
+ # up Amazon Web Services IoT FleetWise][1].
1481
+ #
1482
+ # <note markdown="1"> This API operation doesn't require input parameters.
1483
+ #
1484
+ # </note>
1485
+ #
1486
+ #
1487
+ #
1488
+ # [1]: https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/setting-up.html
1489
+ #
1490
+ # @return [Types::GetRegisterAccountStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1491
+ #
1492
+ # * {Types::GetRegisterAccountStatusResponse#customer_account_id #customer_account_id} => String
1493
+ # * {Types::GetRegisterAccountStatusResponse#account_status #account_status} => String
1494
+ # * {Types::GetRegisterAccountStatusResponse#timestream_registration_response #timestream_registration_response} => Types::TimestreamRegistrationResponse
1495
+ # * {Types::GetRegisterAccountStatusResponse#iam_registration_response #iam_registration_response} => Types::IamRegistrationResponse
1496
+ # * {Types::GetRegisterAccountStatusResponse#creation_time #creation_time} => Time
1497
+ # * {Types::GetRegisterAccountStatusResponse#last_modification_time #last_modification_time} => Time
1498
+ #
1499
+ # @example Response structure
1500
+ #
1501
+ # resp.customer_account_id #=> String
1502
+ # resp.account_status #=> String, one of "REGISTRATION_PENDING", "REGISTRATION_SUCCESS", "REGISTRATION_FAILURE"
1503
+ # resp.timestream_registration_response.timestream_database_name #=> String
1504
+ # resp.timestream_registration_response.timestream_table_name #=> String
1505
+ # resp.timestream_registration_response.timestream_database_arn #=> String
1506
+ # resp.timestream_registration_response.timestream_table_arn #=> String
1507
+ # resp.timestream_registration_response.registration_status #=> String, one of "REGISTRATION_PENDING", "REGISTRATION_SUCCESS", "REGISTRATION_FAILURE"
1508
+ # resp.timestream_registration_response.error_message #=> String
1509
+ # resp.iam_registration_response.role_arn #=> String
1510
+ # resp.iam_registration_response.registration_status #=> String, one of "REGISTRATION_PENDING", "REGISTRATION_SUCCESS", "REGISTRATION_FAILURE"
1511
+ # resp.iam_registration_response.error_message #=> String
1512
+ # resp.creation_time #=> Time
1513
+ # resp.last_modification_time #=> Time
1514
+ #
1515
+ # @overload get_register_account_status(params = {})
1516
+ # @param [Hash] params ({})
1517
+ def get_register_account_status(params = {}, options = {})
1518
+ req = build_request(:get_register_account_status, params)
1519
+ req.send_request(options)
1520
+ end
1521
+
1522
+ # Retrieves information about a signal catalog.
1523
+ #
1524
+ # @option params [required, String] :name
1525
+ # The name of the signal catalog to retrieve information about.
1526
+ #
1527
+ # @return [Types::GetSignalCatalogResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1528
+ #
1529
+ # * {Types::GetSignalCatalogResponse#name #name} => String
1530
+ # * {Types::GetSignalCatalogResponse#arn #arn} => String
1531
+ # * {Types::GetSignalCatalogResponse#description #description} => String
1532
+ # * {Types::GetSignalCatalogResponse#node_counts #node_counts} => Types::NodeCounts
1533
+ # * {Types::GetSignalCatalogResponse#creation_time #creation_time} => Time
1534
+ # * {Types::GetSignalCatalogResponse#last_modification_time #last_modification_time} => Time
1535
+ #
1536
+ # @example Request syntax with placeholder values
1537
+ #
1538
+ # resp = client.get_signal_catalog({
1539
+ # name: "resourceName", # required
1540
+ # })
1541
+ #
1542
+ # @example Response structure
1543
+ #
1544
+ # resp.name #=> String
1545
+ # resp.arn #=> String
1546
+ # resp.description #=> String
1547
+ # resp.node_counts.total_nodes #=> Integer
1548
+ # resp.node_counts.total_branches #=> Integer
1549
+ # resp.node_counts.total_sensors #=> Integer
1550
+ # resp.node_counts.total_attributes #=> Integer
1551
+ # resp.node_counts.total_actuators #=> Integer
1552
+ # resp.creation_time #=> Time
1553
+ # resp.last_modification_time #=> Time
1554
+ #
1555
+ # @overload get_signal_catalog(params = {})
1556
+ # @param [Hash] params ({})
1557
+ def get_signal_catalog(params = {}, options = {})
1558
+ req = build_request(:get_signal_catalog, params)
1559
+ req.send_request(options)
1560
+ end
1561
+
1562
+ # Retrieves information about a vehicle.
1563
+ #
1564
+ # @option params [required, String] :vehicle_name
1565
+ # The ID of the vehicle to retrieve information about.
1566
+ #
1567
+ # @return [Types::GetVehicleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1568
+ #
1569
+ # * {Types::GetVehicleResponse#vehicle_name #vehicle_name} => String
1570
+ # * {Types::GetVehicleResponse#arn #arn} => String
1571
+ # * {Types::GetVehicleResponse#model_manifest_arn #model_manifest_arn} => String
1572
+ # * {Types::GetVehicleResponse#decoder_manifest_arn #decoder_manifest_arn} => String
1573
+ # * {Types::GetVehicleResponse#attributes #attributes} => Hash&lt;String,String&gt;
1574
+ # * {Types::GetVehicleResponse#creation_time #creation_time} => Time
1575
+ # * {Types::GetVehicleResponse#last_modification_time #last_modification_time} => Time
1576
+ #
1577
+ # @example Request syntax with placeholder values
1578
+ #
1579
+ # resp = client.get_vehicle({
1580
+ # vehicle_name: "vehicleName", # required
1581
+ # })
1582
+ #
1583
+ # @example Response structure
1584
+ #
1585
+ # resp.vehicle_name #=> String
1586
+ # resp.arn #=> String
1587
+ # resp.model_manifest_arn #=> String
1588
+ # resp.decoder_manifest_arn #=> String
1589
+ # resp.attributes #=> Hash
1590
+ # resp.attributes["attributeName"] #=> String
1591
+ # resp.creation_time #=> Time
1592
+ # resp.last_modification_time #=> Time
1593
+ #
1594
+ # @overload get_vehicle(params = {})
1595
+ # @param [Hash] params ({})
1596
+ def get_vehicle(params = {}, options = {})
1597
+ req = build_request(:get_vehicle, params)
1598
+ req.send_request(options)
1599
+ end
1600
+
1601
+ # Retrieves information about the status of a vehicle with any
1602
+ # associated campaigns.
1603
+ #
1604
+ # @option params [String] :next_token
1605
+ # A pagination token for the next set of results.
1606
+ #
1607
+ # If the results of a search are large, only a portion of the results
1608
+ # are returned, and a `nextToken` pagination token is returned in the
1609
+ # response. To retrieve the next set of results, reissue the search
1610
+ # request and include the returned token. When all results have been
1611
+ # returned, the response does not contain a pagination token value.
1612
+ #
1613
+ # @option params [Integer] :max_results
1614
+ # The maximum number of items to return, between 1 and 100, inclusive.
1615
+ #
1616
+ # @option params [required, String] :vehicle_name
1617
+ # The ID of the vehicle to retrieve information about.
1618
+ #
1619
+ # @return [Types::GetVehicleStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1620
+ #
1621
+ # * {Types::GetVehicleStatusResponse#campaigns #campaigns} => Array&lt;Types::VehicleStatus&gt;
1622
+ # * {Types::GetVehicleStatusResponse#next_token #next_token} => String
1623
+ #
1624
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1625
+ #
1626
+ # @example Request syntax with placeholder values
1627
+ #
1628
+ # resp = client.get_vehicle_status({
1629
+ # next_token: "nextToken",
1630
+ # max_results: 1,
1631
+ # vehicle_name: "vehicleName", # required
1632
+ # })
1633
+ #
1634
+ # @example Response structure
1635
+ #
1636
+ # resp.campaigns #=> Array
1637
+ # resp.campaigns[0].campaign_name #=> String
1638
+ # resp.campaigns[0].vehicle_name #=> String
1639
+ # resp.campaigns[0].status #=> String, one of "CREATED", "READY", "HEALTHY", "SUSPENDED", "DELETING"
1640
+ # resp.next_token #=> String
1641
+ #
1642
+ # @overload get_vehicle_status(params = {})
1643
+ # @param [Hash] params ({})
1644
+ def get_vehicle_status(params = {}, options = {})
1645
+ req = build_request(:get_vehicle_status, params)
1646
+ req.send_request(options)
1647
+ end
1648
+
1649
+ # Creates a decoder manifest using your existing CAN DBC file from your
1650
+ # local device.
1651
+ #
1652
+ # @option params [required, String] :name
1653
+ # The name of the decoder manifest to import.
1654
+ #
1655
+ # @option params [required, Array<Types::NetworkFileDefinition>] :network_file_definitions
1656
+ # The file to load into an Amazon Web Services account.
1657
+ #
1658
+ # @return [Types::ImportDecoderManifestResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1659
+ #
1660
+ # * {Types::ImportDecoderManifestResponse#name #name} => String
1661
+ # * {Types::ImportDecoderManifestResponse#arn #arn} => String
1662
+ #
1663
+ # @example Request syntax with placeholder values
1664
+ #
1665
+ # resp = client.import_decoder_manifest({
1666
+ # name: "resourceName", # required
1667
+ # network_file_definitions: [ # required
1668
+ # {
1669
+ # can_dbc: {
1670
+ # network_interface: "InterfaceId", # required
1671
+ # can_dbc_files: ["data"], # required
1672
+ # signals_map: {
1673
+ # "string" => "string",
1674
+ # },
1675
+ # },
1676
+ # },
1677
+ # ],
1678
+ # })
1679
+ #
1680
+ # @example Response structure
1681
+ #
1682
+ # resp.name #=> String
1683
+ # resp.arn #=> String
1684
+ #
1685
+ # @overload import_decoder_manifest(params = {})
1686
+ # @param [Hash] params ({})
1687
+ def import_decoder_manifest(params = {}, options = {})
1688
+ req = build_request(:import_decoder_manifest, params)
1689
+ req.send_request(options)
1690
+ end
1691
+
1692
+ # Creates a signal catalog using your existing VSS formatted content
1693
+ # from your local device.
1694
+ #
1695
+ # @option params [required, String] :name
1696
+ # The name of the signal catalog to import.
1697
+ #
1698
+ # @option params [String] :description
1699
+ # A brief description of the signal catalog.
1700
+ #
1701
+ # @option params [Types::FormattedVss] :vss
1702
+ # The contents of the Vehicle Signal Specification (VSS) configuration.
1703
+ # VSS is a precise language used to describe and model signals in
1704
+ # vehicle networks.
1705
+ #
1706
+ # @option params [Array<Types::Tag>] :tags
1707
+ # Metadata that can be used to manage the signal catalog.
1708
+ #
1709
+ # @return [Types::ImportSignalCatalogResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1710
+ #
1711
+ # * {Types::ImportSignalCatalogResponse#name #name} => String
1712
+ # * {Types::ImportSignalCatalogResponse#arn #arn} => String
1713
+ #
1714
+ # @example Request syntax with placeholder values
1715
+ #
1716
+ # resp = client.import_signal_catalog({
1717
+ # name: "resourceName", # required
1718
+ # description: "description",
1719
+ # vss: {
1720
+ # vss_json: "String",
1721
+ # },
1722
+ # tags: [
1723
+ # {
1724
+ # key: "TagKey", # required
1725
+ # value: "TagValue", # required
1726
+ # },
1727
+ # ],
1728
+ # })
1729
+ #
1730
+ # @example Response structure
1731
+ #
1732
+ # resp.name #=> String
1733
+ # resp.arn #=> String
1734
+ #
1735
+ # @overload import_signal_catalog(params = {})
1736
+ # @param [Hash] params ({})
1737
+ def import_signal_catalog(params = {}, options = {})
1738
+ req = build_request(:import_signal_catalog, params)
1739
+ req.send_request(options)
1740
+ end
1741
+
1742
+ # Lists information about created campaigns.
1743
+ #
1744
+ # <note markdown="1"> This API operation uses pagination. Specify the `nextToken` parameter
1745
+ # in the request to return more results.
1746
+ #
1747
+ # </note>
1748
+ #
1749
+ # @option params [String] :next_token
1750
+ # A pagination token for the next set of results.
1751
+ #
1752
+ # If the results of a search are large, only a portion of the results
1753
+ # are returned, and a `nextToken` pagination token is returned in the
1754
+ # response. To retrieve the next set of results, reissue the search
1755
+ # request and include the returned token. When all results have been
1756
+ # returned, the response does not contain a pagination token value.
1757
+ #
1758
+ # @option params [Integer] :max_results
1759
+ # The maximum number of items to return, between 1 and 100, inclusive.
1760
+ #
1761
+ # @option params [String] :status
1762
+ # Optional parameter to filter the results by the status of each created
1763
+ # campaign in your account. The status can be one of: `CREATING`,
1764
+ # `WAITING_FOR_APPROVAL`, `RUNNING`, or `SUSPENDED`.
1765
+ #
1766
+ # @return [Types::ListCampaignsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1767
+ #
1768
+ # * {Types::ListCampaignsResponse#campaign_summaries #campaign_summaries} => Array&lt;Types::CampaignSummary&gt;
1769
+ # * {Types::ListCampaignsResponse#next_token #next_token} => String
1770
+ #
1771
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1772
+ #
1773
+ # @example Request syntax with placeholder values
1774
+ #
1775
+ # resp = client.list_campaigns({
1776
+ # next_token: "nextToken",
1777
+ # max_results: 1,
1778
+ # status: "status",
1779
+ # })
1780
+ #
1781
+ # @example Response structure
1782
+ #
1783
+ # resp.campaign_summaries #=> Array
1784
+ # resp.campaign_summaries[0].arn #=> String
1785
+ # resp.campaign_summaries[0].name #=> String
1786
+ # resp.campaign_summaries[0].description #=> String
1787
+ # resp.campaign_summaries[0].signal_catalog_arn #=> String
1788
+ # resp.campaign_summaries[0].target_arn #=> String
1789
+ # resp.campaign_summaries[0].status #=> String, one of "CREATING", "WAITING_FOR_APPROVAL", "RUNNING", "SUSPENDED"
1790
+ # resp.campaign_summaries[0].creation_time #=> Time
1791
+ # resp.campaign_summaries[0].last_modification_time #=> Time
1792
+ # resp.next_token #=> String
1793
+ #
1794
+ # @overload list_campaigns(params = {})
1795
+ # @param [Hash] params ({})
1796
+ def list_campaigns(params = {}, options = {})
1797
+ req = build_request(:list_campaigns, params)
1798
+ req.send_request(options)
1799
+ end
1800
+
1801
+ # Lists the network interfaces specified in a decoder manifest.
1802
+ #
1803
+ # <note markdown="1"> This API operation uses pagination. Specify the `nextToken` parameter
1804
+ # in the request to return more results.
1805
+ #
1806
+ # </note>
1807
+ #
1808
+ # @option params [required, String] :name
1809
+ # The name of the decoder manifest to list information about.
1810
+ #
1811
+ # @option params [String] :next_token
1812
+ # A pagination token for the next set of results.
1813
+ #
1814
+ # If the results of a search are large, only a portion of the results
1815
+ # are returned, and a `nextToken` pagination token is returned in the
1816
+ # response. To retrieve the next set of results, reissue the search
1817
+ # request and include the returned token. When all results have been
1818
+ # returned, the response does not contain a pagination token value.
1819
+ #
1820
+ # @option params [Integer] :max_results
1821
+ # The maximum number of items to return, between 1 and 100, inclusive.
1822
+ #
1823
+ # @return [Types::ListDecoderManifestNetworkInterfacesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1824
+ #
1825
+ # * {Types::ListDecoderManifestNetworkInterfacesResponse#network_interfaces #network_interfaces} => Array&lt;Types::NetworkInterface&gt;
1826
+ # * {Types::ListDecoderManifestNetworkInterfacesResponse#next_token #next_token} => String
1827
+ #
1828
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1829
+ #
1830
+ # @example Request syntax with placeholder values
1831
+ #
1832
+ # resp = client.list_decoder_manifest_network_interfaces({
1833
+ # name: "resourceName", # required
1834
+ # next_token: "nextToken",
1835
+ # max_results: 1,
1836
+ # })
1837
+ #
1838
+ # @example Response structure
1839
+ #
1840
+ # resp.network_interfaces #=> Array
1841
+ # resp.network_interfaces[0].interface_id #=> String
1842
+ # resp.network_interfaces[0].type #=> String, one of "CAN_INTERFACE", "OBD_INTERFACE"
1843
+ # resp.network_interfaces[0].can_interface.name #=> String
1844
+ # resp.network_interfaces[0].can_interface.protocol_name #=> String
1845
+ # resp.network_interfaces[0].can_interface.protocol_version #=> String
1846
+ # resp.network_interfaces[0].obd_interface.name #=> String
1847
+ # resp.network_interfaces[0].obd_interface.request_message_id #=> Integer
1848
+ # resp.network_interfaces[0].obd_interface.obd_standard #=> String
1849
+ # resp.network_interfaces[0].obd_interface.pid_request_interval_seconds #=> Integer
1850
+ # resp.network_interfaces[0].obd_interface.dtc_request_interval_seconds #=> Integer
1851
+ # resp.network_interfaces[0].obd_interface.use_extended_ids #=> Boolean
1852
+ # resp.network_interfaces[0].obd_interface.has_transmission_ecu #=> Boolean
1853
+ # resp.next_token #=> String
1854
+ #
1855
+ # @overload list_decoder_manifest_network_interfaces(params = {})
1856
+ # @param [Hash] params ({})
1857
+ def list_decoder_manifest_network_interfaces(params = {}, options = {})
1858
+ req = build_request(:list_decoder_manifest_network_interfaces, params)
1859
+ req.send_request(options)
1860
+ end
1861
+
1862
+ # A list of information about signal decoders specified in a decoder
1863
+ # manifest.
1864
+ #
1865
+ # <note markdown="1"> This API operation uses pagination. Specify the `nextToken` parameter
1866
+ # in the request to return more results.
1867
+ #
1868
+ # </note>
1869
+ #
1870
+ # @option params [required, String] :name
1871
+ # The name of the decoder manifest to list information about.
1872
+ #
1873
+ # @option params [String] :next_token
1874
+ # A pagination token for the next set of results.
1875
+ #
1876
+ # If the results of a search are large, only a portion of the results
1877
+ # are returned, and a `nextToken` pagination token is returned in the
1878
+ # response. To retrieve the next set of results, reissue the search
1879
+ # request and include the returned token. When all results have been
1880
+ # returned, the response does not contain a pagination token value.
1881
+ #
1882
+ # @option params [Integer] :max_results
1883
+ # The maximum number of items to return, between 1 and 100, inclusive.
1884
+ #
1885
+ # @return [Types::ListDecoderManifestSignalsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1886
+ #
1887
+ # * {Types::ListDecoderManifestSignalsResponse#signal_decoders #signal_decoders} => Array&lt;Types::SignalDecoder&gt;
1888
+ # * {Types::ListDecoderManifestSignalsResponse#next_token #next_token} => String
1889
+ #
1890
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1891
+ #
1892
+ # @example Request syntax with placeholder values
1893
+ #
1894
+ # resp = client.list_decoder_manifest_signals({
1895
+ # name: "resourceName", # required
1896
+ # next_token: "nextToken",
1897
+ # max_results: 1,
1898
+ # })
1899
+ #
1900
+ # @example Response structure
1901
+ #
1902
+ # resp.signal_decoders #=> Array
1903
+ # resp.signal_decoders[0].fully_qualified_name #=> String
1904
+ # resp.signal_decoders[0].type #=> String, one of "CAN_SIGNAL", "OBD_SIGNAL"
1905
+ # resp.signal_decoders[0].interface_id #=> String
1906
+ # resp.signal_decoders[0].can_signal.message_id #=> Integer
1907
+ # resp.signal_decoders[0].can_signal.is_big_endian #=> Boolean
1908
+ # resp.signal_decoders[0].can_signal.is_signed #=> Boolean
1909
+ # resp.signal_decoders[0].can_signal.start_bit #=> Integer
1910
+ # resp.signal_decoders[0].can_signal.offset #=> Float
1911
+ # resp.signal_decoders[0].can_signal.factor #=> Float
1912
+ # resp.signal_decoders[0].can_signal.length #=> Integer
1913
+ # resp.signal_decoders[0].can_signal.name #=> String
1914
+ # resp.signal_decoders[0].obd_signal.pid_response_length #=> Integer
1915
+ # resp.signal_decoders[0].obd_signal.service_mode #=> Integer
1916
+ # resp.signal_decoders[0].obd_signal.pid #=> Integer
1917
+ # resp.signal_decoders[0].obd_signal.scaling #=> Float
1918
+ # resp.signal_decoders[0].obd_signal.offset #=> Float
1919
+ # resp.signal_decoders[0].obd_signal.start_byte #=> Integer
1920
+ # resp.signal_decoders[0].obd_signal.byte_length #=> Integer
1921
+ # resp.signal_decoders[0].obd_signal.bit_right_shift #=> Integer
1922
+ # resp.signal_decoders[0].obd_signal.bit_mask_length #=> Integer
1923
+ # resp.next_token #=> String
1924
+ #
1925
+ # @overload list_decoder_manifest_signals(params = {})
1926
+ # @param [Hash] params ({})
1927
+ def list_decoder_manifest_signals(params = {}, options = {})
1928
+ req = build_request(:list_decoder_manifest_signals, params)
1929
+ req.send_request(options)
1930
+ end
1931
+
1932
+ # Lists decoder manifests.
1933
+ #
1934
+ # <note markdown="1"> This API operation uses pagination. Specify the `nextToken` parameter
1935
+ # in the request to return more results.
1936
+ #
1937
+ # </note>
1938
+ #
1939
+ # @option params [String] :model_manifest_arn
1940
+ # The Amazon Resource Name (ARN) of a vehicle model (model manifest)
1941
+ # associated with the decoder manifest.
1942
+ #
1943
+ # @option params [String] :next_token
1944
+ # A pagination token for the next set of results.
1945
+ #
1946
+ # If the results of a search are large, only a portion of the results
1947
+ # are returned, and a `nextToken` pagination token is returned in the
1948
+ # response. To retrieve the next set of results, reissue the search
1949
+ # request and include the returned token. When all results have been
1950
+ # returned, the response does not contain a pagination token value.
1951
+ #
1952
+ # @option params [Integer] :max_results
1953
+ # The maximum number of items to return, between 1 and 100, inclusive.
1954
+ #
1955
+ # @return [Types::ListDecoderManifestsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1956
+ #
1957
+ # * {Types::ListDecoderManifestsResponse#summaries #summaries} => Array&lt;Types::DecoderManifestSummary&gt;
1958
+ # * {Types::ListDecoderManifestsResponse#next_token #next_token} => String
1959
+ #
1960
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1961
+ #
1962
+ # @example Request syntax with placeholder values
1963
+ #
1964
+ # resp = client.list_decoder_manifests({
1965
+ # model_manifest_arn: "arn",
1966
+ # next_token: "nextToken",
1967
+ # max_results: 1,
1968
+ # })
1969
+ #
1970
+ # @example Response structure
1971
+ #
1972
+ # resp.summaries #=> Array
1973
+ # resp.summaries[0].name #=> String
1974
+ # resp.summaries[0].arn #=> String
1975
+ # resp.summaries[0].model_manifest_arn #=> String
1976
+ # resp.summaries[0].description #=> String
1977
+ # resp.summaries[0].status #=> String, one of "ACTIVE", "DRAFT"
1978
+ # resp.summaries[0].creation_time #=> Time
1979
+ # resp.summaries[0].last_modification_time #=> Time
1980
+ # resp.next_token #=> String
1981
+ #
1982
+ # @overload list_decoder_manifests(params = {})
1983
+ # @param [Hash] params ({})
1984
+ def list_decoder_manifests(params = {}, options = {})
1985
+ req = build_request(:list_decoder_manifests, params)
1986
+ req.send_request(options)
1987
+ end
1988
+
1989
+ # Retrieves information for each created fleet in an Amazon Web Services
1990
+ # account.
1991
+ #
1992
+ # <note markdown="1"> This API operation uses pagination. Specify the `nextToken` parameter
1993
+ # in the request to return more results.
1994
+ #
1995
+ # </note>
1996
+ #
1997
+ # @option params [String] :next_token
1998
+ # A pagination token for the next set of results.
1999
+ #
2000
+ # If the results of a search are large, only a portion of the results
2001
+ # are returned, and a `nextToken` pagination token is returned in the
2002
+ # response. To retrieve the next set of results, reissue the search
2003
+ # request and include the returned token. When all results have been
2004
+ # returned, the response does not contain a pagination token value.
2005
+ #
2006
+ # @option params [Integer] :max_results
2007
+ # The maximum number of items to return, between 1 and 100, inclusive.
2008
+ #
2009
+ # @return [Types::ListFleetsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2010
+ #
2011
+ # * {Types::ListFleetsResponse#fleet_summaries #fleet_summaries} => Array&lt;Types::FleetSummary&gt;
2012
+ # * {Types::ListFleetsResponse#next_token #next_token} => String
2013
+ #
2014
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2015
+ #
2016
+ # @example Request syntax with placeholder values
2017
+ #
2018
+ # resp = client.list_fleets({
2019
+ # next_token: "nextToken",
2020
+ # max_results: 1,
2021
+ # })
2022
+ #
2023
+ # @example Response structure
2024
+ #
2025
+ # resp.fleet_summaries #=> Array
2026
+ # resp.fleet_summaries[0].id #=> String
2027
+ # resp.fleet_summaries[0].arn #=> String
2028
+ # resp.fleet_summaries[0].description #=> String
2029
+ # resp.fleet_summaries[0].signal_catalog_arn #=> String
2030
+ # resp.fleet_summaries[0].creation_time #=> Time
2031
+ # resp.fleet_summaries[0].last_modification_time #=> Time
2032
+ # resp.next_token #=> String
2033
+ #
2034
+ # @overload list_fleets(params = {})
2035
+ # @param [Hash] params ({})
2036
+ def list_fleets(params = {}, options = {})
2037
+ req = build_request(:list_fleets, params)
2038
+ req.send_request(options)
2039
+ end
2040
+
2041
+ # Retrieves a list of IDs for all fleets that the vehicle is associated
2042
+ # with.
2043
+ #
2044
+ # <note markdown="1"> This API operation uses pagination. Specify the `nextToken` parameter
2045
+ # in the request to return more results.
2046
+ #
2047
+ # </note>
2048
+ #
2049
+ # @option params [required, String] :vehicle_name
2050
+ # The ID of the vehicle to retrieve information about.
2051
+ #
2052
+ # @option params [String] :next_token
2053
+ # A pagination token for the next set of results.
2054
+ #
2055
+ # If the results of a search are large, only a portion of the results
2056
+ # are returned, and a `nextToken` pagination token is returned in the
2057
+ # response. To retrieve the next set of results, reissue the search
2058
+ # request and include the returned token. When all results have been
2059
+ # returned, the response does not contain a pagination token value.
2060
+ #
2061
+ # @option params [Integer] :max_results
2062
+ # The maximum number of items to return, between 1 and 100, inclusive.
2063
+ #
2064
+ # @return [Types::ListFleetsForVehicleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2065
+ #
2066
+ # * {Types::ListFleetsForVehicleResponse#fleets #fleets} => Array&lt;String&gt;
2067
+ # * {Types::ListFleetsForVehicleResponse#next_token #next_token} => String
2068
+ #
2069
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2070
+ #
2071
+ # @example Request syntax with placeholder values
2072
+ #
2073
+ # resp = client.list_fleets_for_vehicle({
2074
+ # vehicle_name: "vehicleName", # required
2075
+ # next_token: "nextToken",
2076
+ # max_results: 1,
2077
+ # })
2078
+ #
2079
+ # @example Response structure
2080
+ #
2081
+ # resp.fleets #=> Array
2082
+ # resp.fleets[0] #=> String
2083
+ # resp.next_token #=> String
2084
+ #
2085
+ # @overload list_fleets_for_vehicle(params = {})
2086
+ # @param [Hash] params ({})
2087
+ def list_fleets_for_vehicle(params = {}, options = {})
2088
+ req = build_request(:list_fleets_for_vehicle, params)
2089
+ req.send_request(options)
2090
+ end
2091
+
2092
+ # Lists information about nodes specified in a vehicle model (model
2093
+ # manifest).
2094
+ #
2095
+ # <note markdown="1"> This API operation uses pagination. Specify the `nextToken` parameter
2096
+ # in the request to return more results.
2097
+ #
2098
+ # </note>
2099
+ #
2100
+ # @option params [required, String] :name
2101
+ # The name of the vehicle model to list information about.
2102
+ #
2103
+ # @option params [String] :next_token
2104
+ # A pagination token for the next set of results.
2105
+ #
2106
+ # If the results of a search are large, only a portion of the results
2107
+ # are returned, and a `nextToken` pagination token is returned in the
2108
+ # response. To retrieve the next set of results, reissue the search
2109
+ # request and include the returned token. When all results have been
2110
+ # returned, the response does not contain a pagination token value.
2111
+ #
2112
+ # @option params [Integer] :max_results
2113
+ # The maximum number of items to return, between 1 and 100, inclusive.
2114
+ #
2115
+ # @return [Types::ListModelManifestNodesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2116
+ #
2117
+ # * {Types::ListModelManifestNodesResponse#nodes #nodes} => Array&lt;Types::Node&gt;
2118
+ # * {Types::ListModelManifestNodesResponse#next_token #next_token} => String
2119
+ #
2120
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2121
+ #
2122
+ # @example Request syntax with placeholder values
2123
+ #
2124
+ # resp = client.list_model_manifest_nodes({
2125
+ # name: "resourceName", # required
2126
+ # next_token: "nextToken",
2127
+ # max_results: 1,
2128
+ # })
2129
+ #
2130
+ # @example Response structure
2131
+ #
2132
+ # resp.nodes #=> Array
2133
+ # resp.nodes[0].branch.fully_qualified_name #=> String
2134
+ # resp.nodes[0].branch.description #=> String
2135
+ # resp.nodes[0].sensor.fully_qualified_name #=> String
2136
+ # resp.nodes[0].sensor.data_type #=> String, one of "INT8", "UINT8", "INT16", "UINT16", "INT32", "UINT32", "INT64", "UINT64", "BOOLEAN", "FLOAT", "DOUBLE", "STRING", "UNIX_TIMESTAMP", "INT8_ARRAY", "UINT8_ARRAY", "INT16_ARRAY", "UINT16_ARRAY", "INT32_ARRAY", "UINT32_ARRAY", "INT64_ARRAY", "UINT64_ARRAY", "BOOLEAN_ARRAY", "FLOAT_ARRAY", "DOUBLE_ARRAY", "STRING_ARRAY", "UNIX_TIMESTAMP_ARRAY", "UNKNOWN"
2137
+ # resp.nodes[0].sensor.description #=> String
2138
+ # resp.nodes[0].sensor.unit #=> String
2139
+ # resp.nodes[0].sensor.allowed_values #=> Array
2140
+ # resp.nodes[0].sensor.allowed_values[0] #=> String
2141
+ # resp.nodes[0].sensor.min #=> Float
2142
+ # resp.nodes[0].sensor.max #=> Float
2143
+ # resp.nodes[0].actuator.fully_qualified_name #=> String
2144
+ # resp.nodes[0].actuator.data_type #=> String, one of "INT8", "UINT8", "INT16", "UINT16", "INT32", "UINT32", "INT64", "UINT64", "BOOLEAN", "FLOAT", "DOUBLE", "STRING", "UNIX_TIMESTAMP", "INT8_ARRAY", "UINT8_ARRAY", "INT16_ARRAY", "UINT16_ARRAY", "INT32_ARRAY", "UINT32_ARRAY", "INT64_ARRAY", "UINT64_ARRAY", "BOOLEAN_ARRAY", "FLOAT_ARRAY", "DOUBLE_ARRAY", "STRING_ARRAY", "UNIX_TIMESTAMP_ARRAY", "UNKNOWN"
2145
+ # resp.nodes[0].actuator.description #=> String
2146
+ # resp.nodes[0].actuator.unit #=> String
2147
+ # resp.nodes[0].actuator.allowed_values #=> Array
2148
+ # resp.nodes[0].actuator.allowed_values[0] #=> String
2149
+ # resp.nodes[0].actuator.min #=> Float
2150
+ # resp.nodes[0].actuator.max #=> Float
2151
+ # resp.nodes[0].actuator.assigned_value #=> String
2152
+ # resp.nodes[0].attribute.fully_qualified_name #=> String
2153
+ # resp.nodes[0].attribute.data_type #=> String, one of "INT8", "UINT8", "INT16", "UINT16", "INT32", "UINT32", "INT64", "UINT64", "BOOLEAN", "FLOAT", "DOUBLE", "STRING", "UNIX_TIMESTAMP", "INT8_ARRAY", "UINT8_ARRAY", "INT16_ARRAY", "UINT16_ARRAY", "INT32_ARRAY", "UINT32_ARRAY", "INT64_ARRAY", "UINT64_ARRAY", "BOOLEAN_ARRAY", "FLOAT_ARRAY", "DOUBLE_ARRAY", "STRING_ARRAY", "UNIX_TIMESTAMP_ARRAY", "UNKNOWN"
2154
+ # resp.nodes[0].attribute.description #=> String
2155
+ # resp.nodes[0].attribute.unit #=> String
2156
+ # resp.nodes[0].attribute.allowed_values #=> Array
2157
+ # resp.nodes[0].attribute.allowed_values[0] #=> String
2158
+ # resp.nodes[0].attribute.min #=> Float
2159
+ # resp.nodes[0].attribute.max #=> Float
2160
+ # resp.nodes[0].attribute.assigned_value #=> String
2161
+ # resp.nodes[0].attribute.default_value #=> String
2162
+ # resp.next_token #=> String
2163
+ #
2164
+ # @overload list_model_manifest_nodes(params = {})
2165
+ # @param [Hash] params ({})
2166
+ def list_model_manifest_nodes(params = {}, options = {})
2167
+ req = build_request(:list_model_manifest_nodes, params)
2168
+ req.send_request(options)
2169
+ end
2170
+
2171
+ # Retrieves a list of vehicle models (model manifests).
2172
+ #
2173
+ # <note markdown="1"> This API operation uses pagination. Specify the `nextToken` parameter
2174
+ # in the request to return more results.
2175
+ #
2176
+ # </note>
2177
+ #
2178
+ # @option params [String] :signal_catalog_arn
2179
+ # The ARN of a signal catalog. If you specify a signal catalog, only the
2180
+ # vehicle models associated with it are returned.
2181
+ #
2182
+ # @option params [String] :next_token
2183
+ # A pagination token for the next set of results.
2184
+ #
2185
+ # If the results of a search are large, only a portion of the results
2186
+ # are returned, and a `nextToken` pagination token is returned in the
2187
+ # response. To retrieve the next set of results, reissue the search
2188
+ # request and include the returned token. When all results have been
2189
+ # returned, the response does not contain a pagination token value.
2190
+ #
2191
+ # @option params [Integer] :max_results
2192
+ # The maximum number of items to return, between 1 and 100, inclusive.
2193
+ #
2194
+ # @return [Types::ListModelManifestsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2195
+ #
2196
+ # * {Types::ListModelManifestsResponse#summaries #summaries} => Array&lt;Types::ModelManifestSummary&gt;
2197
+ # * {Types::ListModelManifestsResponse#next_token #next_token} => String
2198
+ #
2199
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2200
+ #
2201
+ # @example Request syntax with placeholder values
2202
+ #
2203
+ # resp = client.list_model_manifests({
2204
+ # signal_catalog_arn: "arn",
2205
+ # next_token: "nextToken",
2206
+ # max_results: 1,
2207
+ # })
2208
+ #
2209
+ # @example Response structure
2210
+ #
2211
+ # resp.summaries #=> Array
2212
+ # resp.summaries[0].name #=> String
2213
+ # resp.summaries[0].arn #=> String
2214
+ # resp.summaries[0].signal_catalog_arn #=> String
2215
+ # resp.summaries[0].description #=> String
2216
+ # resp.summaries[0].status #=> String, one of "ACTIVE", "DRAFT"
2217
+ # resp.summaries[0].creation_time #=> Time
2218
+ # resp.summaries[0].last_modification_time #=> Time
2219
+ # resp.next_token #=> String
2220
+ #
2221
+ # @overload list_model_manifests(params = {})
2222
+ # @param [Hash] params ({})
2223
+ def list_model_manifests(params = {}, options = {})
2224
+ req = build_request(:list_model_manifests, params)
2225
+ req.send_request(options)
2226
+ end
2227
+
2228
+ # Lists of information about the signals (nodes) specified in a signal
2229
+ # catalog.
2230
+ #
2231
+ # <note markdown="1"> This API operation uses pagination. Specify the `nextToken` parameter
2232
+ # in the request to return more results.
2233
+ #
2234
+ # </note>
2235
+ #
2236
+ # @option params [required, String] :name
2237
+ # The name of the signal catalog to list information about.
2238
+ #
2239
+ # @option params [String] :next_token
2240
+ # A pagination token for the next set of results.
2241
+ #
2242
+ # If the results of a search are large, only a portion of the results
2243
+ # are returned, and a `nextToken` pagination token is returned in the
2244
+ # response. To retrieve the next set of results, reissue the search
2245
+ # request and include the returned token. When all results have been
2246
+ # returned, the response does not contain a pagination token value.
2247
+ #
2248
+ # @option params [Integer] :max_results
2249
+ # The maximum number of items to return, between 1 and 100, inclusive.
2250
+ #
2251
+ # @return [Types::ListSignalCatalogNodesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2252
+ #
2253
+ # * {Types::ListSignalCatalogNodesResponse#nodes #nodes} => Array&lt;Types::Node&gt;
2254
+ # * {Types::ListSignalCatalogNodesResponse#next_token #next_token} => String
2255
+ #
2256
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2257
+ #
2258
+ # @example Request syntax with placeholder values
2259
+ #
2260
+ # resp = client.list_signal_catalog_nodes({
2261
+ # name: "resourceName", # required
2262
+ # next_token: "nextToken",
2263
+ # max_results: 1,
2264
+ # })
2265
+ #
2266
+ # @example Response structure
2267
+ #
2268
+ # resp.nodes #=> Array
2269
+ # resp.nodes[0].branch.fully_qualified_name #=> String
2270
+ # resp.nodes[0].branch.description #=> String
2271
+ # resp.nodes[0].sensor.fully_qualified_name #=> String
2272
+ # resp.nodes[0].sensor.data_type #=> String, one of "INT8", "UINT8", "INT16", "UINT16", "INT32", "UINT32", "INT64", "UINT64", "BOOLEAN", "FLOAT", "DOUBLE", "STRING", "UNIX_TIMESTAMP", "INT8_ARRAY", "UINT8_ARRAY", "INT16_ARRAY", "UINT16_ARRAY", "INT32_ARRAY", "UINT32_ARRAY", "INT64_ARRAY", "UINT64_ARRAY", "BOOLEAN_ARRAY", "FLOAT_ARRAY", "DOUBLE_ARRAY", "STRING_ARRAY", "UNIX_TIMESTAMP_ARRAY", "UNKNOWN"
2273
+ # resp.nodes[0].sensor.description #=> String
2274
+ # resp.nodes[0].sensor.unit #=> String
2275
+ # resp.nodes[0].sensor.allowed_values #=> Array
2276
+ # resp.nodes[0].sensor.allowed_values[0] #=> String
2277
+ # resp.nodes[0].sensor.min #=> Float
2278
+ # resp.nodes[0].sensor.max #=> Float
2279
+ # resp.nodes[0].actuator.fully_qualified_name #=> String
2280
+ # resp.nodes[0].actuator.data_type #=> String, one of "INT8", "UINT8", "INT16", "UINT16", "INT32", "UINT32", "INT64", "UINT64", "BOOLEAN", "FLOAT", "DOUBLE", "STRING", "UNIX_TIMESTAMP", "INT8_ARRAY", "UINT8_ARRAY", "INT16_ARRAY", "UINT16_ARRAY", "INT32_ARRAY", "UINT32_ARRAY", "INT64_ARRAY", "UINT64_ARRAY", "BOOLEAN_ARRAY", "FLOAT_ARRAY", "DOUBLE_ARRAY", "STRING_ARRAY", "UNIX_TIMESTAMP_ARRAY", "UNKNOWN"
2281
+ # resp.nodes[0].actuator.description #=> String
2282
+ # resp.nodes[0].actuator.unit #=> String
2283
+ # resp.nodes[0].actuator.allowed_values #=> Array
2284
+ # resp.nodes[0].actuator.allowed_values[0] #=> String
2285
+ # resp.nodes[0].actuator.min #=> Float
2286
+ # resp.nodes[0].actuator.max #=> Float
2287
+ # resp.nodes[0].actuator.assigned_value #=> String
2288
+ # resp.nodes[0].attribute.fully_qualified_name #=> String
2289
+ # resp.nodes[0].attribute.data_type #=> String, one of "INT8", "UINT8", "INT16", "UINT16", "INT32", "UINT32", "INT64", "UINT64", "BOOLEAN", "FLOAT", "DOUBLE", "STRING", "UNIX_TIMESTAMP", "INT8_ARRAY", "UINT8_ARRAY", "INT16_ARRAY", "UINT16_ARRAY", "INT32_ARRAY", "UINT32_ARRAY", "INT64_ARRAY", "UINT64_ARRAY", "BOOLEAN_ARRAY", "FLOAT_ARRAY", "DOUBLE_ARRAY", "STRING_ARRAY", "UNIX_TIMESTAMP_ARRAY", "UNKNOWN"
2290
+ # resp.nodes[0].attribute.description #=> String
2291
+ # resp.nodes[0].attribute.unit #=> String
2292
+ # resp.nodes[0].attribute.allowed_values #=> Array
2293
+ # resp.nodes[0].attribute.allowed_values[0] #=> String
2294
+ # resp.nodes[0].attribute.min #=> Float
2295
+ # resp.nodes[0].attribute.max #=> Float
2296
+ # resp.nodes[0].attribute.assigned_value #=> String
2297
+ # resp.nodes[0].attribute.default_value #=> String
2298
+ # resp.next_token #=> String
2299
+ #
2300
+ # @overload list_signal_catalog_nodes(params = {})
2301
+ # @param [Hash] params ({})
2302
+ def list_signal_catalog_nodes(params = {}, options = {})
2303
+ req = build_request(:list_signal_catalog_nodes, params)
2304
+ req.send_request(options)
2305
+ end
2306
+
2307
+ # Lists all the created signal catalogs in an Amazon Web Services
2308
+ # account.
2309
+ #
2310
+ # You can use to list information about each signal (node) specified in
2311
+ # a signal catalog.
2312
+ #
2313
+ # <note markdown="1"> This API operation uses pagination. Specify the `nextToken` parameter
2314
+ # in the request to return more results.
2315
+ #
2316
+ # </note>
2317
+ #
2318
+ # @option params [String] :next_token
2319
+ # A pagination token for the next set of results.
2320
+ #
2321
+ # If the results of a search are large, only a portion of the results
2322
+ # are returned, and a `nextToken` pagination token is returned in the
2323
+ # response. To retrieve the next set of results, reissue the search
2324
+ # request and include the returned token. When all results have been
2325
+ # returned, the response does not contain a pagination token value.
2326
+ #
2327
+ # @option params [Integer] :max_results
2328
+ # The maximum number of items to return, between 1 and 100, inclusive.
2329
+ #
2330
+ # @return [Types::ListSignalCatalogsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2331
+ #
2332
+ # * {Types::ListSignalCatalogsResponse#summaries #summaries} => Array&lt;Types::SignalCatalogSummary&gt;
2333
+ # * {Types::ListSignalCatalogsResponse#next_token #next_token} => String
2334
+ #
2335
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2336
+ #
2337
+ # @example Request syntax with placeholder values
2338
+ #
2339
+ # resp = client.list_signal_catalogs({
2340
+ # next_token: "nextToken",
2341
+ # max_results: 1,
2342
+ # })
2343
+ #
2344
+ # @example Response structure
2345
+ #
2346
+ # resp.summaries #=> Array
2347
+ # resp.summaries[0].name #=> String
2348
+ # resp.summaries[0].arn #=> String
2349
+ # resp.summaries[0].creation_time #=> Time
2350
+ # resp.summaries[0].last_modification_time #=> Time
2351
+ # resp.next_token #=> String
2352
+ #
2353
+ # @overload list_signal_catalogs(params = {})
2354
+ # @param [Hash] params ({})
2355
+ def list_signal_catalogs(params = {}, options = {})
2356
+ req = build_request(:list_signal_catalogs, params)
2357
+ req.send_request(options)
2358
+ end
2359
+
2360
+ # Lists the tags (metadata) you have assigned to the resource.
2361
+ #
2362
+ # @option params [required, String] :resource_arn
2363
+ # The ARN of the resource.
2364
+ #
2365
+ # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2366
+ #
2367
+ # * {Types::ListTagsForResourceResponse#tags #tags} => Array&lt;Types::Tag&gt;
2368
+ #
2369
+ # @example Request syntax with placeholder values
2370
+ #
2371
+ # resp = client.list_tags_for_resource({
2372
+ # resource_arn: "AmazonResourceName", # required
2373
+ # })
2374
+ #
2375
+ # @example Response structure
2376
+ #
2377
+ # resp.tags #=> Array
2378
+ # resp.tags[0].key #=> String
2379
+ # resp.tags[0].value #=> String
2380
+ #
2381
+ # @overload list_tags_for_resource(params = {})
2382
+ # @param [Hash] params ({})
2383
+ def list_tags_for_resource(params = {}, options = {})
2384
+ req = build_request(:list_tags_for_resource, params)
2385
+ req.send_request(options)
2386
+ end
2387
+
2388
+ # Retrieves a list of summaries of created vehicles.
2389
+ #
2390
+ # <note markdown="1"> This API operation uses pagination. Specify the `nextToken` parameter
2391
+ # in the request to return more results.
2392
+ #
2393
+ # </note>
2394
+ #
2395
+ # @option params [String] :model_manifest_arn
2396
+ # The Amazon Resource Name (ARN) of a vehicle model (model manifest).
2397
+ # You can use this optional parameter to list only the vehicles created
2398
+ # from a certain vehicle model.
2399
+ #
2400
+ # @option params [String] :next_token
2401
+ # A pagination token for the next set of results.
2402
+ #
2403
+ # If the results of a search are large, only a portion of the results
2404
+ # are returned, and a `nextToken` pagination token is returned in the
2405
+ # response. To retrieve the next set of results, reissue the search
2406
+ # request and include the returned token. When all results have been
2407
+ # returned, the response does not contain a pagination token value.
2408
+ #
2409
+ # @option params [Integer] :max_results
2410
+ # The maximum number of items to return, between 1 and 100, inclusive.
2411
+ #
2412
+ # @return [Types::ListVehiclesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2413
+ #
2414
+ # * {Types::ListVehiclesResponse#vehicle_summaries #vehicle_summaries} => Array&lt;Types::VehicleSummary&gt;
2415
+ # * {Types::ListVehiclesResponse#next_token #next_token} => String
2416
+ #
2417
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2418
+ #
2419
+ # @example Request syntax with placeholder values
2420
+ #
2421
+ # resp = client.list_vehicles({
2422
+ # model_manifest_arn: "arn",
2423
+ # next_token: "nextToken",
2424
+ # max_results: 1,
2425
+ # })
2426
+ #
2427
+ # @example Response structure
2428
+ #
2429
+ # resp.vehicle_summaries #=> Array
2430
+ # resp.vehicle_summaries[0].vehicle_name #=> String
2431
+ # resp.vehicle_summaries[0].arn #=> String
2432
+ # resp.vehicle_summaries[0].model_manifest_arn #=> String
2433
+ # resp.vehicle_summaries[0].decoder_manifest_arn #=> String
2434
+ # resp.vehicle_summaries[0].creation_time #=> Time
2435
+ # resp.vehicle_summaries[0].last_modification_time #=> Time
2436
+ # resp.next_token #=> String
2437
+ #
2438
+ # @overload list_vehicles(params = {})
2439
+ # @param [Hash] params ({})
2440
+ def list_vehicles(params = {}, options = {})
2441
+ req = build_request(:list_vehicles, params)
2442
+ req.send_request(options)
2443
+ end
2444
+
2445
+ # Retrieves a list of summaries of all vehicles associated with a fleet.
2446
+ #
2447
+ # <note markdown="1"> This API operation uses pagination. Specify the `nextToken` parameter
2448
+ # in the request to return more results.
2449
+ #
2450
+ # </note>
2451
+ #
2452
+ # @option params [required, String] :fleet_id
2453
+ # The ID of a fleet.
2454
+ #
2455
+ # @option params [String] :next_token
2456
+ # A pagination token for the next set of results.
2457
+ #
2458
+ # If the results of a search are large, only a portion of the results
2459
+ # are returned, and a `nextToken` pagination token is returned in the
2460
+ # response. To retrieve the next set of results, reissue the search
2461
+ # request and include the returned token. When all results have been
2462
+ # returned, the response does not contain a pagination token value.
2463
+ #
2464
+ # @option params [Integer] :max_results
2465
+ # The maximum number of items to return, between 1 and 100, inclusive.
2466
+ #
2467
+ # @return [Types::ListVehiclesInFleetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2468
+ #
2469
+ # * {Types::ListVehiclesInFleetResponse#vehicles #vehicles} => Array&lt;String&gt;
2470
+ # * {Types::ListVehiclesInFleetResponse#next_token #next_token} => String
2471
+ #
2472
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2473
+ #
2474
+ # @example Request syntax with placeholder values
2475
+ #
2476
+ # resp = client.list_vehicles_in_fleet({
2477
+ # fleet_id: "fleetId", # required
2478
+ # next_token: "nextToken",
2479
+ # max_results: 1,
2480
+ # })
2481
+ #
2482
+ # @example Response structure
2483
+ #
2484
+ # resp.vehicles #=> Array
2485
+ # resp.vehicles[0] #=> String
2486
+ # resp.next_token #=> String
2487
+ #
2488
+ # @overload list_vehicles_in_fleet(params = {})
2489
+ # @param [Hash] params ({})
2490
+ def list_vehicles_in_fleet(params = {}, options = {})
2491
+ req = build_request(:list_vehicles_in_fleet, params)
2492
+ req.send_request(options)
2493
+ end
2494
+
2495
+ # Creates or updates the logging option.
2496
+ #
2497
+ # @option params [required, Types::CloudWatchLogDeliveryOptions] :cloud_watch_log_delivery
2498
+ # Creates or updates the log delivery option to Amazon CloudWatch Logs.
2499
+ #
2500
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2501
+ #
2502
+ # @example Request syntax with placeholder values
2503
+ #
2504
+ # resp = client.put_logging_options({
2505
+ # cloud_watch_log_delivery: { # required
2506
+ # log_type: "OFF", # required, accepts OFF, ERROR
2507
+ # log_group_name: "CloudWatchLogGroupName",
2508
+ # },
2509
+ # })
2510
+ #
2511
+ # @overload put_logging_options(params = {})
2512
+ # @param [Hash] params ({})
2513
+ def put_logging_options(params = {}, options = {})
2514
+ req = build_request(:put_logging_options, params)
2515
+ req.send_request(options)
2516
+ end
2517
+
2518
+ # Registers your Amazon Web Services account, IAM, and Amazon Timestream
2519
+ # resources so Amazon Web Services IoT FleetWise can transfer your
2520
+ # vehicle data to the Amazon Web Services Cloud. For more information,
2521
+ # including step-by-step procedures, see [Setting up Amazon Web Services
2522
+ # IoT FleetWise][1].
2523
+ #
2524
+ # <note markdown="1"> An Amazon Web Services account is **not** the same thing as a "user
2525
+ # account". An [Amazon Web Services user][2] is an identity that you
2526
+ # create using Identity and Access Management (IAM) and takes the form
2527
+ # of either an [IAM user][3] or an [IAM role, both with credentials][4].
2528
+ # A single Amazon Web Services account can, and typically does, contain
2529
+ # many users and roles.
2530
+ #
2531
+ # </note>
2532
+ #
2533
+ #
2534
+ #
2535
+ # [1]: https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/setting-up.html
2536
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_identity-management.html#intro-identity-users
2537
+ # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html
2538
+ # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html
2539
+ #
2540
+ # @option params [required, Types::TimestreamResources] :timestream_resources
2541
+ # The registered Amazon Timestream resources that Amazon Web Services
2542
+ # IoT FleetWise edge agent software can transfer your vehicle data to.
2543
+ #
2544
+ # @option params [Types::IamResources] :iam_resources
2545
+ # The IAM resource that allows Amazon Web Services IoT FleetWise to send
2546
+ # data to Amazon Timestream.
2547
+ #
2548
+ # @return [Types::RegisterAccountResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2549
+ #
2550
+ # * {Types::RegisterAccountResponse#register_account_status #register_account_status} => String
2551
+ # * {Types::RegisterAccountResponse#timestream_resources #timestream_resources} => Types::TimestreamResources
2552
+ # * {Types::RegisterAccountResponse#iam_resources #iam_resources} => Types::IamResources
2553
+ # * {Types::RegisterAccountResponse#creation_time #creation_time} => Time
2554
+ # * {Types::RegisterAccountResponse#last_modification_time #last_modification_time} => Time
2555
+ #
2556
+ # @example Request syntax with placeholder values
2557
+ #
2558
+ # resp = client.register_account({
2559
+ # timestream_resources: { # required
2560
+ # timestream_database_name: "TimestreamDatabaseName", # required
2561
+ # timestream_table_name: "TimestreamTableName", # required
2562
+ # },
2563
+ # iam_resources: {
2564
+ # role_arn: "IAMRoleArn", # required
2565
+ # },
2566
+ # })
2567
+ #
2568
+ # @example Response structure
2569
+ #
2570
+ # resp.register_account_status #=> String, one of "REGISTRATION_PENDING", "REGISTRATION_SUCCESS", "REGISTRATION_FAILURE"
2571
+ # resp.timestream_resources.timestream_database_name #=> String
2572
+ # resp.timestream_resources.timestream_table_name #=> String
2573
+ # resp.iam_resources.role_arn #=> String
2574
+ # resp.creation_time #=> Time
2575
+ # resp.last_modification_time #=> Time
2576
+ #
2577
+ # @overload register_account(params = {})
2578
+ # @param [Hash] params ({})
2579
+ def register_account(params = {}, options = {})
2580
+ req = build_request(:register_account, params)
2581
+ req.send_request(options)
2582
+ end
2583
+
2584
+ # Adds to or modifies the tags of the given resource. Tags are metadata
2585
+ # which can be used to manage a resource.
2586
+ #
2587
+ # @option params [required, String] :resource_arn
2588
+ # The ARN of the resource.
2589
+ #
2590
+ # @option params [required, Array<Types::Tag>] :tags
2591
+ # The new or modified tags for the resource.
2592
+ #
2593
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2594
+ #
2595
+ # @example Request syntax with placeholder values
2596
+ #
2597
+ # resp = client.tag_resource({
2598
+ # resource_arn: "AmazonResourceName", # required
2599
+ # tags: [ # required
2600
+ # {
2601
+ # key: "TagKey", # required
2602
+ # value: "TagValue", # required
2603
+ # },
2604
+ # ],
2605
+ # })
2606
+ #
2607
+ # @overload tag_resource(params = {})
2608
+ # @param [Hash] params ({})
2609
+ def tag_resource(params = {}, options = {})
2610
+ req = build_request(:tag_resource, params)
2611
+ req.send_request(options)
2612
+ end
2613
+
2614
+ # Removes the given tags (metadata) from the resource.
2615
+ #
2616
+ # @option params [required, String] :resource_arn
2617
+ # The ARN of the resource.
2618
+ #
2619
+ # @option params [required, Array<String>] :tag_keys
2620
+ # A list of the keys of the tags to be removed from the resource.
2621
+ #
2622
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2623
+ #
2624
+ # @example Request syntax with placeholder values
2625
+ #
2626
+ # resp = client.untag_resource({
2627
+ # resource_arn: "AmazonResourceName", # required
2628
+ # tag_keys: ["TagKey"], # required
2629
+ # })
2630
+ #
2631
+ # @overload untag_resource(params = {})
2632
+ # @param [Hash] params ({})
2633
+ def untag_resource(params = {}, options = {})
2634
+ req = build_request(:untag_resource, params)
2635
+ req.send_request(options)
2636
+ end
2637
+
2638
+ # Updates a campaign.
2639
+ #
2640
+ # @option params [required, String] :name
2641
+ # The name of the campaign to update.
2642
+ #
2643
+ # @option params [String] :description
2644
+ # The description of the campaign.
2645
+ #
2646
+ # @option params [Array<String>] :data_extra_dimensions
2647
+ # A list of vehicle attributes to associate with a signal.
2648
+ #
2649
+ # Default: An empty array
2650
+ #
2651
+ # @option params [required, String] :action
2652
+ # Specifies how to update a campaign. The action can be one of the
2653
+ # following:
2654
+ #
2655
+ # * `APPROVE` - To approve delivering a data collection scheme to
2656
+ # vehicles.
2657
+ #
2658
+ # * `SUSPEND` - To suspend collecting signal data.
2659
+ #
2660
+ # * `RESUME` - To resume collecting signal data.
2661
+ #
2662
+ # * `UPDATE` - To update a campaign.
2663
+ #
2664
+ # @return [Types::UpdateCampaignResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2665
+ #
2666
+ # * {Types::UpdateCampaignResponse#arn #arn} => String
2667
+ # * {Types::UpdateCampaignResponse#name #name} => String
2668
+ # * {Types::UpdateCampaignResponse#status #status} => String
2669
+ #
2670
+ # @example Request syntax with placeholder values
2671
+ #
2672
+ # resp = client.update_campaign({
2673
+ # name: "campaignName", # required
2674
+ # description: "description",
2675
+ # data_extra_dimensions: ["NodePath"],
2676
+ # action: "APPROVE", # required, accepts APPROVE, SUSPEND, RESUME, UPDATE
2677
+ # })
2678
+ #
2679
+ # @example Response structure
2680
+ #
2681
+ # resp.arn #=> String
2682
+ # resp.name #=> String
2683
+ # resp.status #=> String, one of "CREATING", "WAITING_FOR_APPROVAL", "RUNNING", "SUSPENDED"
2684
+ #
2685
+ # @overload update_campaign(params = {})
2686
+ # @param [Hash] params ({})
2687
+ def update_campaign(params = {}, options = {})
2688
+ req = build_request(:update_campaign, params)
2689
+ req.send_request(options)
2690
+ end
2691
+
2692
+ # Updates a decoder manifest.
2693
+ #
2694
+ # A decoder manifest can only be updated when the status is `DRAFT`.
2695
+ # Only `ACTIVE` decoder manifests can be associated with vehicles.
2696
+ #
2697
+ # @option params [required, String] :name
2698
+ # The name of the decoder manifest to update.
2699
+ #
2700
+ # @option params [String] :description
2701
+ # A brief description of the decoder manifest to update.
2702
+ #
2703
+ # @option params [Array<Types::SignalDecoder>] :signal_decoders_to_add
2704
+ # A list of information about decoding additional signals to add to the
2705
+ # decoder manifest.
2706
+ #
2707
+ # @option params [Array<Types::SignalDecoder>] :signal_decoders_to_update
2708
+ # A list of updated information about decoding signals to update in the
2709
+ # decoder manifest.
2710
+ #
2711
+ # @option params [Array<String>] :signal_decoders_to_remove
2712
+ # A list of signal decoders to remove from the decoder manifest.
2713
+ #
2714
+ # @option params [Array<Types::NetworkInterface>] :network_interfaces_to_add
2715
+ # A list of information about the network interfaces to add to the
2716
+ # decoder manifest.
2717
+ #
2718
+ # @option params [Array<Types::NetworkInterface>] :network_interfaces_to_update
2719
+ # A list of information about the network interfaces to update in the
2720
+ # decoder manifest.
2721
+ #
2722
+ # @option params [Array<String>] :network_interfaces_to_remove
2723
+ # A list of network interfaces to remove from the decoder manifest.
2724
+ #
2725
+ # @option params [String] :status
2726
+ # The state of the decoder manifest. If the status is `ACTIVE`, the
2727
+ # decoder manifest can't be edited. If the status is `DRAFT`, you can
2728
+ # edit the decoder manifest.
2729
+ #
2730
+ # @return [Types::UpdateDecoderManifestResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2731
+ #
2732
+ # * {Types::UpdateDecoderManifestResponse#name #name} => String
2733
+ # * {Types::UpdateDecoderManifestResponse#arn #arn} => String
2734
+ #
2735
+ # @example Request syntax with placeholder values
2736
+ #
2737
+ # resp = client.update_decoder_manifest({
2738
+ # name: "resourceName", # required
2739
+ # description: "description",
2740
+ # signal_decoders_to_add: [
2741
+ # {
2742
+ # fully_qualified_name: "FullyQualifiedName", # required
2743
+ # type: "CAN_SIGNAL", # required, accepts CAN_SIGNAL, OBD_SIGNAL
2744
+ # interface_id: "InterfaceId", # required
2745
+ # can_signal: {
2746
+ # message_id: 1, # required
2747
+ # is_big_endian: false, # required
2748
+ # is_signed: false, # required
2749
+ # start_bit: 1, # required
2750
+ # offset: 1.0, # required
2751
+ # factor: 1.0, # required
2752
+ # length: 1, # required
2753
+ # name: "CanSignalName",
2754
+ # },
2755
+ # obd_signal: {
2756
+ # pid_response_length: 1, # required
2757
+ # service_mode: 1, # required
2758
+ # pid: 1, # required
2759
+ # scaling: 1.0, # required
2760
+ # offset: 1.0, # required
2761
+ # start_byte: 1, # required
2762
+ # byte_length: 1, # required
2763
+ # bit_right_shift: 1,
2764
+ # bit_mask_length: 1,
2765
+ # },
2766
+ # },
2767
+ # ],
2768
+ # signal_decoders_to_update: [
2769
+ # {
2770
+ # fully_qualified_name: "FullyQualifiedName", # required
2771
+ # type: "CAN_SIGNAL", # required, accepts CAN_SIGNAL, OBD_SIGNAL
2772
+ # interface_id: "InterfaceId", # required
2773
+ # can_signal: {
2774
+ # message_id: 1, # required
2775
+ # is_big_endian: false, # required
2776
+ # is_signed: false, # required
2777
+ # start_bit: 1, # required
2778
+ # offset: 1.0, # required
2779
+ # factor: 1.0, # required
2780
+ # length: 1, # required
2781
+ # name: "CanSignalName",
2782
+ # },
2783
+ # obd_signal: {
2784
+ # pid_response_length: 1, # required
2785
+ # service_mode: 1, # required
2786
+ # pid: 1, # required
2787
+ # scaling: 1.0, # required
2788
+ # offset: 1.0, # required
2789
+ # start_byte: 1, # required
2790
+ # byte_length: 1, # required
2791
+ # bit_right_shift: 1,
2792
+ # bit_mask_length: 1,
2793
+ # },
2794
+ # },
2795
+ # ],
2796
+ # signal_decoders_to_remove: ["FullyQualifiedName"],
2797
+ # network_interfaces_to_add: [
2798
+ # {
2799
+ # interface_id: "InterfaceId", # required
2800
+ # type: "CAN_INTERFACE", # required, accepts CAN_INTERFACE, OBD_INTERFACE
2801
+ # can_interface: {
2802
+ # name: "CanInterfaceName", # required
2803
+ # protocol_name: "ProtocolName",
2804
+ # protocol_version: "ProtocolVersion",
2805
+ # },
2806
+ # obd_interface: {
2807
+ # name: "ObdInterfaceName", # required
2808
+ # request_message_id: 1, # required
2809
+ # obd_standard: "ObdStandard",
2810
+ # pid_request_interval_seconds: 1,
2811
+ # dtc_request_interval_seconds: 1,
2812
+ # use_extended_ids: false,
2813
+ # has_transmission_ecu: false,
2814
+ # },
2815
+ # },
2816
+ # ],
2817
+ # network_interfaces_to_update: [
2818
+ # {
2819
+ # interface_id: "InterfaceId", # required
2820
+ # type: "CAN_INTERFACE", # required, accepts CAN_INTERFACE, OBD_INTERFACE
2821
+ # can_interface: {
2822
+ # name: "CanInterfaceName", # required
2823
+ # protocol_name: "ProtocolName",
2824
+ # protocol_version: "ProtocolVersion",
2825
+ # },
2826
+ # obd_interface: {
2827
+ # name: "ObdInterfaceName", # required
2828
+ # request_message_id: 1, # required
2829
+ # obd_standard: "ObdStandard",
2830
+ # pid_request_interval_seconds: 1,
2831
+ # dtc_request_interval_seconds: 1,
2832
+ # use_extended_ids: false,
2833
+ # has_transmission_ecu: false,
2834
+ # },
2835
+ # },
2836
+ # ],
2837
+ # network_interfaces_to_remove: ["InterfaceId"],
2838
+ # status: "ACTIVE", # accepts ACTIVE, DRAFT
2839
+ # })
2840
+ #
2841
+ # @example Response structure
2842
+ #
2843
+ # resp.name #=> String
2844
+ # resp.arn #=> String
2845
+ #
2846
+ # @overload update_decoder_manifest(params = {})
2847
+ # @param [Hash] params ({})
2848
+ def update_decoder_manifest(params = {}, options = {})
2849
+ req = build_request(:update_decoder_manifest, params)
2850
+ req.send_request(options)
2851
+ end
2852
+
2853
+ # Updates the description of an existing fleet.
2854
+ #
2855
+ # <note markdown="1"> If the fleet is successfully updated, Amazon Web Services IoT
2856
+ # FleetWise sends back an HTTP 200 response with an empty HTTP body.
2857
+ #
2858
+ # </note>
2859
+ #
2860
+ # @option params [required, String] :fleet_id
2861
+ # The ID of the fleet to update.
2862
+ #
2863
+ # @option params [String] :description
2864
+ # An updated description of the fleet.
2865
+ #
2866
+ # @return [Types::UpdateFleetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2867
+ #
2868
+ # * {Types::UpdateFleetResponse#id #id} => String
2869
+ # * {Types::UpdateFleetResponse#arn #arn} => String
2870
+ #
2871
+ # @example Request syntax with placeholder values
2872
+ #
2873
+ # resp = client.update_fleet({
2874
+ # fleet_id: "fleetId", # required
2875
+ # description: "description",
2876
+ # })
2877
+ #
2878
+ # @example Response structure
2879
+ #
2880
+ # resp.id #=> String
2881
+ # resp.arn #=> String
2882
+ #
2883
+ # @overload update_fleet(params = {})
2884
+ # @param [Hash] params ({})
2885
+ def update_fleet(params = {}, options = {})
2886
+ req = build_request(:update_fleet, params)
2887
+ req.send_request(options)
2888
+ end
2889
+
2890
+ # Updates a vehicle model (model manifest). If created vehicles are
2891
+ # associated with a vehicle model, it can't be updated.
2892
+ #
2893
+ # @option params [required, String] :name
2894
+ # The name of the vehicle model to update.
2895
+ #
2896
+ # @option params [String] :description
2897
+ # A brief description of the vehicle model.
2898
+ #
2899
+ # @option params [Array<String>] :nodes_to_add
2900
+ # A list of `fullyQualifiedName` of nodes, which are a general
2901
+ # abstraction of signals, to add to the vehicle model.
2902
+ #
2903
+ # @option params [Array<String>] :nodes_to_remove
2904
+ # A list of `fullyQualifiedName` of nodes, which are a general
2905
+ # abstraction of signals, to remove from the vehicle model.
2906
+ #
2907
+ # @option params [String] :status
2908
+ # The state of the vehicle model. If the status is `ACTIVE`, the vehicle
2909
+ # model can't be edited. If the status is `DRAFT`, you can edit the
2910
+ # vehicle model.
2911
+ #
2912
+ # @return [Types::UpdateModelManifestResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2913
+ #
2914
+ # * {Types::UpdateModelManifestResponse#name #name} => String
2915
+ # * {Types::UpdateModelManifestResponse#arn #arn} => String
2916
+ #
2917
+ # @example Request syntax with placeholder values
2918
+ #
2919
+ # resp = client.update_model_manifest({
2920
+ # name: "resourceName", # required
2921
+ # description: "description",
2922
+ # nodes_to_add: ["NodePath"],
2923
+ # nodes_to_remove: ["NodePath"],
2924
+ # status: "ACTIVE", # accepts ACTIVE, DRAFT
2925
+ # })
2926
+ #
2927
+ # @example Response structure
2928
+ #
2929
+ # resp.name #=> String
2930
+ # resp.arn #=> String
2931
+ #
2932
+ # @overload update_model_manifest(params = {})
2933
+ # @param [Hash] params ({})
2934
+ def update_model_manifest(params = {}, options = {})
2935
+ req = build_request(:update_model_manifest, params)
2936
+ req.send_request(options)
2937
+ end
2938
+
2939
+ # Updates a signal catalog.
2940
+ #
2941
+ # @option params [required, String] :name
2942
+ # The name of the signal catalog to update.
2943
+ #
2944
+ # @option params [String] :description
2945
+ # A brief description of the signal catalog to update.
2946
+ #
2947
+ # @option params [Array<Types::Node>] :nodes_to_add
2948
+ # A list of information about nodes to add to the signal catalog.
2949
+ #
2950
+ # @option params [Array<Types::Node>] :nodes_to_update
2951
+ # A list of information about nodes to update in the signal catalog.
2952
+ #
2953
+ # @option params [Array<String>] :nodes_to_remove
2954
+ # A list of `fullyQualifiedName` of nodes to remove from the signal
2955
+ # catalog.
2956
+ #
2957
+ # @return [Types::UpdateSignalCatalogResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2958
+ #
2959
+ # * {Types::UpdateSignalCatalogResponse#name #name} => String
2960
+ # * {Types::UpdateSignalCatalogResponse#arn #arn} => String
2961
+ #
2962
+ # @example Request syntax with placeholder values
2963
+ #
2964
+ # resp = client.update_signal_catalog({
2965
+ # name: "resourceName", # required
2966
+ # description: "description",
2967
+ # nodes_to_add: [
2968
+ # {
2969
+ # branch: {
2970
+ # fully_qualified_name: "string", # required
2971
+ # description: "description",
2972
+ # },
2973
+ # sensor: {
2974
+ # fully_qualified_name: "string", # required
2975
+ # data_type: "INT8", # required, accepts INT8, UINT8, INT16, UINT16, INT32, UINT32, INT64, UINT64, BOOLEAN, FLOAT, DOUBLE, STRING, UNIX_TIMESTAMP, INT8_ARRAY, UINT8_ARRAY, INT16_ARRAY, UINT16_ARRAY, INT32_ARRAY, UINT32_ARRAY, INT64_ARRAY, UINT64_ARRAY, BOOLEAN_ARRAY, FLOAT_ARRAY, DOUBLE_ARRAY, STRING_ARRAY, UNIX_TIMESTAMP_ARRAY, UNKNOWN
2976
+ # description: "description",
2977
+ # unit: "string",
2978
+ # allowed_values: ["string"],
2979
+ # min: 1.0,
2980
+ # max: 1.0,
2981
+ # },
2982
+ # actuator: {
2983
+ # fully_qualified_name: "string", # required
2984
+ # data_type: "INT8", # required, accepts INT8, UINT8, INT16, UINT16, INT32, UINT32, INT64, UINT64, BOOLEAN, FLOAT, DOUBLE, STRING, UNIX_TIMESTAMP, INT8_ARRAY, UINT8_ARRAY, INT16_ARRAY, UINT16_ARRAY, INT32_ARRAY, UINT32_ARRAY, INT64_ARRAY, UINT64_ARRAY, BOOLEAN_ARRAY, FLOAT_ARRAY, DOUBLE_ARRAY, STRING_ARRAY, UNIX_TIMESTAMP_ARRAY, UNKNOWN
2985
+ # description: "description",
2986
+ # unit: "string",
2987
+ # allowed_values: ["string"],
2988
+ # min: 1.0,
2989
+ # max: 1.0,
2990
+ # assigned_value: "string",
2991
+ # },
2992
+ # attribute: {
2993
+ # fully_qualified_name: "string", # required
2994
+ # data_type: "INT8", # required, accepts INT8, UINT8, INT16, UINT16, INT32, UINT32, INT64, UINT64, BOOLEAN, FLOAT, DOUBLE, STRING, UNIX_TIMESTAMP, INT8_ARRAY, UINT8_ARRAY, INT16_ARRAY, UINT16_ARRAY, INT32_ARRAY, UINT32_ARRAY, INT64_ARRAY, UINT64_ARRAY, BOOLEAN_ARRAY, FLOAT_ARRAY, DOUBLE_ARRAY, STRING_ARRAY, UNIX_TIMESTAMP_ARRAY, UNKNOWN
2995
+ # description: "description",
2996
+ # unit: "string",
2997
+ # allowed_values: ["string"],
2998
+ # min: 1.0,
2999
+ # max: 1.0,
3000
+ # assigned_value: "string",
3001
+ # default_value: "string",
3002
+ # },
3003
+ # },
3004
+ # ],
3005
+ # nodes_to_update: [
3006
+ # {
3007
+ # branch: {
3008
+ # fully_qualified_name: "string", # required
3009
+ # description: "description",
3010
+ # },
3011
+ # sensor: {
3012
+ # fully_qualified_name: "string", # required
3013
+ # data_type: "INT8", # required, accepts INT8, UINT8, INT16, UINT16, INT32, UINT32, INT64, UINT64, BOOLEAN, FLOAT, DOUBLE, STRING, UNIX_TIMESTAMP, INT8_ARRAY, UINT8_ARRAY, INT16_ARRAY, UINT16_ARRAY, INT32_ARRAY, UINT32_ARRAY, INT64_ARRAY, UINT64_ARRAY, BOOLEAN_ARRAY, FLOAT_ARRAY, DOUBLE_ARRAY, STRING_ARRAY, UNIX_TIMESTAMP_ARRAY, UNKNOWN
3014
+ # description: "description",
3015
+ # unit: "string",
3016
+ # allowed_values: ["string"],
3017
+ # min: 1.0,
3018
+ # max: 1.0,
3019
+ # },
3020
+ # actuator: {
3021
+ # fully_qualified_name: "string", # required
3022
+ # data_type: "INT8", # required, accepts INT8, UINT8, INT16, UINT16, INT32, UINT32, INT64, UINT64, BOOLEAN, FLOAT, DOUBLE, STRING, UNIX_TIMESTAMP, INT8_ARRAY, UINT8_ARRAY, INT16_ARRAY, UINT16_ARRAY, INT32_ARRAY, UINT32_ARRAY, INT64_ARRAY, UINT64_ARRAY, BOOLEAN_ARRAY, FLOAT_ARRAY, DOUBLE_ARRAY, STRING_ARRAY, UNIX_TIMESTAMP_ARRAY, UNKNOWN
3023
+ # description: "description",
3024
+ # unit: "string",
3025
+ # allowed_values: ["string"],
3026
+ # min: 1.0,
3027
+ # max: 1.0,
3028
+ # assigned_value: "string",
3029
+ # },
3030
+ # attribute: {
3031
+ # fully_qualified_name: "string", # required
3032
+ # data_type: "INT8", # required, accepts INT8, UINT8, INT16, UINT16, INT32, UINT32, INT64, UINT64, BOOLEAN, FLOAT, DOUBLE, STRING, UNIX_TIMESTAMP, INT8_ARRAY, UINT8_ARRAY, INT16_ARRAY, UINT16_ARRAY, INT32_ARRAY, UINT32_ARRAY, INT64_ARRAY, UINT64_ARRAY, BOOLEAN_ARRAY, FLOAT_ARRAY, DOUBLE_ARRAY, STRING_ARRAY, UNIX_TIMESTAMP_ARRAY, UNKNOWN
3033
+ # description: "description",
3034
+ # unit: "string",
3035
+ # allowed_values: ["string"],
3036
+ # min: 1.0,
3037
+ # max: 1.0,
3038
+ # assigned_value: "string",
3039
+ # default_value: "string",
3040
+ # },
3041
+ # },
3042
+ # ],
3043
+ # nodes_to_remove: ["NodePath"],
3044
+ # })
3045
+ #
3046
+ # @example Response structure
3047
+ #
3048
+ # resp.name #=> String
3049
+ # resp.arn #=> String
3050
+ #
3051
+ # @overload update_signal_catalog(params = {})
3052
+ # @param [Hash] params ({})
3053
+ def update_signal_catalog(params = {}, options = {})
3054
+ req = build_request(:update_signal_catalog, params)
3055
+ req.send_request(options)
3056
+ end
3057
+
3058
+ # Updates a vehicle.
3059
+ #
3060
+ # @option params [required, String] :vehicle_name
3061
+ # The unique ID of the vehicle to update.
3062
+ #
3063
+ # @option params [String] :model_manifest_arn
3064
+ # The ARN of a vehicle model (model manifest) associated with the
3065
+ # vehicle.
3066
+ #
3067
+ # @option params [String] :decoder_manifest_arn
3068
+ # The ARN of the decoder manifest associated with this vehicle.
3069
+ #
3070
+ # @option params [Hash<String,String>] :attributes
3071
+ # Static information about a vehicle in a key-value pair. For example:
3072
+ #
3073
+ # `"engineType"`\: `"1.3 L R2"`
3074
+ #
3075
+ # @option params [String] :attribute_update_mode
3076
+ # The method the specified attributes will update the existing
3077
+ # attributes on the vehicle. Use`Overwite` to replace the vehicle
3078
+ # attributes with the specified attributes. Or use `Merge` to combine
3079
+ # all attributes.
3080
+ #
3081
+ # This is required if attributes are present in the input.
3082
+ #
3083
+ # @return [Types::UpdateVehicleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3084
+ #
3085
+ # * {Types::UpdateVehicleResponse#vehicle_name #vehicle_name} => String
3086
+ # * {Types::UpdateVehicleResponse#arn #arn} => String
3087
+ #
3088
+ # @example Request syntax with placeholder values
3089
+ #
3090
+ # resp = client.update_vehicle({
3091
+ # vehicle_name: "vehicleName", # required
3092
+ # model_manifest_arn: "arn",
3093
+ # decoder_manifest_arn: "arn",
3094
+ # attributes: {
3095
+ # "attributeName" => "attributeValue",
3096
+ # },
3097
+ # attribute_update_mode: "Overwrite", # accepts Overwrite, Merge
3098
+ # })
3099
+ #
3100
+ # @example Response structure
3101
+ #
3102
+ # resp.vehicle_name #=> String
3103
+ # resp.arn #=> String
3104
+ #
3105
+ # @overload update_vehicle(params = {})
3106
+ # @param [Hash] params ({})
3107
+ def update_vehicle(params = {}, options = {})
3108
+ req = build_request(:update_vehicle, params)
3109
+ req.send_request(options)
3110
+ end
3111
+
3112
+ # @!endgroup
3113
+
3114
+ # @param params ({})
3115
+ # @api private
3116
+ def build_request(operation_name, params = {})
3117
+ handlers = @handlers.for(operation_name)
3118
+ context = Seahorse::Client::RequestContext.new(
3119
+ operation_name: operation_name,
3120
+ operation: config.api.operation(operation_name),
3121
+ client: self,
3122
+ params: params,
3123
+ config: config)
3124
+ context[:gem_name] = 'aws-sdk-iotfleetwise'
3125
+ context[:gem_version] = '1.0.0'
3126
+ Seahorse::Client::Request.new(handlers, context)
3127
+ end
3128
+
3129
+ # @api private
3130
+ # @deprecated
3131
+ def waiter_names
3132
+ []
3133
+ end
3134
+
3135
+ class << self
3136
+
3137
+ # @api private
3138
+ attr_reader :identifier
3139
+
3140
+ # @api private
3141
+ def errors_module
3142
+ Errors
3143
+ end
3144
+
3145
+ end
3146
+ end
3147
+ end