aws-sdk-iotjobsdataplane 1.62.0 → 1.64.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: dc7e5510ca882d7d10a35fb1da10495af65d1ed88513e55fab443e494570dce3
4
- data.tar.gz: 83f256a8069926d1b746cc7d51e77167b53b9183871b2af5587a34550e760eb9
3
+ metadata.gz: '094e3f56385704cc2c8fcf9d07667ca6e89c9f0bdc8b713ccd77e95cdc1ac6c5'
4
+ data.tar.gz: 3c8a7917b2dd59fb658c1324fd967597c25b009edb7b624f69fecb9e7fa908f2
5
5
  SHA512:
6
- metadata.gz: ec30fb6ff398c01a6b359ece1eeddecece39158cf90b51fdd447f16f0447b4aa0becd9e41883d3c6e4e165ad2f3c94dd7449ec417237ab74b989f1d31ee8bee0
7
- data.tar.gz: a606d2219ab0fa2823fa73317463cd5ec370e9d885e6173526a71c53f83b1fc2ec9cec456e33372eb0488686144dd6be7136a0680ac3936f2faedee2d9f160f0
6
+ metadata.gz: 280555d0ae8534aec17b8b46593d75df176992c1d67797f4122de23699d1315a75f1437332f23d544ec12a08959af931030b343a69fefae86a0306b2cb76cb23
7
+ data.tar.gz: 31109d543dcd783ec7ab05d75d216340930e0c5b1df7138ae838b32dac85c690482431e89a5874837f71d7b5fbf56201591eb68d09b123c00b6b60b035dc0031
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.64.0 (2025-01-15)
5
+ ------------------
6
+
7
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
8
+
9
+ 1.63.0 (2024-11-21)
10
+ ------------------
11
+
12
+ * Feature - General Availability (GA) release of AWS IoT Device Management - Commands, to trigger light-weight remote actions on targeted devices
13
+
4
14
  1.62.0 (2024-10-18)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.62.0
1
+ 1.64.0
@@ -257,11 +257,34 @@ module Aws::IoTJobsDataPlane
257
257
  # Used when loading credentials from the shared credentials file
258
258
  # at HOME/.aws/credentials. When not specified, 'default' is used.
259
259
  #
260
+ # @option options [String] :request_checksum_calculation ("when_supported")
261
+ # Determines when a checksum will be calculated for request payloads. Values are:
262
+ #
263
+ # * `when_supported` - (default) When set, a checksum will be
264
+ # calculated for all request payloads of operations modeled with the
265
+ # `httpChecksum` trait where `requestChecksumRequired` is `true` and/or a
266
+ # `requestAlgorithmMember` is modeled.
267
+ # * `when_required` - When set, a checksum will only be calculated for
268
+ # request payloads of operations modeled with the `httpChecksum` trait where
269
+ # `requestChecksumRequired` is `true` or where a `requestAlgorithmMember`
270
+ # is modeled and supplied.
271
+ #
260
272
  # @option options [Integer] :request_min_compression_size_bytes (10240)
261
273
  # The minimum size in bytes that triggers compression for request
262
274
  # bodies. The value must be non-negative integer value between 0
263
275
  # and 10485780 bytes inclusive.
264
276
  #
277
+ # @option options [String] :response_checksum_validation ("when_supported")
278
+ # Determines when checksum validation will be performed on response payloads. Values are:
279
+ #
280
+ # * `when_supported` - (default) When set, checksum validation is performed on all
281
+ # response payloads of operations modeled with the `httpChecksum` trait where
282
+ # `responseAlgorithms` is modeled, except when no modeled checksum algorithms
283
+ # are supported.
284
+ # * `when_required` - When set, checksum validation is not performed on
285
+ # response payloads of operations unless the checksum algorithm is supported and
286
+ # the `requestValidationModeMember` member is set to `ENABLED`.
287
+ #
265
288
  # @option options [Proc] :retry_backoff
266
289
  # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
267
290
  # This option is only used in the `legacy` retry mode.
@@ -449,6 +472,12 @@ module Aws::IoTJobsDataPlane
449
472
 
450
473
  # Gets details of a job execution.
451
474
  #
475
+ # Requires permission to access the [DescribeJobExecution][1] action.
476
+ #
477
+ #
478
+ #
479
+ # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
480
+ #
452
481
  # @option params [required, String] :job_id
453
482
  # The unique identifier assigned to this job when it was created.
454
483
  #
@@ -457,8 +486,8 @@ module Aws::IoTJobsDataPlane
457
486
  # on.
458
487
  #
459
488
  # @option params [Boolean] :include_job_document
460
- # Optional. When set to true, the response contains the job document.
461
- # The default is false.
489
+ # Optional. Unless set to false, the response contains the job document.
490
+ # The default is true.
462
491
  #
463
492
  # @option params [Integer] :execution_number
464
493
  # Optional. A number that identifies a particular job execution on a
@@ -503,6 +532,12 @@ module Aws::IoTJobsDataPlane
503
532
  # Gets the list of all jobs for a thing that are not in a terminal
504
533
  # status.
505
534
  #
535
+ # Requires permission to access the [GetPendingJobExecutions][1] action.
536
+ #
537
+ #
538
+ #
539
+ # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
540
+ #
506
541
  # @option params [required, String] :thing_name
507
542
  # The name of the thing that is executing the job.
508
543
  #
@@ -541,9 +576,85 @@ module Aws::IoTJobsDataPlane
541
576
  req.send_request(options)
542
577
  end
543
578
 
