aws-sdk-iotdataplane 1.79.0 → 1.80.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: 98cd47a248ac578bdbd5a6056ce5629497ec220f016769294f818e9f758e7a84
4
- data.tar.gz: b7cf18ba090495f288b6bbef90336360dfcdaea73990b87ac3e1ef0fa3a64102
3
+ metadata.gz: 5483d15aba15eb2cbd11416e7bfa79ca6c633e637cca375ca88f37481f854449
4
+ data.tar.gz: 0420e31ade9345254362693c7b9290e80eb70d75f93971db7d647aef200113d8
5
5
  SHA512:
6
- metadata.gz: 126a658b91caaceddd64630cf2855c9421c18b6b39db5d37cd0bd02aad41b2330219064ff8e1ca68c6708dec8883ce5e6937c66b683de0834937e229779ce445
7
- data.tar.gz: 02ae286e5aa734d24aa012baceaa16def83771da35bd4953ec4a55027c6168b9efd7540d429fa671893875a61dc7f53ad8156a93e6ab505b68aacee5b4852840
6
+ metadata.gz: 2a32981721ee3a88c3cda9a92c3fc3272090e638bfe0be1a24d0467112fb306e694b9ef52dc5bda30507c0478505cd539661d3126578facfc74e9264175b6ebc
7
+ data.tar.gz: 40bf7389b2fb3ee563eb7f63e98ba0a528343da43eecddcf7edd364acc8c807a7f16aa782e4cf143b726324e3abf6982732e9d774e38619ab388c23b5578887f
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.80.0 (2025-08-08)
5
+ ------------------
6
+
7
+ * Feature - Adding DeleteConnection API to IoT Data Plane
8
+
4
9
  1.79.0 (2025-08-04)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.79.0
1
+ 1.80.0
@@ -476,6 +476,45 @@ module Aws::IoTDataPlane
476
476
 
477
477
  # @!group API Operations
478
478
 
479
+ # Disconnects a connected MQTT client from Amazon Web Services IoT Core.
480
+ # When you disconnect a client, Amazon Web Services IoT Core closes the
481
+ # client's network connection and optionally cleans the session state.
482
+ #
483
+ # @option params [required, String] :client_id
484
+ # The unique identifier of the MQTT client to disconnect. The client ID
485
+ # can't start with a dollar sign ($).
486
+ #
487
+ # @option params [Boolean] :clean_session
488
+ # Specifies whether to remove the client's session state when
489
+ # disconnecting. Set to `TRUE` to delete all session information,
490
+ # including subscriptions and queued messages. Set to `FALSE` to
491
+ # preserve the session state. By default, this is set to `FALSE`
492
+ # (preserves the session state).
493
+ #
494
+ # @option params [Boolean] :prevent_will_message
495
+ # Controls if Amazon Web Services IoT Core publishes the client's Last
496
+ # Will and Testament (LWT) message upon disconnection. Set to `TRUE` to
497
+ # prevent publishing the LWT message. Set to `FALSE` to allow
498
+ # publishing. By default, this is set to `FALSE` (allows publishing the
499
+ # LWT message).
500
+ #
501
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
502
+ #
503
+ # @example Request syntax with placeholder values
504
+ #
505
+ # resp = client.delete_connection({
506
+ # client_id: "ClientId", # required
507
+ # clean_session: false,
508
+ # prevent_will_message: false,
509
+ # })
510
+ #
511
+ # @overload delete_connection(params = {})
512
+ # @param [Hash] params ({})
513
+ def delete_connection(params = {}, options = {})
514
+ req = build_request(:delete_connection, params)
515
+ req.send_request(options)
516
+ end
517
+
479
518
  # Deletes the shadow for the specified thing.
480
519
  #
481
520
  # Requires permission to access the [DeleteThingShadow][1] action.
@@ -530,7 +569,7 @@ module Aws::IoTDataPlane
530
569
  #
531
570
  #
532
571
  # [1]: https://docs.aws.amazon.com/iot/latest/apireference/API_iotdata_ListRetainedMessages.html
