aws-sdk-iot 1.66.0 → 1.70.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.
@@ -2,7 +2,7 @@
2
2
  # WARNING ABOUT GENERATED CODE
3
3
  #
4
4
  # This file is generated. See the contributing for info on making contributions:
5
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
6
6
  #
7
7
  # WARNING ABOUT GENERATED CODE
8
8
 
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -30,6 +30,7 @@ module Aws::IoT
30
30
  # * {CertificateConflictException}
31
31
  # * {CertificateStateException}
32
32
  # * {CertificateValidationException}
33
+ # * {ConflictException}
33
34
  # * {ConflictingResourceUpdateException}
34
35
  # * {DeleteConflictException}
35
36
  # * {IndexNotReadyException}
@@ -108,6 +109,21 @@ module Aws::IoT
108
109
  end
109
110
  end
110
111
 
112
+ class ConflictException < ServiceError
113
+
114
+ # @param [Seahorse::Client::RequestContext] context
115
+ # @param [String] message
116
+ # @param [Aws::IoT::Types::ConflictException] data
117
+ def initialize(context, message, data = Aws::EmptyStructure.new)
118
+ super(context, message, data)
119
+ end
120
+
121
+ # @return [String]
122
+ def message
123
+ @message || @data[:message]
124
+ end
125
+ end
126
+
111
127
  class ConflictingResourceUpdateException < ServiceError
112
128
 
113
129
  # @param [Seahorse::Client::RequestContext] context
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -788,7 +788,8 @@ module Aws::IoT
788
788
  # @return [String]
789
789
  #
790
790
  # @!attribute [rw] target
791
- # The [identity][1] to which the policy is attached.
791
+ # The [identity][1] to which the policy is attached. For example, a
792
+ # thing group or a certificate.
792
793
  #
793
794
  #
794
795
  #
@@ -2608,6 +2609,17 @@ module Aws::IoT
2608
2609
 
2609
2610
  class ConfirmTopicRuleDestinationResponse < Aws::EmptyStructure; end
2610
2611
 
2612
+ # A resource with the same name already exists.
2613
+ #
2614
+ # @!attribute [rw] message
2615
+ # @return [String]
2616
+ #
2617
+ class ConflictException < Struct.new(
2618
+ :message)
2619
+ SENSITIVE = []
2620
+ include Aws::Structure
2621
+ end
2622
+
2611
2623
  # A conflicting resource update exception. This exception is thrown when
2612
2624
  # two pending updates cause a conflict.
2613
2625
  #
@@ -3280,6 +3292,7 @@ module Aws::IoT
3280
3292
  # },
3281
3293
  # ],
3282
3294
  # namespace_id: "NamespaceId",
3295
+ # job_template_arn: "JobTemplateArn",
3283
3296
  # }
3284
3297
  #
3285
3298
  # @!attribute [rw] job_id
@@ -3293,11 +3306,8 @@ module Aws::IoT
3293
3306
  # @return [Array<String>]
3294
3307
  #
3295
3308
  # @!attribute [rw] document_source
3296
- # An S3 link to the job document.
3297
- # @return [String]
3298
- #
3299
- # @!attribute [rw] document
3300
- # The job document.
3309
+ # An S3 link to the job document. Required if you don't specify a
3310
+ # value for `document`.
3301
3311
  #
3302
3312
  # <note markdown="1"> If the job document resides in an S3 bucket, you must use a
3303
3313
  # placeholder link when specifying the document.
@@ -3312,6 +3322,11 @@ module Aws::IoT
3312
3322
  # </note>
3313
3323
  # @return [String]
3314
3324
  #
3325
+ # @!attribute [rw] document
3326
+ # The job document. Required if you don't specify a value for
3327
+ # `documentSource`.
3328
+ # @return [String]
3329
+ #
3315
3330
  # @!attribute [rw] description
3316
3331
  # A short text description of the job.
3317
3332
  # @return [String]
@@ -3363,6 +3378,10 @@ module Aws::IoT
3363
3378
  # </note>
3364
3379
  # @return [String]
3365
3380
  #