579
+ # Using the command created with the `CreateCommand` API, start a
580
+ # command execution on a specific device.
581
+ #
582
+ # @option params [required, String] :target_arn
583
+ # The Amazon Resource Number (ARN) of the device where the command
584
+ # execution is occurring.
585
+ #
586
+ # @option params [required, String] :command_arn
587
+ # The Amazon Resource Number (ARN) of the command. For example,
588
+ # `arn:aws:iot:<region>:<accountid>:command/<commandName>`
589
+ #
590
+ # @option params [Hash<String,Types::CommandParameterValue>] :parameters
591
+ # A list of parameters that are required by the `StartCommandExecution`
592
+ # API when performing the command on a device.
593
+ #
594
+ # @option params [Integer] :execution_timeout_seconds
595
+ # Specifies the amount of time in second the device has to finish the
596
+ # command execution. A timer is started as soon as the command execution
597
+ # is created. If the command execution status is not set to another
598
+ # terminal state before the timer expires, it will automatically update
599
+ # to `TIMED_OUT`.
600
+ #
601
+ # @option params [String] :client_token
602
+ # The client token is used to implement idempotency. It ensures that the
603
+ # request completes no more than one time. If you retry a request with
604
+ # the same token and the same parameters, the request will complete
605
+ # successfully. However, if you retry the request using the same token
606
+ # but different parameters, an HTTP 409 conflict occurs. If you omit
607
+ # this value, Amazon Web Services SDKs will automatically generate a
608
+ # unique client request.
609
+ #
610
+ # **A suitable default value is auto-generated.** You should normally
611
+ # not need to pass this option.**
612
+ #
613
+ # @return [Types::StartCommandExecutionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
614
+ #
615
+ # * {Types::StartCommandExecutionResponse#execution_id #execution_id} => String
616
+ #
617
+ # @example Request syntax with placeholder values
618
+ #
619
+ # resp = client.start_command_execution({
620
+ # target_arn: "TargetArn", # required
621
+ # command_arn: "CommandArn", # required
622
+ # parameters: {
623
+ # "CommandParameterName" => {
624
+ # s: "StringParameterValue",
625
+ # b: false,
626
+ # i: 1,
627
+ # l: 1,
628
+ # d: 1.0,
629
+ # bin: "data",
630
+ # ul: "UnsignedLongParameterValue",
631
+ # },
632
+ # },
633
+ # execution_timeout_seconds: 1,
634
+ # client_token: "ClientRequestTokenV2",
635
+ # })
636
+ #
637
+ # @example Response structure
638
+ #
639
+ # resp.execution_id #=> String
640
+ #
641
+ # @overload start_command_execution(params = {})
642
+ # @param [Hash] params ({})
643
+ def start_command_execution(params = {}, options = {})
644
+ req = build_request(:start_command_execution, params)
645
+ req.send_request(options)
646
+ end
647
+
544
648
  # Gets and starts the next pending (status IN\_PROGRESS or QUEUED) job
545
649
  # execution for a thing.
546
650
  #
651
+ # Requires permission to access the [StartNextPendingJobExecution][1]
652
+ # action.
653
+ #
654
+ #
655
+ #
656
+ # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
657
+ #
547
658
  # @option params [required, String] :thing_name
548
659
  # The name of the thing associated with the device.
549
660
  #
@@ -551,17 +662,23 @@ module Aws::IoTJobsDataPlane
551
662
  # A collection of name/value pairs that describe the status of the job
552
663
  # execution. If not specified, the statusDetails are unchanged.
553
664
  #
665
+ # The maximum length of the value in the name/value pair is 1,024
666
+ # characters.
667
+ #
554
668
  # @option params [Integer] :step_timeout_in_minutes
555
669
  # Specifies the amount of time this device has to finish execution of
556
670
  # this job. If the job execution status is not set to a terminal state
557
671
  # before this timer expires, or before the timer is reset (by calling
558
- # `UpdateJobExecution`, setting the status to `IN_PROGRESS` and
672
+ # `UpdateJobExecution`, setting the status to `IN_PROGRESS`, and
559
673
  # specifying a new timeout value in field `stepTimeoutInMinutes`) the
560
674
  # job execution status will be automatically set to `TIMED_OUT`. Note
561
- # that setting this timeout has no effect on that job execution timeout
562
- # which may have been specified when the job was created (`CreateJob`
675
+ # that setting the step timeout has no effect on the in progress timeout
676
+ # that may have been specified when the job was created (`CreateJob`
563
677
  # using field `timeoutConfig`).
564
678
  #
679
+ # Valid values for this parameter range from 1 to 10080 (1 minute to 7
680
+ # days).
681
+ #
565
682
  # @return [Types::StartNextPendingJobExecutionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
566
683
  #
567
684
  # * {Types::StartNextPendingJobExecutionResponse#execution #execution} => Types::JobExecution
@@ -600,6 +717,12 @@ module Aws::IoTJobsDataPlane
600
717
 
601
718
  # Updates the status of a job execution.
602
719
  #
720
+ # Requires permission to access the [UpdateJobExecution][1] action.
721
+ #
722
+ #
723
+ #
724
+ # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotjobsdataplane.html
725
+ #
603
726
  # @option params [required, String] :job_id
604
727
  # The unique identifier assigned to this job when it was created.
605
728
  #
@@ -614,17 +737,24 @@ module Aws::IoTJobsDataPlane
614
737
  # Optional. A collection of name/value pairs that describe the status of
615
738
  # the job execution. If not specified, the statusDetails are unchanged.
616
739
  #
740
+ # The maximum length of the value in the name/value pair is 1,024
741
+ # characters.
742
+ #
617
743
  # @option params [Integer] :step_timeout_in_minutes
618
744
  # Specifies the amount of time this device has to finish execution of
619
745
  # this job. If the job execution status is not set to a terminal state
620
746
  # before this timer expires, or before the timer is reset (by again
621
- # calling `UpdateJobExecution`, setting the status to `IN_PROGRESS` and
747
+ # calling `UpdateJobExecution`, setting the status to `IN_PROGRESS`, and
622
748
  # specifying a new timeout value in this field) the job execution status
623
749
  # will be automatically set to `TIMED_OUT`. Note that setting or
624
- # resetting this timeout has no effect on that job execution timeout
625
- # which may have been specified when the job was created (`CreateJob`
750
+ # resetting the step timeout has no effect on the in progress timeout
751
+ # that may have been specified when the job was created (`CreateJob`
626
752
  # using field `timeoutConfig`).
627
753
  #
754
+ # Valid values for this parameter range from 1 to 10080 (1 minute to 7
755
+ # days). A value of -1 is also valid and will cancel the current step
756
+ # timer (created by an earlier use of `UpdateJobExecutionRequest`).
757
+ #
628
758
  # @option params [Integer] :expected_version
629
759
  # Optional. The expected current version of the job execution. Each time
630
760
  # you update the job execution, its version is incremented. If the
@@ -700,7 +830,7 @@ module Aws::IoTJobsDataPlane
700
830
  tracer: tracer
701
831
  )
702
832
  context[:gem_name] = 'aws-sdk-iotjobsdataplane'