533
- # [2]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotfleethubfordevicemanagement.html#awsiotfleethubfordevicemanagement-actions-as-permissions
572
+ # [2]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html
534
573
  # [3]: http://aws.amazon.com/iot-core/pricing/#Messaging
535
574
  #
536
575
  # @option params [required, String] :topic
@@ -669,7 +708,7 @@ module Aws::IoTDataPlane
669
708
  #
670
709
  #
671
710
  # [1]: https://docs.aws.amazon.com/iot/latest/apireference/API_iotdata_GetRetainedMessage.html
672
- # [2]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotfleethubfordevicemanagement.html#awsiotfleethubfordevicemanagement-actions-as-permissions
711
+ # [2]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html
673
712
  # [3]: http://aws.amazon.com/iot-core/pricing/#Messaging
674
713
  #
675
714
  # @option params [String] :next_token
@@ -883,7 +922,7 @@ module Aws::IoTDataPlane
883
922
  tracer: tracer
884
923
  )
885
924
  context[:gem_name] = 'aws-sdk-iotdataplane'
886
- context[:gem_version] = '1.79.0'
925
+ context[:gem_version] = '1.80.0'
887
926
  Seahorse::Client::Request.new(handlers, context)
888
927
  end
889
928
 
@@ -14,11 +14,15 @@ module Aws::IoTDataPlane
14
14
 
15
15
  include Seahorse::Model
16
16
 
17
+ CleanSession = Shapes::BooleanShape.new(name: 'CleanSession')
18
+ ClientId = Shapes::StringShape.new(name: 'ClientId')
17
19
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
18
20
  ContentType = Shapes::StringShape.new(name: 'ContentType')
19
21
  CorrelationData = Shapes::StringShape.new(name: 'CorrelationData')
22
+ DeleteConnectionRequest = Shapes::StructureShape.new(name: 'DeleteConnectionRequest')
20
23
  DeleteThingShadowRequest = Shapes::StructureShape.new(name: 'DeleteThingShadowRequest')
21
24
  DeleteThingShadowResponse = Shapes::StructureShape.new(name: 'DeleteThingShadowResponse')
25
+ ForbiddenException = Shapes::StructureShape.new(name: 'ForbiddenException')
22
26
  GetRetainedMessageRequest = Shapes::StructureShape.new(name: 'GetRetainedMessageRequest')
23
27
  GetRetainedMessageResponse = Shapes::StructureShape.new(name: 'GetRetainedMessageResponse')
24
28
  GetThingShadowRequest = Shapes::StructureShape.new(name: 'GetThingShadowRequest')
@@ -39,6 +43,7 @@ module Aws::IoTDataPlane
39
43
  Payload = Shapes::BlobShape.new(name: 'Payload')
40
44
  PayloadFormatIndicator = Shapes::StringShape.new(name: 'PayloadFormatIndicator')
41
45
  PayloadSize = Shapes::IntegerShape.new(name: 'PayloadSize')
46
+ PreventWillMessage = Shapes::BooleanShape.new(name: 'PreventWillMessage')
42
47
  PublishRequest = Shapes::StructureShape.new(name: 'PublishRequest')
43
48
  Qos = Shapes::IntegerShape.new(name: 'Qos')
44
49
  RequestEntityTooLargeException = Shapes::StructureShape.new(name: 'RequestEntityTooLargeException')
@@ -64,6 +69,11 @@ module Aws::IoTDataPlane
64
69
  ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
65
70
  ConflictException.struct_class = Types::ConflictException
66
71
 
72
+ DeleteConnectionRequest.add_member(:client_id, Shapes::ShapeRef.new(shape: ClientId, required: true, location: "uri", location_name: "clientId"))
73
+ DeleteConnectionRequest.add_member(:clean_session, Shapes::ShapeRef.new(shape: CleanSession, location: "querystring", location_name: "cleanSession"))
74
+ DeleteConnectionRequest.add_member(:prevent_will_message, Shapes::ShapeRef.new(shape: PreventWillMessage, location: "querystring", location_name: "preventWillMessage"))
75
+ DeleteConnectionRequest.struct_class = Types::DeleteConnectionRequest
76
+
67
77
  DeleteThingShadowRequest.add_member(:thing_name, Shapes::ShapeRef.new(shape: ThingName, required: true, location: "uri", location_name: "thingName"))