3381
+ # @!attribute [rw] job_template_arn
3382
+ # The ARN of the job template used to create the job.
3383
+ # @return [String]
3384
+ #
3366
3385
  class CreateJobRequest < Struct.new(
3367
3386
  :job_id,
3368
3387
  :targets,
@@ -3375,7 +3394,8 @@ module Aws::IoT
3375
3394
  :abort_config,
3376
3395
  :timeout_config,
3377
3396
  :tags,
3378
- :namespace_id)
3397
+ :namespace_id,
3398
+ :job_template_arn)
3379
3399
  SENSITIVE = []
3380
3400
  include Aws::Structure
3381
3401
  end
@@ -3400,6 +3420,140 @@ module Aws::IoT
3400
3420
  include Aws::Structure
3401
3421
  end
3402
3422
 
3423
+ # @note When making an API call, you may pass CreateJobTemplateRequest
3424
+ # data as a hash:
3425
+ #
3426
+ # {
3427
+ # job_template_id: "JobTemplateId", # required
3428
+ # job_arn: "JobArn",
3429
+ # document_source: "JobDocumentSource",
3430
+ # document: "JobDocument",
3431
+ # description: "JobDescription", # required
3432
+ # presigned_url_config: {
3433
+ # role_arn: "RoleArn",
3434
+ # expires_in_sec: 1,
3435
+ # },
3436
+ # job_executions_rollout_config: {
3437
+ # maximum_per_minute: 1,
3438
+ # exponential_rate: {
3439
+ # base_rate_per_minute: 1, # required
3440
+ # increment_factor: 1.0, # required
3441
+ # rate_increase_criteria: { # required
3442
+ # number_of_notified_things: 1,
3443
+ # number_of_succeeded_things: 1,
3444
+ # },
3445
+ # },
3446
+ # },
3447
+ # abort_config: {
3448
+ # criteria_list: [ # required
3449
+ # {
3450
+ # failure_type: "FAILED", # required, accepts FAILED, REJECTED, TIMED_OUT, ALL
3451
+ # action: "CANCEL", # required, accepts CANCEL
3452
+ # threshold_percentage: 1.0, # required
3453
+ # min_number_of_executed_things: 1, # required
3454
+ # },
3455
+ # ],
3456
+ # },
3457
+ # timeout_config: {
3458
+ # in_progress_timeout_in_minutes: 1,
3459
+ # },
3460
+ # tags: [
3461
+ # {
3462
+ # key: "TagKey", # required
3463
+ # value: "TagValue",
3464
+ # },
3465
+ # ],
3466
+ # }
3467
+ #
3468
+ # @!attribute [rw] job_template_id
3469
+ # A unique identifier for the job template. We recommend using a UUID.
3470
+ # Alpha-numeric characters, "-", and "\_" are valid for use here.
3471
+ # @return [String]
3472
+ #
3473
+ # @!attribute [rw] job_arn
3474
+ # The ARN of the job to use as the basis for the job template.
3475
+ # @return [String]
3476
+ #
3477
+ # @!attribute [rw] document_source
3478
+ # An S3 link to the job document to use in the template. Required if
3479
+ # you don't specify a value for `document`.
3480
+ #
3481
+ # <note markdown="1"> If the job document resides in an S3 bucket, you must use a
3482
+ # placeholder link when specifying the document.
3483
+ #
3484
+ # The placeholder link is of the following form:
3485
+ #
3486
+ # `$\{aws:iot:s3-presigned-url:https://s3.amazonaws.com/bucket/key\}`
3487
+ #
3488
+ # where *bucket* is your bucket name and *key* is the object in the
3489
+ # bucket to which you are linking.
3490
+ #
3491
+ # </note>
3492
+ # @return [String]
3493
+ #
3494
+ # @!attribute [rw] document
3495
+ # The job document. Required if you don't specify a value for
3496
+ # `documentSource`.
3497
+ # @return [String]
3498
+ #
3499
+ # @!attribute [rw] description
3500
+ # A description of the job document.
3501
+ # @return [String]
3502
+ #
3503
+ # @!attribute [rw] presigned_url_config
3504
+ # Configuration for pre-signed S3 URLs.
3505
+ # @return [Types::PresignedUrlConfig]
3506
+ #
3507
+ # @!attribute [rw] job_executions_rollout_config
3508
+ # Allows you to create a staged rollout of a job.
3509
+ # @return [Types::JobExecutionsRolloutConfig]
3510
+ #
3511
+ # @!attribute [rw] abort_config
3512
+ # The criteria that determine when and how a job abort takes place.
3513
+ # @return [Types::AbortConfig]
3514
+ #
3515
+ # @!attribute [rw] timeout_config
3516
+ # Specifies the amount of time each device has to finish its execution
3517
+ # of the job. A timer is started when the job execution status is set
3518
+ # to `IN_PROGRESS`. If the job execution status is not set to another
3519
+ # terminal state before the timer expires, it will be automatically
3520
+ # set to `TIMED_OUT`.
3521
+ # @return [Types::TimeoutConfig]
3522
+ #
3523
+ # @!attribute [rw] tags
3524
+ # Metadata that can be used to manage the job template.
3525
+ # @return [Array<Types::Tag>]
3526
+ #
3527
+ class CreateJobTemplateRequest < Struct.new(
3528
+ :job_template_id,
3529
+ :job_arn,
3530
+ :document_source,
3531
+ :document,
3532
+ :description,
3533
+ :presigned_url_config,
3534
+ :job_executions_rollout_config,
3535
+ :abort_config,
3536
+ :timeout_config,
3537
+ :tags)
3538
+ SENSITIVE = []
3539
+ include Aws::Structure
3540
+ end
3541
+
3542
+ # @!attribute [rw] job_template_arn
3543
+ # The ARN of the job template.
3544
+ # @return [String]
3545
+ #
3546
+ # @!attribute [rw] job_template_id
3547
+ # The unique identifier of the job template.
3548
+ # @return [String]
3549
+ #
3550
+ class CreateJobTemplateResponse < Struct.new(
3551
+ :job_template_arn,
3552
+ :job_template_id)
3553
+ SENSITIVE = []
3554
+ include Aws::Structure
3555
+ end
3556
+
3403
3557
  # The input for the CreateKeysAndCertificate operation.