703
- context[:gem_version] = '1.62.0'
833
+ context[:gem_version] = '1.64.0'
704
834
  Seahorse::Client::Request.new(handlers, context)
705
835
  end
706
836
 
@@ -16,19 +16,32 @@ module Aws::IoTJobsDataPlane
16
16
 
17
17
  ApproximateSecondsBeforeTimedOut = Shapes::IntegerShape.new(name: 'ApproximateSecondsBeforeTimedOut')
18
18
  BinaryBlob = Shapes::BlobShape.new(name: 'BinaryBlob')
19
+ BinaryParameterValue = Shapes::BlobShape.new(name: 'BinaryParameterValue')
20
+ BooleanParameterValue = Shapes::BooleanShape.new(name: 'BooleanParameterValue')
19
21
  CertificateValidationException = Shapes::StructureShape.new(name: 'CertificateValidationException')
22
+ ClientRequestTokenV2 = Shapes::StringShape.new(name: 'ClientRequestTokenV2')
23
+ CommandArn = Shapes::StringShape.new(name: 'CommandArn')
24
+ CommandExecutionId = Shapes::StringShape.new(name: 'CommandExecutionId')
25
+ CommandExecutionParameterMap = Shapes::MapShape.new(name: 'CommandExecutionParameterMap')
26
+ CommandExecutionTimeoutInSeconds = Shapes::IntegerShape.new(name: 'CommandExecutionTimeoutInSeconds')
27
+ CommandParameterName = Shapes::StringShape.new(name: 'CommandParameterName')
28
+ CommandParameterValue = Shapes::StructureShape.new(name: 'CommandParameterValue')
29
+ ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
20
30
  DescribeJobExecutionJobId = Shapes::StringShape.new(name: 'DescribeJobExecutionJobId')
21
31
  DescribeJobExecutionRequest = Shapes::StructureShape.new(name: 'DescribeJobExecutionRequest')
22
32
  DescribeJobExecutionResponse = Shapes::StructureShape.new(name: 'DescribeJobExecutionResponse')
23
33
  DetailsKey = Shapes::StringShape.new(name: 'DetailsKey')
24
34
  DetailsMap = Shapes::MapShape.new(name: 'DetailsMap')
25
35
  DetailsValue = Shapes::StringShape.new(name: 'DetailsValue')
36
+ DoubleParameterValue = Shapes::FloatShape.new(name: 'DoubleParameterValue')
26
37
  ExecutionNumber = Shapes::IntegerShape.new(name: 'ExecutionNumber')
27
38
  ExpectedVersion = Shapes::IntegerShape.new(name: 'ExpectedVersion')
28
39
  GetPendingJobExecutionsRequest = Shapes::StructureShape.new(name: 'GetPendingJobExecutionsRequest')
29
40
  GetPendingJobExecutionsResponse = Shapes::StructureShape.new(name: 'GetPendingJobExecutionsResponse')
30
41
  IncludeExecutionState = Shapes::BooleanShape.new(name: 'IncludeExecutionState')
31
42
  IncludeJobDocument = Shapes::BooleanShape.new(name: 'IncludeJobDocument')
43
+ IntegerParameterValue = Shapes::IntegerShape.new(name: 'IntegerParameterValue')
44
+ InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
32
45
  InvalidRequestException = Shapes::StructureShape.new(name: 'InvalidRequestException')
33
46
  InvalidStateTransitionException = Shapes::StructureShape.new(name: 'InvalidStateTransitionException')
34
47
  JobDocument = Shapes::StringShape.new(name: 'JobDocument')
@@ -39,24 +52,49 @@ module Aws::IoTJobsDataPlane
39
52
  JobExecutionSummaryList = Shapes::ListShape.new(name: 'JobExecutionSummaryList')
40
53
  JobId = Shapes::StringShape.new(name: 'JobId')
41
54
  LastUpdatedAt = Shapes::IntegerShape.new(name: 'LastUpdatedAt')
55
+ LongParameterValue = Shapes::IntegerShape.new(name: 'LongParameterValue')
42
56
  QueuedAt = Shapes::IntegerShape.new(name: 'QueuedAt')
43
57
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
58
+ ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
44
59
  ServiceUnavailableException = Shapes::StructureShape.new(name: 'ServiceUnavailableException')
60
+ StartCommandExecutionRequest = Shapes::StructureShape.new(name: 'StartCommandExecutionRequest')
61
+ StartCommandExecutionResponse = Shapes::StructureShape.new(name: 'StartCommandExecutionResponse')
45
62
  StartNextPendingJobExecutionRequest = Shapes::StructureShape.new(name: 'StartNextPendingJobExecutionRequest')
46
63
  StartNextPendingJobExecutionResponse = Shapes::StructureShape.new(name: 'StartNextPendingJobExecutionResponse')
47
64
  StartedAt = Shapes::IntegerShape.new(name: 'StartedAt')
48
65
  StepTimeoutInMinutes = Shapes::IntegerShape.new(name: 'StepTimeoutInMinutes')
66
+ StringParameterValue = Shapes::StringShape.new(name: 'StringParameterValue')
67
+ TargetArn = Shapes::StringShape.new(name: 'TargetArn')
49
68
  TerminalStateException = Shapes::StructureShape.new(name: 'TerminalStateException')
50
69
  ThingName = Shapes::StringShape.new(name: 'ThingName')
51
70
  ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
71
+ UnsignedLongParameterValue = Shapes::StringShape.new(name: 'UnsignedLongParameterValue')
52
72
  UpdateJobExecutionRequest = Shapes::StructureShape.new(name: 'UpdateJobExecutionRequest')
53
73
  UpdateJobExecutionResponse = Shapes::StructureShape.new(name: 'UpdateJobExecutionResponse')
74
+ ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
54
75
  VersionNumber = Shapes::IntegerShape.new(name: 'VersionNumber')
55
76
  errorMessage = Shapes::StringShape.new(name: 'errorMessage')
77
+ resourceId = Shapes::StringShape.new(name: 'resourceId')
56
78
 
57
79
  CertificateValidationException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
58
80
  CertificateValidationException.struct_class = Types::CertificateValidationException
59
81
 
