aws-sdk-iot 1.66.0 → 1.70.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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