3404
3558
  #
3405
3559
  # @note When making an API call, you may pass CreateKeysAndCertificateRequest
@@ -5458,6 +5612,23 @@ module Aws::IoT
5458
5612
  include Aws::Structure
5459
5613
  end
5460
5614
 
5615
+ # @note When making an API call, you may pass DeleteJobTemplateRequest
5616
+ # data as a hash:
5617
+ #
5618
+ # {
5619
+ # job_template_id: "JobTemplateId", # required
5620
+ # }
5621
+ #
5622
+ # @!attribute [rw] job_template_id
5623
+ # The unique identifier of the job template to delete.
5624
+ # @return [String]
5625
+ #
5626
+ class DeleteJobTemplateRequest < Struct.new(
5627
+ :job_template_id)
5628
+ SENSITIVE = []
5629
+ include Aws::Structure
5630
+ end
5631
+
5461
5632
  # @note When making an API call, you may pass DeleteMitigationActionRequest
5462
5633
  # data as a hash:
5463
5634
  #
@@ -6706,6 +6877,83 @@ module Aws::IoT
6706
6877
  include Aws::Structure
6707
6878
  end
6708
6879
 
6880
+ # @note When making an API call, you may pass DescribeJobTemplateRequest
6881
+ # data as a hash:
6882
+ #
6883
+ # {
6884
+ # job_template_id: "JobTemplateId", # required
6885
+ # }
6886
+ #
6887
+ # @!attribute [rw] job_template_id
6888
+ # The unique identifier of the job template.
6889
+ # @return [String]
6890
+ #
6891
+ class DescribeJobTemplateRequest < Struct.new(
6892
+ :job_template_id)
6893
+ SENSITIVE = []
6894
+ include Aws::Structure
6895
+ end
6896
+
6897
+ # @!attribute [rw] job_template_arn
6898
+ # The ARN of the job template.
6899
+ # @return [String]
6900
+ #
6901
+ # @!attribute [rw] job_template_id
6902
+ # The unique identifier of the job template.
6903
+ # @return [String]
6904
+ #
6905
+ # @!attribute [rw] description
6906
+ # A description of the job template.
6907
+ # @return [String]
6908
+ #
6909
+ # @!attribute [rw] document_source
6910
+ # An S3 link to the job document.
6911
+ # @return [String]
6912
+ #
6913
+ # @!attribute [rw] document
6914
+ # The job document.
6915
+ # @return [String]
6916
+ #
6917
+ # @!attribute [rw] created_at
6918
+ # The time, in seconds since the epoch, when the job template was
6919
+ # created.
6920
+ # @return [Time]
6921
+ #
6922
+ # @!attribute [rw] presigned_url_config
6923
+ # Configuration for pre-signed S3 URLs.
6924
+ # @return [Types::PresignedUrlConfig]
6925
+ #
6926
+ # @!attribute [rw] job_executions_rollout_config
6927
+ # Allows you to create a staged rollout of a job.
6928
+ # @return [Types::JobExecutionsRolloutConfig]
6929
+ #
6930
+ # @!attribute [rw] abort_config
6931
+ # The criteria that determine when and how a job abort takes place.
6932
+ # @return [Types::AbortConfig]
6933
+ #
6934
+ # @!attribute [rw] timeout_config
6935
+ # Specifies the amount of time each device has to finish its execution
6936
+ # of the job. A timer is started when the job execution status is set
6937
+ # to `IN_PROGRESS`. If the job execution status is not set to another
6938
+ # terminal state before the timer expires, it will be automatically
6939
+ # set to `TIMED_OUT`.
6940
+ # @return [Types::TimeoutConfig]
6941
+ #
6942
+ class DescribeJobTemplateResponse < Struct.new(
6943
+ :job_template_arn,
6944
+ :job_template_id,
6945
+ :description,
6946
+ :document_source,
6947
+ :document,
6948
+ :created_at,
6949
+ :presigned_url_config,
6950
+ :job_executions_rollout_config,
6951
+ :abort_config,
6952
+ :timeout_config)
6953
+ SENSITIVE = []
6954
+ include Aws::Structure
6955
+ end
6956
+
6709
6957
  # @note When making an API call, you may pass DescribeMitigationActionRequest