82
+ CommandExecutionParameterMap.key = Shapes::ShapeRef.new(shape: CommandParameterName)
83
+ CommandExecutionParameterMap.value = Shapes::ShapeRef.new(shape: CommandParameterValue)
84
+
85
+ CommandParameterValue.add_member(:s, Shapes::ShapeRef.new(shape: StringParameterValue, location_name: "S"))
86
+ CommandParameterValue.add_member(:b, Shapes::ShapeRef.new(shape: BooleanParameterValue, location_name: "B"))
87
+ CommandParameterValue.add_member(:i, Shapes::ShapeRef.new(shape: IntegerParameterValue, location_name: "I"))
88
+ CommandParameterValue.add_member(:l, Shapes::ShapeRef.new(shape: LongParameterValue, location_name: "L"))
89
+ CommandParameterValue.add_member(:d, Shapes::ShapeRef.new(shape: DoubleParameterValue, location_name: "D"))
90
+ CommandParameterValue.add_member(:bin, Shapes::ShapeRef.new(shape: BinaryParameterValue, location_name: "BIN"))
91
+ CommandParameterValue.add_member(:ul, Shapes::ShapeRef.new(shape: UnsignedLongParameterValue, location_name: "UL"))
92
+ CommandParameterValue.struct_class = Types::CommandParameterValue
93
+
94
+ ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
95
+ ConflictException.add_member(:resource_id, Shapes::ShapeRef.new(shape: resourceId, location_name: "resourceId"))
96
+ ConflictException.struct_class = Types::ConflictException
97
+
60
98
  DescribeJobExecutionRequest.add_member(:job_id, Shapes::ShapeRef.new(shape: DescribeJobExecutionJobId, required: true, location: "uri", location_name: "jobId"))
61
99
  DescribeJobExecutionRequest.add_member(:thing_name, Shapes::ShapeRef.new(shape: ThingName, required: true, location: "uri", location_name: "thingName"))
62
100
  DescribeJobExecutionRequest.add_member(:include_job_document, Shapes::ShapeRef.new(shape: IncludeJobDocument, location: "querystring", location_name: "includeJobDocument"))
@@ -76,6 +114,9 @@ module Aws::IoTJobsDataPlane
76
114
  GetPendingJobExecutionsResponse.add_member(:queued_jobs, Shapes::ShapeRef.new(shape: JobExecutionSummaryList, location_name: "queuedJobs"))
77
115
  GetPendingJobExecutionsResponse.struct_class = Types::GetPendingJobExecutionsResponse
78
116
 
117
+ InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
118
+ InternalServerException.struct_class = Types::InternalServerException
119
+
79
120
  InvalidRequestException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
80
121
  InvalidRequestException.struct_class = Types::InvalidRequestException
81
122
 
@@ -113,9 +154,22 @@ module Aws::IoTJobsDataPlane
113
154
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
114
155
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
115
156
 
157
+ ServiceQuotaExceededException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
158
+ ServiceQuotaExceededException.struct_class = Types::ServiceQuotaExceededException
159
+
116
160
  ServiceUnavailableException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
117
161
  ServiceUnavailableException.struct_class = Types::ServiceUnavailableException
118
162
 
163
+ StartCommandExecutionRequest.add_member(:target_arn, Shapes::ShapeRef.new(shape: TargetArn, required: true, location_name: "targetArn"))
164
+ StartCommandExecutionRequest.add_member(:command_arn, Shapes::ShapeRef.new(shape: CommandArn, required: true, location_name: "commandArn"))
165
+ StartCommandExecutionRequest.add_member(:parameters, Shapes::ShapeRef.new(shape: CommandExecutionParameterMap, location_name: "parameters"))
166
+ StartCommandExecutionRequest.add_member(:execution_timeout_seconds, Shapes::ShapeRef.new(shape: CommandExecutionTimeoutInSeconds, location_name: "executionTimeoutSeconds"))
167
+ StartCommandExecutionRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientRequestTokenV2, location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
168
+ StartCommandExecutionRequest.struct_class = Types::StartCommandExecutionRequest
169
+
170
+ StartCommandExecutionResponse.add_member(:execution_id, Shapes::ShapeRef.new(shape: CommandExecutionId, location_name: "executionId"))
171
+ StartCommandExecutionResponse.struct_class = Types::StartCommandExecutionResponse
172
+
119
173
  StartNextPendingJobExecutionRequest.add_member(:thing_name, Shapes::ShapeRef.new(shape: ThingName, required: true, location: "uri", location_name: "thingName"))
120
174
  StartNextPendingJobExecutionRequest.add_member(:status_details, Shapes::ShapeRef.new(shape: DetailsMap, location_name: "statusDetails"))
121
175
  StartNextPendingJobExecutionRequest.add_member(:step_timeout_in_minutes, Shapes::ShapeRef.new(shape: StepTimeoutInMinutes, location_name: "stepTimeoutInMinutes"))
@@ -146,6 +200,9 @@ module Aws::IoTJobsDataPlane
146
200
  UpdateJobExecutionResponse.add_member(:job_document, Shapes::ShapeRef.new(shape: JobDocument, location_name: "jobDocument"))
147
201
  UpdateJobExecutionResponse.struct_class = Types::UpdateJobExecutionResponse
148
202
 
203
+ ValidationException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
204
+ ValidationException.struct_class = Types::ValidationException
205
+
149
206
 
150
207
  # @api private
151
208
  API = Seahorse::Model::Api.new.tap do |api|
@@ -192,6 +249,20 @@ module Aws::IoTJobsDataPlane
192
249
  o.errors << Shapes::ShapeRef.new(shape: CertificateValidationException)
193
250
  end)
194
251
 