68
78
  DeleteThingShadowRequest.add_member(:shadow_name, Shapes::ShapeRef.new(shape: ShadowName, location: "querystring", location_name: "name"))
69
79
  DeleteThingShadowRequest.struct_class = Types::DeleteThingShadowRequest
@@ -73,6 +83,9 @@ module Aws::IoTDataPlane
73
83
  DeleteThingShadowResponse[:payload] = :payload
74
84
  DeleteThingShadowResponse[:payload_member] = DeleteThingShadowResponse.member(:payload)
75
85
 
86
+ ForbiddenException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
87
+ ForbiddenException.struct_class = Types::ForbiddenException
88
+
76
89
  GetRetainedMessageRequest.add_member(:topic, Shapes::ShapeRef.new(shape: Topic, required: true, location: "uri", location_name: "topic"))
77
90
  GetRetainedMessageRequest.struct_class = Types::GetRetainedMessageRequest
78
91
 
@@ -192,6 +205,19 @@ module Aws::IoTDataPlane
192
205
  "uid" => "iot-data-2015-05-28",
193
206
  }
194
207
 
208
+ api.add_operation(:delete_connection, Seahorse::Model::Operation.new.tap do |o|
209
+ o.name = "DeleteConnection"
210
+ o.http_method = "DELETE"
211
+ o.http_request_uri = "/connections/{clientId}"
212
+ o.input = Shapes::ShapeRef.new(shape: DeleteConnectionRequest)
213
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
214
+ o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
215
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
216
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
217
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
218
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
219
+ end)
220
+
195
221
  api.add_operation(:delete_thing_shadow, Seahorse::Model::Operation.new.tap do |o|
196
222
  o.name = "DeleteThingShadow"
197
223
  o.http_method = "DELETE"
@@ -28,6 +28,7 @@ module Aws::IoTDataPlane
28
28
  #
29
29
  # ## Error Classes
30
30
  # * {ConflictException}
31
+ # * {ForbiddenException}
31
32
  # * {InternalFailureException}
32
33
  # * {InvalidRequestException}
33
34
  # * {MethodNotAllowedException}
@@ -59,6 +60,21 @@ module Aws::IoTDataPlane
59
60
  end
60
61
  end
61
62
 
63
+ class ForbiddenException < ServiceError
64
+
65
+ # @param [Seahorse::Client::RequestContext] context
66
+ # @param [String] message
67
+ # @param [Aws::IoTDataPlane::Types::ForbiddenException] 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
+ end
77
+
62
78
  class InternalFailureException < ServiceError
63
79
 
64
80
  # @param [Seahorse::Client::RequestContext] context
@@ -22,6 +22,35 @@ module Aws::IoTDataPlane
22
22
  include Aws::Structure
23
23
  end
24
24
 
25
+ # @!attribute [rw] client_id
26
+ # The unique identifier of the MQTT client to disconnect. The client
27
+ # ID can't start with a dollar sign ($).
28
+ # @return [String]
29
+ #
30
+ # @!attribute [rw] clean_session
31
+ # Specifies whether to remove the client's session state when
32
+ # disconnecting. Set to `TRUE` to delete all session information,
33
+ # including subscriptions and queued messages. Set to `FALSE` to
34
+ # preserve the session state. By default, this is set to `FALSE`
35
+ # (preserves the session state).
36
+ # @return [Boolean]
37
+ #
38
+ # @!attribute [rw] prevent_will_message
39
+ # Controls if Amazon Web Services IoT Core publishes the client's
40
+ # Last Will and Testament (LWT) message upon disconnection. Set to
41
+ # `TRUE` to prevent publishing the LWT message. Set to `FALSE` to
42
+ # allow publishing. By default, this is set to `FALSE` (allows
43
+ # publishing the LWT message).
44
+ # @return [Boolean]
45
+ #
46
+ class DeleteConnectionRequest < Struct.new(
47
+ :client_id,
48
+ :clean_session,
49
+ :prevent_will_message)
50
+ SENSITIVE = []
51
+ include Aws::Structure
52
+ end
53
+
25
54
  # The input for the DeleteThingShadow operation.
26
55
  #
27
56
  # @!attribute [rw] thing_name
@@ -51,6 +80,17 @@ module Aws::IoTDataPlane
51
80
  include Aws::Structure
52
81
  end
53
82
 
83
+ # The caller isn't authorized to make the request.
84
+ #
85
+ # @!attribute [rw] message
86
+ # @return [String]
87
+ #
88
+ class ForbiddenException < Struct.new(
89
+ :message)
90
+ SENSITIVE = []
91
+ include Aws::Structure
92
+ end
93
+
54
94
  # The input for the GetRetainedMessage operation.
55
95
  #
56
96
  # @!attribute [rw] topic
@@ -23,7 +23,7 @@ Aws::Plugins::GlobalConfiguration.add_identifier(:iotdataplane)
23
23
  # structure.
24
24
  #
25
25
  # io_t_data_plane = Aws::IoTDataPlane::Client.new
26
- # resp = io_t_data_plane.delete_thing_shadow(params)
26
+ # resp = io_t_data_plane.delete_connection(params)
27
27
  #
28
28
  # See {Client} for more information.
29
29
  #
@@ -54,7 +54,7 @@ module Aws::IoTDataPlane
54
54
  autoload :EndpointProvider, 'aws-sdk-iotdataplane/endpoint_provider'
55
55
  autoload :Endpoints, 'aws-sdk-iotdataplane/endpoints'
56
56
 
57
- GEM_VERSION = '1.79.0'
57
+ GEM_VERSION = '1.80.0'
58
58
 
59
59
  end
60
60
 
data/sig/client.rbs CHANGED
@@ -78,6 +78,14 @@ module Aws
78
78
  | (?Hash[Symbol, untyped]) -> instance
79
79
 
80
80
 
81
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/IoTDataPlane/Client.html#delete_connection-instance_method
82
+ def delete_connection: (
83
+ client_id: ::String,
84
+ ?clean_session: bool,
85
+ ?prevent_will_message: bool
86
+ ) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
87
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
88
+
81
89
  interface _DeleteThingShadowResponseSuccess
82
90
  include ::Seahorse::Client::_ResponseSuccess[Types::DeleteThingShadowResponse]
83
91
  def payload: () -> ::String
data/sig/errors.rbs CHANGED
@@ -14,6 +14,9 @@ module Aws
14
14
  class ConflictException < ::Aws::Errors::ServiceError
15
15
  def message: () -> ::String
16
16
  end
17
+ class ForbiddenException < ::Aws::Errors::ServiceError
18
+ def message: () -> ::String
19
+ end
17
20
  class InternalFailureException < ::Aws::Errors::ServiceError
18
21
  def message: () -> ::String
19
22
  end
data/sig/types.rbs CHANGED
@@ -13,6 +13,13 @@ module Aws::IoTDataPlane
13
13
  SENSITIVE: []
14
14
  end
15
15
 
16
+ class DeleteConnectionRequest
17
+ attr_accessor client_id: ::String
18
+ attr_accessor clean_session: bool
19
+ attr_accessor prevent_will_message: bool
20
+ SENSITIVE: []
21
+ end
22
+
16
23
  class DeleteThingShadowRequest
17
24
  attr_accessor thing_name: ::String
18
25
  attr_accessor shadow_name: ::String
@@ -24,6 +31,11 @@ module Aws::IoTDataPlane
24
31
  SENSITIVE: []
25
32
  end
26
33
 
34
+ class ForbiddenException
35
+ attr_accessor message: ::String
36
+ SENSITIVE: []
37
+ end
38
+
27
39
  class GetRetainedMessageRequest
28
40
  attr_accessor topic: ::String
29
41
  SENSITIVE: []
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-iotdataplane
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.79.0
4
+ version: 1.80.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services