6710
6958
  # data as a hash:
6711
6959
  #
@@ -7713,11 +7961,6 @@ module Aws::IoT
7713
7961
  #
7714
7962
  # * CredentialProvider
7715
7963
  #
7716
- # <note markdown="1"> The domain configuration feature is in public preview and is subject
7717
- # to change.
7718
- #
7719
- # </note>
7720
- #
7721
7964
  # @!attribute [rw] domain_configuration_name
7722
7965
  # The name of the domain configuration. This value must be unique to a
7723
7966
  # region.
@@ -9292,6 +9535,10 @@ module Aws::IoT
9292
9535
  # </note>
9293
9536
  # @return [String]
9294
9537
  #
9538
+ # @!attribute [rw] job_template_arn
9539
+ # The ARN of the job template used to create the job.
9540
+ # @return [String]
9541
+ #
9295
9542
  class Job < Struct.new(
9296
9543
  :job_arn,
9297
9544
  :job_id,
@@ -9310,7 +9557,8 @@ module Aws::IoT
9310
9557
  :completed_at,
9311
9558
  :job_process_details,
9312
9559
  :timeout_config,
9313
- :namespace_id)
9560
+ :namespace_id,
9561
+ :job_template_arn)
9314
9562
  SENSITIVE = []
9315
9563
  include Aws::Structure
9316
9564
  end
@@ -9620,6 +9868,34 @@ module Aws::IoT
9620
9868
  include Aws::Structure
9621
9869
  end
9622
9870
 
9871
+ # An object that contains information about the job template.
9872
+ #
9873
+ # @!attribute [rw] job_template_arn
9874
+ # The ARN of the job template.
9875
+ # @return [String]
9876
+ #
9877
+ # @!attribute [rw] job_template_id
9878
+ # The unique identifier of the job template.
9879
+ # @return [String]
9880
+ #
9881
+ # @!attribute [rw] description
9882
+ # A description of the job template.
9883
+ # @return [String]
9884
+ #
9885
+ # @!attribute [rw] created_at
9886
+ # The time, in seconds since the epoch, when the job template was
9887
+ # created.
9888
+ # @return [Time]
9889
+ #
9890
+ class JobTemplateSummary < Struct.new(
9891
+ :job_template_arn,
9892
+ :job_template_id,
9893
+ :description,
9894
+ :created_at)
9895
+ SENSITIVE = []
9896
+ include Aws::Structure
9897
+ end
9898
+
9623
9899
  # Send messages to an Amazon Managed Streaming for Apache Kafka (Amazon
9624
9900
  # MSK) or self-managed Apache Kafka cluster.
9625
9901
  #
@@ -10913,6 +11189,45 @@ module Aws::IoT
10913
11189
  include Aws::Structure
10914
11190
  end
10915
11191
 
11192
+ # @note When making an API call, you may pass ListJobTemplatesRequest
11193
+ # data as a hash:
11194
+ #
11195
+ # {
11196
+ # max_results: 1,
11197
+ # next_token: "NextToken",
11198
+ # }
11199
+ #
11200
+ # @!attribute [rw] max_results
11201
+ # The maximum number of results to return in the list.
11202
+ # @return [Integer]
11203
+ #
11204
+ # @!attribute [rw] next_token
11205
+ # The token to use to return the next set of results in the list.
11206
+ # @return [String]
11207
+ #
11208
+ class ListJobTemplatesRequest < Struct.new(
11209
+ :max_results,
11210
+ :next_token)
11211
+ SENSITIVE = []
11212
+ include Aws::Structure
11213
+ end
11214
+
11215
+ # @!attribute [rw] job_templates
11216
+ # A list of objects that contain information about the job templates.
11217
+ # @return [Array<Types::JobTemplateSummary>]
11218
+ #
11219
+ # @!attribute [rw] next_token
11220
+ # The token for the next set of results, or **null** if there are no
11221
+ # additional results.
11222
+ # @return [String]
11223
+ #
11224
+ class ListJobTemplatesResponse < Struct.new(
11225
+ :job_templates,
11226
+ :next_token)
11227
+ SENSITIVE = []
11228
+ include Aws::Structure
11229
+ end
11230
+
10916
11231
  # @note When making an API call, you may pass ListJobsRequest
10917
11232
  # data as a hash:
10918
11233
  #
@@ -12258,6 +12573,7 @@ module Aws::IoT
12258
12573
  # attribute_name: "AttributeName",
12259
12574
  # attribute_value: "AttributeValue",
12260
12575
  # thing_type_name: "ThingTypeName",
12576
+ # use_prefix_attribute_value: false,
12261
12577
  # }
12262
12578
  #
12263
12579
  # @!attribute [rw] next_token
@@ -12282,12 +12598,22 @@ module Aws::IoT
12282
12598
  # The name of the thing type used to search for things.
12283
12599
  # @return [String]
12284
12600
  #
12601
+ # @!attribute [rw] use_prefix_attribute_value
12602
+ # When `true`, the action returns the thing resources with attribute
12603
+ # values that start with the `attributeValue` provided.
12604
+ #
12605
+ # When `false`, or not present, the action returns only the thing
12606
+ # resources with attribute values that match the entire
12607
+ # `attributeValue` provided.
12608
+ # @return [Boolean]
12609
+ #
12285
12610
  class ListThingsRequest < Struct.new(
12286
12611
  :next_token,
12287
12612
  :max_results,
12288
12613
  :attribute_name,
12289
12614
  :attribute_value,
12290
- :thing_type_name)
12615
+ :thing_type_name,
12616
+ :use_prefix_attribute_value)
12291
12617
  SENSITIVE = []
12292
12618
  include Aws::Structure
12293
12619
  end