252
+ api.add_operation(:start_command_execution, Seahorse::Model::Operation.new.tap do |o|
253
+ o.name = "StartCommandExecution"
254
+ o.http_method = "POST"
255
+ o.http_request_uri = "/command-executions"
256
+ o.input = Shapes::ShapeRef.new(shape: StartCommandExecutionRequest)
257
+ o.output = Shapes::ShapeRef.new(shape: StartCommandExecutionResponse)
258
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
259
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
260
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
261
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
262
+ o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
263
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
264
+ end)
265
+
195
266
  api.add_operation(:start_next_pending_job_execution, Seahorse::Model::Operation.new.tap do |o|
196
267
  o.name = "StartNextPendingJobExecution"
197
268
  o.http_method = "PUT"
@@ -32,7 +32,7 @@ module Aws::IoTJobsDataPlane
32
32
  raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
33
  end
34
34
  if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
35
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
35
+ if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
36
36
  return Aws::Endpoints::Endpoint.new(url: "https://data.jobs.iot-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
37
37
  end
38
38
  raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
@@ -28,12 +28,16 @@ module Aws::IoTJobsDataPlane
28
28
  #
29
29
  # ## Error Classes
30
30
  # * {CertificateValidationException}
31
+ # * {ConflictException}
32
+ # * {InternalServerException}
31
33
  # * {InvalidRequestException}
32
34
  # * {InvalidStateTransitionException}
33
35
  # * {ResourceNotFoundException}
36
+ # * {ServiceQuotaExceededException}
34
37
  # * {ServiceUnavailableException}
35
38
  # * {TerminalStateException}
36
39
  # * {ThrottlingException}
40
+ # * {ValidationException}
37
41
  #
38
42
  # Additionally, error classes are dynamically generated for service errors based on the error code
39
43
  # if they are not defined above.
@@ -56,6 +60,41 @@ module Aws::IoTJobsDataPlane
56
60
  end
57
61
  end
58
62
 
63
+ class ConflictException < ServiceError
64
+
65
+ # @param [Seahorse::Client::RequestContext] context
66
+ # @param [String] message
67
+ # @param [Aws::IoTJobsDataPlane::Types::ConflictException] data
68
+ def initialize(context, message, data = Aws::EmptyStructure.new)
69
+ super(context, message, data)
70
+ end
71
+
72
+ # @return [String]
73
+ def message
74
+ @message || @data[:message]
75
+ end
76
+
77
+ # @return [String]
78
+ def resource_id
79
+ @data[:resource_id]
80
+ end
81
+ end
82
+
83
+ class InternalServerException < ServiceError
84
+
85
+ # @param [Seahorse::Client::RequestContext] context
86
+ # @param [String] message
87
+ # @param [Aws::IoTJobsDataPlane::Types::InternalServerException] data
88
+ def initialize(context, message, data = Aws::EmptyStructure.new)
89
+ super(context, message, data)
90
+ end
91
+
92
+ # @return [String]
93
+ def message
94
+ @message || @data[:message]
95
+ end
96
+ end
97
+
59
98
  class InvalidRequestException < ServiceError
60
99
 
61
100
  # @param [Seahorse::Client::RequestContext] context
@@ -101,6 +140,21 @@ module Aws::IoTJobsDataPlane
101
140
  end
102
141
  end
103
142
 
143
+ class ServiceQuotaExceededException < ServiceError
144
+
145
+ # @param [Seahorse::Client::RequestContext] context
146
+ # @param [String] message
147
+ # @param [Aws::IoTJobsDataPlane::Types::ServiceQuotaExceededException] data
148
+ def initialize(context, message, data = Aws::EmptyStructure.new)
149
+ super(context, message, data)
150
+ end
151
+
152
+ # @return [String]
153
+ def message
154
+ @message || @data[:message]
155
+ end
156
+ end
157
+
104
158
  class ServiceUnavailableException < ServiceError
105
159
 
106
160
  # @param [Seahorse::Client::RequestContext] context
@@ -151,5 +205,20 @@ module Aws::IoTJobsDataPlane
151
205
  end
152
206
  end
153
207
 
208
+ class ValidationException < ServiceError
209
+
210
+ # @param [Seahorse::Client::RequestContext] context
211
+ # @param [String] message
212
+ # @param [Aws::IoTJobsDataPlane::Types::ValidationException] data
213
+ def initialize(context, message, data = Aws::EmptyStructure.new)
214
+ super(context, message, data)
215
+ end
216
+
217
+ # @return [String]
218
+ def message
219
+ @message || @data[:message]
220
+ end
221
+ end
222
+
154
223
  end
155
224
  end
@@ -22,6 +22,69 @@ module Aws::IoTJobsDataPlane
22
22
  include Aws::Structure
23
23
  end
24
24
 
25
+ # The list of values used to describe a specific command parameter.
26
+ #
27
+ # @!attribute [rw] s
28
+ # An attribute of type String. For example:
29
+ #
30
+ # `"S": "Hello"`
31
+ # @return [String]
32
+ #
33
+ # @!attribute [rw] b
34
+ # An attribute of type Boolean. For example:
35
+ #
36
+ # `"BOOL": true`
37
+ # @return [Boolean]
38
+ #
39
+ # @!attribute [rw] i
40
+ # An attribute of type Integer (Thirty-Two Bits).
41
+ # @return [Integer]
42
+ #
43
+ # @!attribute [rw] l
44
+ # An attribute of type Long.
45
+ # @return [Integer]
46
+ #
47
+ # @!attribute [rw] d
48
+ # An attribute of type Double (Sixty-Four Bits).
49
+ # @return [Float]
50
+ #
51
+ # @!attribute [rw] bin
52
+ # An attribute of type Binary.
53
+ # @return [String]
54
+ #
55
+ # @!attribute [rw] ul
56
+ # An attribute of type Unsigned Long.
57
+ # @return [String]
58
+ #
59
+ class CommandParameterValue < Struct.new(
60
+ :s,
61
+ :b,
62
+ :i,
63
+ :l,
64
+ :d,
65
+ :bin,
66
+ :ul)
67
+ SENSITIVE = []
68
+ include Aws::Structure
69
+ end
70
+
71
+ # A conflict has occurred when performing the API request.
72
+ #
73
+ # @!attribute [rw] message
74
+ # @return [String]
75
+ #
76
+ # @!attribute [rw] resource_id
77
+ # A conflict occurred while performing the API request on the resource
78
+ # ID.
79
+ # @return [String]
80
+ #
81
+ class ConflictException < Struct.new(
82
+ :message,
83
+ :resource_id)
84
+ SENSITIVE = []
85
+ include Aws::Structure
86
+ end
87
+
25
88
  # @!attribute [rw] job_id
26
89
  # The unique identifier assigned to this job when it was created.
27
90
  # @return [String]
@@ -32,8 +95,8 @@ module Aws::IoTJobsDataPlane
32
95
  # @return [String]
33
96
  #
34
97
  # @!attribute [rw] include_job_document
35
- # Optional. When set to true, the response contains the job document.
36
- # The default is false.
98
+ # Optional. Unless set to false, the response contains the job
99
+ # document. The default is true.
37
100
  # @return [Boolean]
38
101
  #
39
102
  # @!attribute [rw] execution_number
@@ -86,9 +149,18 @@ module Aws::IoTJobsDataPlane
86
149
  include Aws::Structure
87
150
  end
88
151
 
89
- # The contents of the request were invalid. For example, this code is
90
- # returned when an UpdateJobExecution request contains invalid status
91
- # details. The message contains details about the error.
152
+ # An internal server error occurred when performing the API request.
153
+ #
154
+ # @!attribute [rw] message
155
+ # @return [String]
156
+ #
157
+ class InternalServerException < Struct.new(
158
+ :message)
159
+ SENSITIVE = []
160
+ include Aws::Structure
161
+ end
162
+
163
+ # The contents of the request were invalid.
92
164
  #
93
165
  # @!attribute [rw] message
94
166
  # The message for the exception.
@@ -128,32 +200,37 @@ module Aws::IoTJobsDataPlane
128
200
  # @!attribute [rw] status
129
201
  # The status of the job execution. Can be one of: "QUEUED",
130
202
  # "IN\_PROGRESS", "FAILED", "SUCCESS", "CANCELED",
131
- # "REJECTED", or "REMOVED".
203
+ # "TIMED\_OUT", "REJECTED", or "REMOVED".
132
204
  # @return [String]
133
205
  #
134
206
  # @!attribute [rw] status_details
135
207
  # A collection of name/value pairs that describe the status of the job
136
208
  # execution.
209
+ #
210
+ # The maximum length of the value in the name/value pair is 1,024
211
+ # characters.
137
212
  # @return [Hash<String,String>]
138
213
  #
139
214
  # @!attribute [rw] queued_at
140
- # The time, in milliseconds since the epoch, when the job execution
141
- # was enqueued.
215
+ # The time, in seconds since the epoch, when the job execution was
216
+ # enqueued.
142
217
  # @return [Integer]
143
218
  #
144
219
  # @!attribute [rw] started_at
145
- # The time, in milliseconds since the epoch, when the job execution
146
- # was started.
220
+ # The time, in seconds since the epoch, when the job execution was
221
+ # started.
147
222
  # @return [Integer]
148
223
  #
149
224
  # @!attribute [rw] last_updated_at
150
- # The time, in milliseconds since the epoch, when the job execution
151
- # was last updated.
225
+ # The time, in seconds since the epoch, when the job execution was
226
+ # last updated.
152
227
  # @return [Integer]
153
228
  #
154
229
  # @!attribute [rw] approximate_seconds_before_timed_out
155
230
  # The estimated number of seconds that remain before the job execution
156
- # status will be changed to `TIMED_OUT`.
231
+ # status will be changed to `TIMED_OUT`. The actual job execution
232
+ # timeout can occur up to 60 seconds later than the estimated
233
+ # duration.
157
234
  # @return [Integer]
158
235
  #
159
236
  # @!attribute [rw] version_number
@@ -192,12 +269,15 @@ module Aws::IoTJobsDataPlane
192
269
  # @!attribute [rw] status
193
270
  # The status of the job execution. Can be one of: "QUEUED",
194
271
  # "IN\_PROGRESS", "FAILED", "SUCCESS", "CANCELED",
195
- # "REJECTED", or "REMOVED".
272
+ # "TIMED\_OUT", "REJECTED", or "REMOVED".
196
273
  # @return [String]
197
274
  #
198
275
  # @!attribute [rw] status_details
199
276
  # A collection of name/value pairs that describe the status of the job
200
277
  # execution.
278
+ #
279
+ # The maximum length of the value in the name/value pair is 1,024
280
+ # characters.
201
281
  # @return [Hash<String,String>]
202
282
  #
203
283
  # @!attribute [rw] version_number
@@ -220,23 +300,23 @@ module Aws::IoTJobsDataPlane
220
300
  # @return [String]
221
301
  #
222
302
  # @!attribute [rw] queued_at
223
- # The time, in milliseconds since the epoch, when the job execution
224
- # was enqueued.
303
+ # The time, in seconds since the epoch, when the job execution was
304
+ # enqueued.
225
305
  # @return [Integer]
226
306
  #
227
307
  # @!attribute [rw] started_at
228
- # The time, in milliseconds since the epoch, when the job execution
308
+ # The time, in seconds since the epoch, when the job execution
229
309
  # started.
230
310
  # @return [Integer]
231
311
  #
232
312
  # @!attribute [rw] last_updated_at
233
- # The time, in milliseconds since the epoch, when the job execution
234
- # was last updated.
313
+ # The time, in seconds since the epoch, when the job execution was
314
+ # last updated.
235
315
  # @return [Integer]
236
316
  #
237
317
  # @!attribute [rw] version_number
238
318
  # The version of the job execution. Job execution versions are
239
- # incremented each time AWS IoT Jobs receives an update from a device.
319
+ # incremented each time IoT Jobs receives an update from a device.
240
320
  # @return [Integer]
241
321
  #
242
322
  # @!attribute [rw] execution_number
@@ -267,6 +347,17 @@ module Aws::IoTJobsDataPlane
267
347
  include Aws::Structure
268
348
  end
269
349
 
350
+ # The service quota has been exceeded for this request.
351
+ #
352
+ # @!attribute [rw] message
353
+ # @return [String]
354
+ #
355
+ class ServiceQuotaExceededException < Struct.new(
356
+ :message)
357
+ SENSITIVE = []
358
+ include Aws::Structure
359
+ end
360
+
270
361
  # The service is temporarily unavailable.
271
362
  #
272
363
  # @!attribute [rw] message
@@ -279,6 +370,62 @@ module Aws::IoTJobsDataPlane
279
370
  include Aws::Structure
280
371
  end
281
372
 
373
+ # @!attribute [rw] target_arn
374
+ # The Amazon Resource Number (ARN) of the device where the command
375
+ # execution is occurring.
376
+ # @return [String]
377
+ #
378
+ # @!attribute [rw] command_arn
379
+ # The Amazon Resource Number (ARN) of the command. For example,
380
+ # `arn:aws:iot:<region>:<accountid>:command/<commandName>`
381
+ # @return [String]
382
+ #
383
+ # @!attribute [rw] parameters
384
+ # A list of parameters that are required by the
385
+ # `StartCommandExecution` API when performing the command on a device.
386
+ # @return [Hash<String,Types::CommandParameterValue>]
387
+ #
388
+ # @!attribute [rw] execution_timeout_seconds
389
+ # Specifies the amount of time in second the device has to finish the
390
+ # command execution. A timer is started as soon as the command
391
+ # execution is created. If the command execution status is not set to
392
+ # another terminal state before the timer expires, it will
393
+ # automatically update to `TIMED_OUT`.
394
+ # @return [Integer]
395
+ #
396
+ # @!attribute [rw] client_token
397
+ # The client token is used to implement idempotency. It ensures that
398
+ # the request completes no more than one time. If you retry a request
399
+ # with the same token and the same parameters, the request will
400
+ # complete successfully. However, if you retry the request using the
401
+ # same token but different parameters, an HTTP 409 conflict occurs. If
402
+ # you omit this value, Amazon Web Services SDKs will automatically
403
+ # generate a unique client request.
404
+ #
405
+ # **A suitable default value is auto-generated.** You should normally
406
+ # not need to pass this option.
407
+ # @return [String]
408
+ #
409
+ class StartCommandExecutionRequest < Struct.new(
410
+ :target_arn,
411
+ :command_arn,
412
+ :parameters,
413
+ :execution_timeout_seconds,
414
+ :client_token)
415
+ SENSITIVE = []
416
+ include Aws::Structure
417
+ end
418
+
419
+ # @!attribute [rw] execution_id
420
+ # A unique identifier for the command execution.
421
+ # @return [String]
422
+ #
423
+ class StartCommandExecutionResponse < Struct.new(
424
+ :execution_id)
425
+ SENSITIVE = []
426
+ include Aws::Structure
427
+ end
428
+
282
429
  # @!attribute [rw] thing_name
283
430
  # The name of the thing associated with the device.
284
431
  # @return [String]
@@ -286,18 +433,24 @@ module Aws::IoTJobsDataPlane
286
433
  # @!attribute [rw] status_details
287
434
  # A collection of name/value pairs that describe the status of the job
288
435
  # execution. If not specified, the statusDetails are unchanged.
436
+ #
437
+ # The maximum length of the value in the name/value pair is 1,024
438
+ # characters.
289
439
  # @return [Hash<String,String>]
290
440
  #
291
441
  # @!attribute [rw] step_timeout_in_minutes
292
442
  # Specifies the amount of time this device has to finish execution of
293
443
  # this job. If the job execution status is not set to a terminal state
294
444
  # before this timer expires, or before the timer is reset (by calling
295
- # `UpdateJobExecution`, setting the status to `IN_PROGRESS` and
445
+ # `UpdateJobExecution`, setting the status to `IN_PROGRESS`, and
296
446
  # specifying a new timeout value in field `stepTimeoutInMinutes`) the
297
447
  # job execution status will be automatically set to `TIMED_OUT`. Note
298
- # that setting this timeout has no effect on that job execution
299
- # timeout which may have been specified when the job was created
448
+ # that setting the step timeout has no effect on the in progress
449
+ # timeout that may have been specified when the job was created
300
450
  # (`CreateJob` using field `timeoutConfig`).
451
+ #
452
+ # Valid values for this parameter range from 1 to 10080 (1 minute to 7
453
+ # days).
301
454
  # @return [Integer]
302
455
  #
303
456
  class StartNextPendingJobExecutionRequest < Struct.new(
@@ -363,18 +516,25 @@ module Aws::IoTJobsDataPlane
363
516
  # Optional. A collection of name/value pairs that describe the status
364
517
  # of the job execution. If not specified, the statusDetails are
365
518
  # unchanged.
519
+ #
520
+ # The maximum length of the value in the name/value pair is 1,024
521
+ # characters.
366
522
  # @return [Hash<String,String>]
367
523
  #
368
524
  # @!attribute [rw] step_timeout_in_minutes
369
525
  # Specifies the amount of time this device has to finish execution of
370
526
  # this job. If the job execution status is not set to a terminal state
371
527
  # before this timer expires, or before the timer is reset (by again
372
- # calling `UpdateJobExecution`, setting the status to `IN_PROGRESS`
528
+ # calling `UpdateJobExecution`, setting the status to `IN_PROGRESS`,
373
529
  # and specifying a new timeout value in this field) the job execution
374
530
  # status will be automatically set to `TIMED_OUT`. Note that setting
375
- # or resetting this timeout has no effect on that job execution
376
- # timeout which may have been specified when the job was created
531
+ # or resetting the step timeout has no effect on the in progress
532
+ # timeout that may have been specified when the job was created
377
533
  # (`CreateJob` using field `timeoutConfig`).
534
+ #
535
+ # Valid values for this parameter range from 1 to 10080 (1 minute to 7
536
+ # days). A value of -1 is also valid and will cancel the current step
537
+ # timer (created by an earlier use of `UpdateJobExecutionRequest`).
378
538
  # @return [Integer]
379
539
  #
380
540
  # @!attribute [rw] expected_version
@@ -432,6 +592,17 @@ module Aws::IoTJobsDataPlane
432
592
  include Aws::Structure
433
593
  end
434
594
 
595
+ # A validation error occurred when performing the API request.
596
+ #
597
+ # @!attribute [rw] message
598
+ # @return [String]
599
+ #
600
+ class ValidationException < Struct.new(
601
+ :message)
602
+ SENSITIVE = []
603
+ include Aws::Structure
604
+ end
605
+
435
606
  end
436
607
  end
437
608
 
@@ -54,7 +54,7 @@ module Aws::IoTJobsDataPlane
54
54
  autoload :EndpointProvider, 'aws-sdk-iotjobsdataplane/endpoint_provider'
55
55
  autoload :Endpoints, 'aws-sdk-iotjobsdataplane/endpoints'
56
56
 
57
- GEM_VERSION = '1.62.0'
57
+ GEM_VERSION = '1.64.0'
58
58
 
59
59
  end
60
60
 
data/sig/client.rbs CHANGED
@@ -39,7 +39,9 @@ module Aws
39
39
  ?logger: untyped,
40
40
  ?max_attempts: Integer,
41
41
  ?profile: String,
42
+ ?request_checksum_calculation: String,
42
43
  ?request_min_compression_size_bytes: Integer,
44
+ ?response_checksum_validation: String,
43
45
  ?retry_backoff: Proc,
44
46
  ?retry_base_delay: Float,
45
47
  ?retry_jitter: (:none | :equal | :full | ^(Integer) -> Integer),
@@ -99,6 +101,28 @@ module Aws
99
101
  ) -> _GetPendingJobExecutionsResponseSuccess
100
102
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GetPendingJobExecutionsResponseSuccess
101
103
 
104
+ interface _StartCommandExecutionResponseSuccess
105
+ include ::Seahorse::Client::_ResponseSuccess[Types::StartCommandExecutionResponse]
106
+ def execution_id: () -> ::String
107
+ end
108
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/IoTJobsDataPlane/Client.html#start_command_execution-instance_method
109
+ def start_command_execution: (
110
+ target_arn: ::String,
111
+ command_arn: ::String,
112
+ ?parameters: Hash[::String, {
113
+ s: ::String?,
114
+ b: bool?,
115
+ i: ::Integer?,
116
+ l: ::Integer?,
117
+ d: ::Float?,
118
+ bin: ::String?,
119
+ ul: ::String?
120
+ }],
121
+ ?execution_timeout_seconds: ::Integer,
122
+ ?client_token: ::String
123
+ ) -> _StartCommandExecutionResponseSuccess
124
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _StartCommandExecutionResponseSuccess
125
+
102
126
  interface _StartNextPendingJobExecutionResponseSuccess
103
127
  include ::Seahorse::Client::_ResponseSuccess[Types::StartNextPendingJobExecutionResponse]
104
128
  def execution: () -> Types::JobExecution
data/sig/errors.rbs CHANGED
@@ -14,6 +14,13 @@ module Aws
14
14
  class CertificateValidationException < ::Aws::Errors::ServiceError
15
15
  def message: () -> ::String
16
16
  end
17
+ class ConflictException < ::Aws::Errors::ServiceError
18
+ def message: () -> ::String
19
+ def resource_id: () -> ::String
20
+ end
21
+ class InternalServerException < ::Aws::Errors::ServiceError
22
+ def message: () -> ::String
23
+ end
17
24
  class InvalidRequestException < ::Aws::Errors::ServiceError
18
25
  def message: () -> ::String
19
26
  end
@@ -23,6 +30,9 @@ module Aws
23
30
  class ResourceNotFoundException < ::Aws::Errors::ServiceError
24
31
  def message: () -> ::String
25
32
  end
33
+ class ServiceQuotaExceededException < ::Aws::Errors::ServiceError
34
+ def message: () -> ::String
35
+ end
26
36
  class ServiceUnavailableException < ::Aws::Errors::ServiceError
27
37
  def message: () -> ::String
28
38
  end
@@ -33,6 +43,9 @@ module Aws
33
43
  def message: () -> ::String
34
44
  def payload: () -> ::String
35
45
  end
46
+ class ValidationException < ::Aws::Errors::ServiceError
47
+ def message: () -> ::String
48
+ end
36
49
  end
37
50
  end
38
51
  end
data/sig/resource.rbs CHANGED
@@ -39,7 +39,9 @@ module Aws
39
39
  ?logger: untyped,
40
40
  ?max_attempts: Integer,
41
41
  ?profile: String,
42
+ ?request_checksum_calculation: String,
42
43
  ?request_min_compression_size_bytes: Integer,
44
+ ?response_checksum_validation: String,
43
45
  ?retry_backoff: Proc,
44
46
  ?retry_base_delay: Float,
45
47
  ?retry_jitter: (:none | :equal | :full | ^(Integer) -> Integer),
data/sig/types.rbs CHANGED
@@ -13,6 +13,23 @@ module Aws::IoTJobsDataPlane
13
13
  SENSITIVE: []
14
14
  end
15
15
 
16
+ class CommandParameterValue
17
+ attr_accessor s: ::String
18
+ attr_accessor b: bool
19
+ attr_accessor i: ::Integer
20
+ attr_accessor l: ::Integer
21
+ attr_accessor d: ::Float
22
+ attr_accessor bin: ::String
23
+ attr_accessor ul: ::String
24
+ SENSITIVE: []
25
+ end
26
+
27
+ class ConflictException
28
+ attr_accessor message: ::String
29
+ attr_accessor resource_id: ::String
30
+ SENSITIVE: []
31
+ end
32
+
16
33
  class DescribeJobExecutionRequest
17
34
  attr_accessor job_id: ::String
18
35
  attr_accessor thing_name: ::String
@@ -37,6 +54,11 @@ module Aws::IoTJobsDataPlane
37
54
  SENSITIVE: []
38
55
  end
39
56
 
57
+ class InternalServerException
58
+ attr_accessor message: ::String
59
+ SENSITIVE: []
60
+ end
61
+
40
62
  class InvalidRequestException
41
63
  attr_accessor message: ::String
42
64
  SENSITIVE: []
@@ -84,11 +106,30 @@ module Aws::IoTJobsDataPlane
84
106
  SENSITIVE: []
85
107
  end
86
108
 
109
+ class ServiceQuotaExceededException
110
+ attr_accessor message: ::String
111
+ SENSITIVE: []
112
+ end
113
+
87
114
  class ServiceUnavailableException
88
115
  attr_accessor message: ::String
89
116
  SENSITIVE: []
90
117
  end
91
118
 
119
+ class StartCommandExecutionRequest
120
+ attr_accessor target_arn: ::String
121
+ attr_accessor command_arn: ::String
122
+ attr_accessor parameters: ::Hash[::String, Types::CommandParameterValue]
123
+ attr_accessor execution_timeout_seconds: ::Integer
124
+ attr_accessor client_token: ::String
125
+ SENSITIVE: []
126
+ end
127
+
128
+ class StartCommandExecutionResponse
129
+ attr_accessor execution_id: ::String
130
+ SENSITIVE: []
131
+ end
132
+
92
133
  class StartNextPendingJobExecutionRequest
93
134
  attr_accessor thing_name: ::String
94
135
  attr_accessor status_details: ::Hash[::String, ::String]
@@ -130,5 +171,10 @@ module Aws::IoTJobsDataPlane
130
171
  attr_accessor job_document: ::String
131
172
  SENSITIVE: []
132
173
  end
174
+
175
+ class ValidationException
176
+ attr_accessor message: ::String
177
+ SENSITIVE: []
178
+ end
133
179
  end
134
180
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-iotjobsdataplane
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.62.0
4
+ version: 1.64.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-10-18 00:00:00.000000000 Z
11
+ date: 2025-01-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.210.0
22
+ version: 3.216.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.210.0
32
+ version: 3.216.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement