aws-sdk-greengrassv2 1.13.0 → 1.14.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bd0c9f05869f2e1a014f844a8fb97439755569b60664b7ddb15885e129ab7ff7
4
- data.tar.gz: 172dc61e318b5a64d5694ce7c362e3dd4bbd4642d79f90c63e94ef866ff8775f
3
+ metadata.gz: 41307ecf4c587a44d027b8c3880d2065787baeeaf3f92d2b3a1aa758ddd189c9
4
+ data.tar.gz: ac01298f87cce86f2e93eacaac428b023a10d108adc2a5d6fafee4d3a0f91fe8
5
5
  SHA512:
6
- metadata.gz: 312ae079486de60232bea1aeffefa4a90b0620a039b0f6161fdd480df4bdb3dc53fdecab7e7cb8427a9e7c549b3e0776b257fc7a1940b16d62c3dc97dbe0dbd3
7
- data.tar.gz: 188eded5009f6b7f60b3dee69d146f6524d4e525c365d7e3399c227aec3a20b8bc842480a1fde401998a50026a6e5f4b2b00f599b167ac9a4bd102754b094fc5
6
+ metadata.gz: ea775f81ade890b01f74b9492a622188d9a21081f713acd838ada2bfa78281a66c0d7e205f2065e85a39db73af202ddcf275a702d4f329d854c02b111a7bbfa7
7
+ data.tar.gz: 88390025c82ebe0578d8efb8cf1827850e58da46496648ab73d268074174e1d1979f0c870b430365f8851f13afb4d1ff1be14789d7a2b703f11bf2d8801af7cf
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.14.0 (2022-01-03)
5
+ ------------------
6
+
7
+ * Feature - This release adds the API operations to manage the Greengrass role associated with your account and to manage the core device connectivity information. Greengrass V2 customers can now depend solely on Greengrass V2 SDK for all the API operations needed to manage their fleets.
8
+
4
9
  1.13.0 (2021-12-21)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.13.0
1
+ 1.14.0
@@ -347,7 +347,49 @@ module Aws::GreengrassV2
347
347
 
348
348
  # @!group API Operations
349
349
 
350
- # Associate a list of client devices with a core device. Use this API
350
+ # Associates a Greengrass service role with IoT Greengrass for your
351
+ # Amazon Web Services account in this Amazon Web Services Region. IoT
352
+ # Greengrass uses this role to verify the identity of client devices and
353
+ # manage core device connectivity information. The role must include the
354
+ # [AWSGreengrassResourceAccessRolePolicy][1] managed policy or a custom
355
+ # policy that defines equivalent permissions for the IoT Greengrass
356
+ # features that you use. For more information, see [Greengrass service
357
+ # role][2] in the *IoT Greengrass Version 2 Developer Guide*.
358
+ #
359
+ #
360
+ #
361
+ # [1]: https://console.aws.amazon.com/iam/home#/policies/arn:awsiam::aws:policy/service-role/AWSGreengrassResourceAccessRolePolicy
362
+ # [2]: https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-service-role.html
363
+ #
364
+ # @option params [required, String] :role_arn
365
+ # The Amazon Resource Name (ARN) of the service role to associate with
366
+ # IoT Greengrass for your Amazon Web Services account in this Amazon Web
367
+ # Services Region.
368
+ #
369
+ # @return [Types::AssociateServiceRoleToAccountResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
370
+ #
371
+ # * {Types::AssociateServiceRoleToAccountResponse#associated_at #associated_at} => String
372
+ #
373
+ # @example Request syntax with placeholder values
374
+ #
375
+ # resp = client.associate_service_role_to_account({
376
+ # role_arn: "String", # required
377
+ # })
378
+ #
379
+ # @example Response structure
380
+ #
381
+ # resp.associated_at #=> String
382
+ #
383
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/AssociateServiceRoleToAccount AWS API Documentation
384
+ #
385
+ # @overload associate_service_role_to_account(params = {})
386
+ # @param [Hash] params ({})
387
+ def associate_service_role_to_account(params = {}, options = {})
388
+ req = build_request(:associate_service_role_to_account, params)
389
+ req.send_request(options)
390
+ end
391
+
392
+ # Associates a list of client devices with a core device. Use this API
351
393
  # operation to specify which client devices can discover a core device
352
394
  # through cloud discovery. With cloud discovery, client devices connect
353
395
  # to IoT Greengrass to retrieve associated core devices' connectivity
@@ -405,7 +447,7 @@ module Aws::GreengrassV2
405
447
  req.send_request(options)
406
448
  end
407
449
 
408
- # Disassociate a list of client devices from a core device. After you
450
+ # Disassociates a list of client devices from a core device. After you
409
451
  # disassociate a client device from a core device, the client device
410
452
  # won't be able to use cloud discovery to retrieve the core device's
411
453
  # connectivity information and certificates.
@@ -935,6 +977,34 @@ module Aws::GreengrassV2
935
977
  req.send_request(options)
936
978
  end
937
979
 
980
+ # Disassociates the Greengrass service role from IoT Greengrass for your
981
+ # Amazon Web Services account in this Amazon Web Services Region.
982
+ # Without a service role, IoT Greengrass can't verify the identity of
983
+ # client devices or manage core device connectivity information. For
984
+ # more information, see [Greengrass service role][1] in the *IoT
985
+ # Greengrass Version 2 Developer Guide*.
986
+ #
987
+ #
988
+ #
989
+ # [1]: https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-service-role.html
990
+ #
991
+ # @return [Types::DisassociateServiceRoleFromAccountResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
992
+ #
993
+ # * {Types::DisassociateServiceRoleFromAccountResponse#disassociated_at #disassociated_at} => String
994
+ #
995
+ # @example Response structure
996
+ #
997
+ # resp.disassociated_at #=> String
998
+ #
999
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/DisassociateServiceRoleFromAccount AWS API Documentation
1000
+ #
1001
+ # @overload disassociate_service_role_from_account(params = {})
1002
+ # @param [Hash] params ({})
1003
+ def disassociate_service_role_from_account(params = {}, options = {})
1004
+ req = build_request(:disassociate_service_role_from_account, params)
1005
+ req.send_request(options)
1006
+ end
1007
+
938
1008
  # Gets the recipe for a version of a component. Core devices can call
939
1009
  # this operation to identify the artifacts and requirements to install a
940
1010
  # component.
@@ -1027,6 +1097,53 @@ module Aws::GreengrassV2
1027
1097
  req.send_request(options)
1028
1098
  end
1029
1099
 
1100
+ # Retrieves connectivity information for a Greengrass core device.
1101
+ #
1102
+ # Connectivity information includes endpoints and ports where client
1103
+ # devices can connect to an MQTT broker on the core device. When a
1104
+ # client device calls the [Greengrass discovery API][1], IoT Greengrass
1105
+ # returns connectivity information for all of the core devices where the
1106
+ # client device can connect. For more information, see [Connect client
1107
+ # devices to core devices][2] in the *IoT Greengrass Version 2 Developer
1108
+ # Guide*.
1109
+ #
1110
+ #
1111
+ #
1112
+ # [1]: https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-discover-api.html
1113
+ # [2]: https://docs.aws.amazon.com/greengrass/v2/developerguide/connect-client-devices.html
1114
+ #
1115
+ # @option params [required, String] :thing_name
1116
+ # The name of the core device. This is also the name of the IoT thing.
1117
+ #
1118
+ # @return [Types::GetConnectivityInfoResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1119
+ #
1120
+ # * {Types::GetConnectivityInfoResponse#connectivity_info #connectivity_info} => Array<Types::ConnectivityInfo>
1121
+ # * {Types::GetConnectivityInfoResponse#message #message} => String
1122
+ #
1123
+ # @example Request syntax with placeholder values
1124
+ #
1125
+ # resp = client.get_connectivity_info({
1126
+ # thing_name: "CoreDeviceThingName", # required
1127
+ # })
1128
+ #
1129
+ # @example Response structure
1130
+ #
1131
+ # resp.connectivity_info #=> Array
1132
+ # resp.connectivity_info[0].id #=> String
1133
+ # resp.connectivity_info[0].host_address #=> String
1134
+ # resp.connectivity_info[0].port_number #=> Integer
1135
+ # resp.connectivity_info[0].metadata #=> String
1136
+ # resp.message #=> String
1137
+ #
1138
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/GetConnectivityInfo AWS API Documentation
1139
+ #
1140
+ # @overload get_connectivity_info(params = {})
1141
+ # @param [Hash] params ({})
1142
+ def get_connectivity_info(params = {}, options = {})
1143
+ req = build_request(:get_connectivity_info, params)
1144
+ req.send_request(options)
1145
+ end
1146
+
1030
1147
  # Retrieves metadata for a Greengrass core device.
1031
1148
  #
1032
1149
  # @option params [required, String] :core_device_thing_name
@@ -1143,6 +1260,36 @@ module Aws::GreengrassV2
1143
1260
  req.send_request(options)
1144
1261
  end
1145
1262
 
1263
+ # Gets the service role associated with IoT Greengrass for your Amazon
1264
+ # Web Services account in this Amazon Web Services Region. IoT
1265
+ # Greengrass uses this role to verify the identity of client devices and
1266
+ # manage core device connectivity information. For more information, see
1267
+ # [Greengrass service role][1] in the *IoT Greengrass Version 2
1268
+ # Developer Guide*.
1269
+ #
1270
+ #
1271
+ #
1272
+ # [1]: https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-service-role.html
1273
+ #
1274
+ # @return [Types::GetServiceRoleForAccountResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1275
+ #
1276
+ # * {Types::GetServiceRoleForAccountResponse#associated_at #associated_at} => String
1277
+ # * {Types::GetServiceRoleForAccountResponse#role_arn #role_arn} => String
1278
+ #
1279
+ # @example Response structure
1280
+ #
1281
+ # resp.associated_at #=> String
1282
+ # resp.role_arn #=> String
1283
+ #
1284
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/GetServiceRoleForAccount AWS API Documentation
1285
+ #
1286
+ # @overload get_service_role_for_account(params = {})
1287
+ # @param [Hash] params ({})
1288
+ def get_service_role_for_account(params = {}, options = {})
1289
+ req = build_request(:get_service_role_for_account, params)
1290
+ req.send_request(options)
1291
+ end
1292
+
1146
1293
  # Retrieves a paginated list of client devices that are associated with
1147
1294
  # a core device.
1148
1295
  #
@@ -1683,6 +1830,60 @@ module Aws::GreengrassV2
1683
1830
  req.send_request(options)
1684
1831
  end
1685
1832
 
1833
+ # Updates connectivity information for a Greengrass core device.
1834
+ #
1835
+ # Connectivity information includes endpoints and ports where client
1836
+ # devices can connect to an MQTT broker on the core device. When a
1837
+ # client device calls the [Greengrass discovery API][1], IoT Greengrass
1838
+ # returns connectivity information for all of the core devices where the
1839
+ # client device can connect. For more information, see [Connect client
1840
+ # devices to core devices][2] in the *IoT Greengrass Version 2 Developer
1841
+ # Guide*.
1842
+ #
1843
+ #
1844
+ #
1845
+ # [1]: https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-discover-api.html
1846
+ # [2]: https://docs.aws.amazon.com/greengrass/v2/developerguide/connect-client-devices.html
1847
+ #
1848
+ # @option params [required, String] :thing_name
1849
+ # The name of the core device. This is also the name of the IoT thing.
1850
+ #
1851
+ # @option params [required, Array<Types::ConnectivityInfo>] :connectivity_info
1852
+ # The connectivity information for the core device.
1853
+ #
1854
+ # @return [Types::UpdateConnectivityInfoResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1855
+ #
1856
+ # * {Types::UpdateConnectivityInfoResponse#version #version} => String
1857
+ # * {Types::UpdateConnectivityInfoResponse#message #message} => String
1858
+ #
1859
+ # @example Request syntax with placeholder values
1860
+ #
1861
+ # resp = client.update_connectivity_info({
1862
+ # thing_name: "CoreDeviceThingName", # required
1863
+ # connectivity_info: [ # required
1864
+ # {
1865
+ # id: "String",
1866
+ # host_address: "String",
1867
+ # port_number: 1,
1868
+ # metadata: "String",
1869
+ # },
1870
+ # ],
1871
+ # })
1872
+ #
1873
+ # @example Response structure
1874
+ #
1875
+ # resp.version #=> String
1876
+ # resp.message #=> String
1877
+ #
1878
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/UpdateConnectivityInfo AWS API Documentation
1879
+ #
1880
+ # @overload update_connectivity_info(params = {})
1881
+ # @param [Hash] params ({})
1882
+ def update_connectivity_info(params = {}, options = {})
1883
+ req = build_request(:update_connectivity_info, params)
1884
+ req.send_request(options)
1885
+ end
1886
+
1686
1887
  # @!endgroup
1687
1888
 
1688
1889
  # @param params ({})
@@ -1696,7 +1897,7 @@ module Aws::GreengrassV2
1696
1897
  params: params,
1697
1898
  config: config)
1698
1899
  context[:gem_name] = 'aws-sdk-greengrassv2'
1699
- context[:gem_version] = '1.13.0'
1900
+ context[:gem_version] = '1.14.0'
1700
1901
  Seahorse::Client::Request.new(handlers, context)
1701
1902
  end
1702
1903
 
@@ -18,6 +18,8 @@ module Aws::GreengrassV2
18
18
  AssociateClientDeviceWithCoreDeviceEntryList = Shapes::ListShape.new(name: 'AssociateClientDeviceWithCoreDeviceEntryList')
19
19
  AssociateClientDeviceWithCoreDeviceErrorEntry = Shapes::StructureShape.new(name: 'AssociateClientDeviceWithCoreDeviceErrorEntry')
20
20
  AssociateClientDeviceWithCoreDeviceErrorList = Shapes::ListShape.new(name: 'AssociateClientDeviceWithCoreDeviceErrorList')
21
+ AssociateServiceRoleToAccountRequest = Shapes::StructureShape.new(name: 'AssociateServiceRoleToAccountRequest')
22
+ AssociateServiceRoleToAccountResponse = Shapes::StructureShape.new(name: 'AssociateServiceRoleToAccountResponse')
21
23
  AssociatedClientDevice = Shapes::StructureShape.new(name: 'AssociatedClientDevice')
22
24
  AssociatedClientDeviceList = Shapes::ListShape.new(name: 'AssociatedClientDeviceList')
23
25
  BatchAssociateClientDeviceWithCoreDeviceRequest = Shapes::StructureShape.new(name: 'BatchAssociateClientDeviceWithCoreDeviceRequest')
@@ -56,6 +58,7 @@ module Aws::GreengrassV2
56
58
  ComponentVersionString = Shapes::StringShape.new(name: 'ComponentVersionString')
57
59
  ComponentVisibilityScope = Shapes::StringShape.new(name: 'ComponentVisibilityScope')
58
60
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
61
+ ConnectivityInfo = Shapes::StructureShape.new(name: 'ConnectivityInfo')
59
62
  CoreDevice = Shapes::StructureShape.new(name: 'CoreDevice')
60
63
  CoreDeviceArchitectureString = Shapes::StringShape.new(name: 'CoreDeviceArchitectureString')
61
64
  CoreDevicePlatformString = Shapes::StringShape.new(name: 'CoreDevicePlatformString')
@@ -89,6 +92,8 @@ module Aws::GreengrassV2
89
92
  DisassociateClientDeviceFromCoreDeviceEntryList = Shapes::ListShape.new(name: 'DisassociateClientDeviceFromCoreDeviceEntryList')
90
93
  DisassociateClientDeviceFromCoreDeviceErrorEntry = Shapes::StructureShape.new(name: 'DisassociateClientDeviceFromCoreDeviceErrorEntry')
91
94
  DisassociateClientDeviceFromCoreDeviceErrorList = Shapes::ListShape.new(name: 'DisassociateClientDeviceFromCoreDeviceErrorList')
95
+ DisassociateServiceRoleFromAccountRequest = Shapes::StructureShape.new(name: 'DisassociateServiceRoleFromAccountRequest')
96
+ DisassociateServiceRoleFromAccountResponse = Shapes::StructureShape.new(name: 'DisassociateServiceRoleFromAccountResponse')
92
97
  EffectiveDeployment = Shapes::StructureShape.new(name: 'EffectiveDeployment')
93
98
  EffectiveDeploymentExecutionStatus = Shapes::StringShape.new(name: 'EffectiveDeploymentExecutionStatus')
94
99
  EffectiveDeploymentsList = Shapes::ListShape.new(name: 'EffectiveDeploymentsList')
@@ -99,10 +104,14 @@ module Aws::GreengrassV2
99
104
  GetComponentResponse = Shapes::StructureShape.new(name: 'GetComponentResponse')
100
105
  GetComponentVersionArtifactRequest = Shapes::StructureShape.new(name: 'GetComponentVersionArtifactRequest')
101
106
  GetComponentVersionArtifactResponse = Shapes::StructureShape.new(name: 'GetComponentVersionArtifactResponse')
107
+ GetConnectivityInfoRequest = Shapes::StructureShape.new(name: 'GetConnectivityInfoRequest')
108
+ GetConnectivityInfoResponse = Shapes::StructureShape.new(name: 'GetConnectivityInfoResponse')
102
109
  GetCoreDeviceRequest = Shapes::StructureShape.new(name: 'GetCoreDeviceRequest')
103
110
  GetCoreDeviceResponse = Shapes::StructureShape.new(name: 'GetCoreDeviceResponse')
104
111
  GetDeploymentRequest = Shapes::StructureShape.new(name: 'GetDeploymentRequest')
105
112
  GetDeploymentResponse = Shapes::StructureShape.new(name: 'GetDeploymentResponse')
113
+ GetServiceRoleForAccountRequest = Shapes::StructureShape.new(name: 'GetServiceRoleForAccountRequest')
114
+ GetServiceRoleForAccountResponse = Shapes::StructureShape.new(name: 'GetServiceRoleForAccountResponse')
106
115
  InstalledComponent = Shapes::StructureShape.new(name: 'InstalledComponent')
107
116
  InstalledComponentLifecycleState = Shapes::StringShape.new(name: 'InstalledComponentLifecycleState')
108
117
  InstalledComponentList = Shapes::ListShape.new(name: 'InstalledComponentList')
@@ -170,6 +179,7 @@ module Aws::GreengrassV2
170
179
  OptionalBoolean = Shapes::BooleanShape.new(name: 'OptionalBoolean')
171
180
  OptionalInteger = Shapes::IntegerShape.new(name: 'OptionalInteger')
172
181
  PlatformAttributesMap = Shapes::MapShape.new(name: 'PlatformAttributesMap')
182
+ PortNumberInt = Shapes::IntegerShape.new(name: 'PortNumberInt')
173
183
  PublisherString = Shapes::StringShape.new(name: 'PublisherString')
174
184
  Reason = Shapes::StringShape.new(name: 'Reason')
175
185
  RecipeBlob = Shapes::BlobShape.new(name: 'RecipeBlob')
@@ -198,10 +208,13 @@ module Aws::GreengrassV2
198
208
  TopicString = Shapes::StringShape.new(name: 'TopicString')
199
209
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
200
210
  UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
211
+ UpdateConnectivityInfoRequest = Shapes::StructureShape.new(name: 'UpdateConnectivityInfoRequest')
212
+ UpdateConnectivityInfoResponse = Shapes::StructureShape.new(name: 'UpdateConnectivityInfoResponse')
201
213
  ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
202
214
  ValidationExceptionField = Shapes::StructureShape.new(name: 'ValidationExceptionField')
203
215
  ValidationExceptionFieldList = Shapes::ListShape.new(name: 'ValidationExceptionFieldList')
204
216
  ValidationExceptionReason = Shapes::StringShape.new(name: 'ValidationExceptionReason')
217
+ connectivityInfoList = Shapes::ListShape.new(name: 'connectivityInfoList')
205
218
 
206
219
  AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
207
220
  AccessDeniedException.struct_class = Types::AccessDeniedException
@@ -218,6 +231,12 @@ module Aws::GreengrassV2
218
231
 
219
232
  AssociateClientDeviceWithCoreDeviceErrorList.member = Shapes::ShapeRef.new(shape: AssociateClientDeviceWithCoreDeviceErrorEntry)
220
233
 
234
+ AssociateServiceRoleToAccountRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: String, required: true, location_name: "RoleArn"))
235
+ AssociateServiceRoleToAccountRequest.struct_class = Types::AssociateServiceRoleToAccountRequest
236
+
237
+ AssociateServiceRoleToAccountResponse.add_member(:associated_at, Shapes::ShapeRef.new(shape: String, location_name: "AssociatedAt"))
238
+ AssociateServiceRoleToAccountResponse.struct_class = Types::AssociateServiceRoleToAccountResponse
239
+
221
240
  AssociatedClientDevice.add_member(:thing_name, Shapes::ShapeRef.new(shape: IoTThingName, location_name: "thingName"))
222
241
  AssociatedClientDevice.add_member(:association_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "associationTimestamp"))
223
242
  AssociatedClientDevice.struct_class = Types::AssociatedClientDevice
@@ -318,6 +337,12 @@ module Aws::GreengrassV2
318
337
  ConflictException.add_member(:resource_type, Shapes::ShapeRef.new(shape: String, required: true, location_name: "resourceType"))
319
338
  ConflictException.struct_class = Types::ConflictException
320
339
 
340
+ ConnectivityInfo.add_member(:id, Shapes::ShapeRef.new(shape: String, location_name: "Id"))
341
+ ConnectivityInfo.add_member(:host_address, Shapes::ShapeRef.new(shape: String, location_name: "HostAddress"))
342
+ ConnectivityInfo.add_member(:port_number, Shapes::ShapeRef.new(shape: PortNumberInt, location_name: "PortNumber"))
343
+ ConnectivityInfo.add_member(:metadata, Shapes::ShapeRef.new(shape: String, location_name: "Metadata"))
344
+ ConnectivityInfo.struct_class = Types::ConnectivityInfo
345
+
321
346
  CoreDevice.add_member(:core_device_thing_name, Shapes::ShapeRef.new(shape: CoreDeviceThingName, location_name: "coreDeviceThingName"))
322
347
  CoreDevice.add_member(:status, Shapes::ShapeRef.new(shape: CoreDeviceStatus, location_name: "status"))
323
348
  CoreDevice.add_member(:last_status_update_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "lastStatusUpdateTimestamp"))
@@ -412,6 +437,11 @@ module Aws::GreengrassV2
412
437
 
413
438
  DisassociateClientDeviceFromCoreDeviceErrorList.member = Shapes::ShapeRef.new(shape: DisassociateClientDeviceFromCoreDeviceErrorEntry)
414
439
 
440
+ DisassociateServiceRoleFromAccountRequest.struct_class = Types::DisassociateServiceRoleFromAccountRequest
441
+
442
+ DisassociateServiceRoleFromAccountResponse.add_member(:disassociated_at, Shapes::ShapeRef.new(shape: String, location_name: "DisassociatedAt"))
443
+ DisassociateServiceRoleFromAccountResponse.struct_class = Types::DisassociateServiceRoleFromAccountResponse
444
+
415
445
  EffectiveDeployment.add_member(:deployment_id, Shapes::ShapeRef.new(shape: DeploymentID, required: true, location_name: "deploymentId"))
416
446
  EffectiveDeployment.add_member(:deployment_name, Shapes::ShapeRef.new(shape: DeploymentName, required: true, location_name: "deploymentName"))
417
447
  EffectiveDeployment.add_member(:iot_job_id, Shapes::ShapeRef.new(shape: IoTJobId, location_name: "iotJobId"))
@@ -442,6 +472,13 @@ module Aws::GreengrassV2
442
472
  GetComponentVersionArtifactResponse.add_member(:pre_signed_url, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "preSignedUrl"))
443
473
  GetComponentVersionArtifactResponse.struct_class = Types::GetComponentVersionArtifactResponse
444
474
 
475
+ GetConnectivityInfoRequest.add_member(:thing_name, Shapes::ShapeRef.new(shape: CoreDeviceThingName, required: true, location: "uri", location_name: "thingName"))
476
+ GetConnectivityInfoRequest.struct_class = Types::GetConnectivityInfoRequest
477
+
478
+ GetConnectivityInfoResponse.add_member(:connectivity_info, Shapes::ShapeRef.new(shape: connectivityInfoList, location_name: "ConnectivityInfo"))
479
+ GetConnectivityInfoResponse.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
480
+ GetConnectivityInfoResponse.struct_class = Types::GetConnectivityInfoResponse
481
+
445
482
  GetCoreDeviceRequest.add_member(:core_device_thing_name, Shapes::ShapeRef.new(shape: CoreDeviceThingName, required: true, location: "uri", location_name: "coreDeviceThingName"))
446
483
  GetCoreDeviceRequest.struct_class = Types::GetCoreDeviceRequest
447
484
 
@@ -472,6 +509,12 @@ module Aws::GreengrassV2
472
509
  GetDeploymentResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
473
510
  GetDeploymentResponse.struct_class = Types::GetDeploymentResponse
474
511
 
512
+ GetServiceRoleForAccountRequest.struct_class = Types::GetServiceRoleForAccountRequest
513
+
514
+ GetServiceRoleForAccountResponse.add_member(:associated_at, Shapes::ShapeRef.new(shape: String, location_name: "AssociatedAt"))
515
+ GetServiceRoleForAccountResponse.add_member(:role_arn, Shapes::ShapeRef.new(shape: String, location_name: "RoleArn"))
516
+ GetServiceRoleForAccountResponse.struct_class = Types::GetServiceRoleForAccountResponse
517
+
475
518
  InstalledComponent.add_member(:component_name, Shapes::ShapeRef.new(shape: ComponentNameString, location_name: "componentName"))
476
519
  InstalledComponent.add_member(:component_version, Shapes::ShapeRef.new(shape: ComponentVersionString, location_name: "componentVersion"))
477
520
  InstalledComponent.add_member(:lifecycle_state, Shapes::ShapeRef.new(shape: InstalledComponentLifecycleState, location_name: "lifecycleState"))
@@ -703,6 +746,14 @@ module Aws::GreengrassV2
703
746
 
704
747
  UntagResourceResponse.struct_class = Types::UntagResourceResponse
705
748
 
749
+ UpdateConnectivityInfoRequest.add_member(:thing_name, Shapes::ShapeRef.new(shape: CoreDeviceThingName, required: true, location: "uri", location_name: "thingName"))
750
+ UpdateConnectivityInfoRequest.add_member(:connectivity_info, Shapes::ShapeRef.new(shape: connectivityInfoList, required: true, location_name: "ConnectivityInfo"))
751
+ UpdateConnectivityInfoRequest.struct_class = Types::UpdateConnectivityInfoRequest
752
+
753
+ UpdateConnectivityInfoResponse.add_member(:version, Shapes::ShapeRef.new(shape: String, location_name: "Version"))
754
+ UpdateConnectivityInfoResponse.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
755
+ UpdateConnectivityInfoResponse.struct_class = Types::UpdateConnectivityInfoResponse
756
+
706
757
  ValidationException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
707
758
  ValidationException.add_member(:reason, Shapes::ShapeRef.new(shape: ValidationExceptionReason, location_name: "reason"))
708
759
  ValidationException.add_member(:fields, Shapes::ShapeRef.new(shape: ValidationExceptionFieldList, location_name: "fields"))
@@ -714,6 +765,8 @@ module Aws::GreengrassV2
714
765
 
715
766
  ValidationExceptionFieldList.member = Shapes::ShapeRef.new(shape: ValidationExceptionField)
716
767
 
768
+ connectivityInfoList.member = Shapes::ShapeRef.new(shape: ConnectivityInfo)
769
+
717
770
 
718
771
  # @api private
719
772
  API = Seahorse::Model::Api.new.tap do |api|
@@ -723,7 +776,6 @@ module Aws::GreengrassV2
723
776
  api.metadata = {
724
777
  "apiVersion" => "2020-11-30",
725
778
  "endpointPrefix" => "greengrass",
726
- "jsonVersion" => "1.1",
727
779
  "protocol" => "rest-json",
728
780
  "serviceAbbreviation" => "AWS GreengrassV2",
729
781
  "serviceFullName" => "AWS IoT Greengrass V2",
@@ -732,6 +784,16 @@ module Aws::GreengrassV2
732
784
  "uid" => "greengrassv2-2020-11-30",
733
785
  }
734
786
 
787
+ api.add_operation(:associate_service_role_to_account, Seahorse::Model::Operation.new.tap do |o|
788
+ o.name = "AssociateServiceRoleToAccount"
789
+ o.http_method = "PUT"
790
+ o.http_request_uri = "/greengrass/servicerole"
791
+ o.input = Shapes::ShapeRef.new(shape: AssociateServiceRoleToAccountRequest)
792
+ o.output = Shapes::ShapeRef.new(shape: AssociateServiceRoleToAccountResponse)
793
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
794
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
795
+ end)
796
+
735
797
  api.add_operation(:batch_associate_client_device_with_core_device, Seahorse::Model::Operation.new.tap do |o|
736
798
  o.name = "BatchAssociateClientDeviceWithCoreDevice"
737
799
  o.http_method = "POST"
@@ -842,6 +904,15 @@ module Aws::GreengrassV2
842
904
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
843
905
  end)
844
906
 
907
+ api.add_operation(:disassociate_service_role_from_account, Seahorse::Model::Operation.new.tap do |o|
908
+ o.name = "DisassociateServiceRoleFromAccount"
909
+ o.http_method = "DELETE"
910
+ o.http_request_uri = "/greengrass/servicerole"
911
+ o.input = Shapes::ShapeRef.new(shape: DisassociateServiceRoleFromAccountRequest)
912
+ o.output = Shapes::ShapeRef.new(shape: DisassociateServiceRoleFromAccountResponse)
913
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
914
+ end)
915
+
845
916
  api.add_operation(:get_component, Seahorse::Model::Operation.new.tap do |o|
846
917
  o.name = "GetComponent"
847
918
  o.http_method = "GET"
@@ -868,6 +939,16 @@ module Aws::GreengrassV2
868
939
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
869
940
  end)
870
941
 
942
+ api.add_operation(:get_connectivity_info, Seahorse::Model::Operation.new.tap do |o|
943
+ o.name = "GetConnectivityInfo"
944
+ o.http_method = "GET"
945
+ o.http_request_uri = "/greengrass/things/{thingName}/connectivityInfo"
946
+ o.input = Shapes::ShapeRef.new(shape: GetConnectivityInfoRequest)
947
+ o.output = Shapes::ShapeRef.new(shape: GetConnectivityInfoResponse)
948
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
949
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
950
+ end)
951
+
871
952
  api.add_operation(:get_core_device, Seahorse::Model::Operation.new.tap do |o|
872
953
  o.name = "GetCoreDevice"
873
954
  o.http_method = "GET"
@@ -894,6 +975,15 @@ module Aws::GreengrassV2
894
975
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
895
976
  end)
896
977
 
978
+ api.add_operation(:get_service_role_for_account, Seahorse::Model::Operation.new.tap do |o|
979
+ o.name = "GetServiceRoleForAccount"
980
+ o.http_method = "GET"
981
+ o.http_request_uri = "/greengrass/servicerole"
982
+ o.input = Shapes::ShapeRef.new(shape: GetServiceRoleForAccountRequest)
983
+ o.output = Shapes::ShapeRef.new(shape: GetServiceRoleForAccountResponse)
984
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
985
+ end)
986
+
897
987
  api.add_operation(:list_client_devices_associated_with_core_device, Seahorse::Model::Operation.new.tap do |o|
898
988
  o.name = "ListClientDevicesAssociatedWithCoreDevice"
899
989
  o.http_method = "GET"
@@ -1070,6 +1160,16 @@ module Aws::GreengrassV2
1070
1160
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1071
1161
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1072
1162
  end)
1163
+
1164
+ api.add_operation(:update_connectivity_info, Seahorse::Model::Operation.new.tap do |o|
1165
+ o.name = "UpdateConnectivityInfo"
1166
+ o.http_method = "PUT"
1167
+ o.http_request_uri = "/greengrass/things/{thingName}/connectivityInfo"
1168
+ o.input = Shapes::ShapeRef.new(shape: UpdateConnectivityInfoRequest)
1169
+ o.output = Shapes::ShapeRef.new(shape: UpdateConnectivityInfoResponse)
1170
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1171
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1172
+ end)
1073
1173
  end
1074
1174
 
1075
1175
  end
@@ -82,6 +82,41 @@ module Aws::GreengrassV2
82
82
  include Aws::Structure
83
83
  end
84
84
 
85
+ # @note When making an API call, you may pass AssociateServiceRoleToAccountRequest
86
+ # data as a hash:
87
+ #
88
+ # {
89
+ # role_arn: "String", # required
90
+ # }
91
+ #
92
+ # @!attribute [rw] role_arn
93
+ # The Amazon Resource Name (ARN) of the service role to associate with
94
+ # IoT Greengrass for your Amazon Web Services account in this Amazon
95
+ # Web Services Region.
96
+ # @return [String]
97
+ #
98
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/AssociateServiceRoleToAccountRequest AWS API Documentation
99
+ #
100
+ class AssociateServiceRoleToAccountRequest < Struct.new(
101
+ :role_arn)
102
+ SENSITIVE = []
103
+ include Aws::Structure
104
+ end
105
+
106
+ # @!attribute [rw] associated_at
107
+ # The time when the service role was associated with IoT Greengrass
108
+ # for your Amazon Web Services account in this Amazon Web Services
109
+ # Region.
110
+ # @return [String]
111
+ #
112
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/AssociateServiceRoleToAccountResponse AWS API Documentation
113
+ #
114
+ class AssociateServiceRoleToAccountResponse < Struct.new(
115
+ :associated_at)
116
+ SENSITIVE = []
117
+ include Aws::Structure
118
+ end
119
+
85
120
  # Contains information about a client device that is associated to a
86
121
  # core device for cloud discovery.
87
122
  #
@@ -176,8 +211,8 @@ module Aws::GreengrassV2
176
211
  end
177
212
 
178
213
  # @!attribute [rw] error_entries
179
- # The list of errors (if any) for the entries in the request. Each
180
- # error entry contains the name of the IoT thing that failed to
214
+ # The list of any errors for the entries in the request. Each error
215
+ # entry contains the name of the IoT thing that failed to
181
216
  # disassociate.
182
217
  # @return [Array<Types::DisassociateClientDeviceFromCoreDeviceErrorEntry>]
183
218
  #
@@ -701,6 +736,50 @@ module Aws::GreengrassV2
701
736
  include Aws::Structure
702
737
  end
703
738
 
739
+ # Contains information about an endpoint and port where client devices
740
+ # can connect to an MQTT broker on a Greengrass core device.
741
+ #
742
+ # @note When making an API call, you may pass ConnectivityInfo
743
+ # data as a hash:
744
+ #
745
+ # {
746
+ # id: "String",
747
+ # host_address: "String",
748
+ # port_number: 1,
749
+ # metadata: "String",
750
+ # }
751
+ #
752
+ # @!attribute [rw] id
753
+ # An ID for the connectivity information.
754
+ # @return [String]
755
+ #
756
+ # @!attribute [rw] host_address
757
+ # The IP address or DNS address where client devices can connect to an
758
+ # MQTT broker on the Greengrass core device.
759
+ # @return [String]
760
+ #
761
+ # @!attribute [rw] port_number
762
+ # The port where the MQTT broker operates on the core device. This
763
+ # port is typically 8883, which is the default port for the MQTT
764
+ # broker component that runs on core devices.
765
+ # @return [Integer]
766
+ #
767
+ # @!attribute [rw] metadata
768
+ # Additional metadata to provide to client devices that connect to
769
+ # this core device.
770
+ # @return [String]
771
+ #
772
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/ConnectivityInfo AWS API Documentation
773
+ #
774
+ class ConnectivityInfo < Struct.new(
775
+ :id,
776
+ :host_address,
777
+ :port_number,
778
+ :metadata)
779
+ SENSITIVE = []
780
+ include Aws::Structure
781
+ end
782
+
704
783
  # Contains information about a Greengrass core device, which is an IoT
705
784
  # thing that runs the IoT Greengrass Core software.
706
785
  #
@@ -1490,6 +1569,26 @@ module Aws::GreengrassV2
1490
1569
  include Aws::Structure
1491
1570
  end
1492
1571
 
1572
+ # @api private
1573
+ #
1574
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/DisassociateServiceRoleFromAccountRequest AWS API Documentation
1575
+ #
1576
+ class DisassociateServiceRoleFromAccountRequest < Aws::EmptyStructure; end
1577
+
1578
+ # @!attribute [rw] disassociated_at
1579
+ # The time when the service role was disassociated from IoT Greengrass
1580
+ # for your Amazon Web Services account in this Amazon Web Services
1581
+ # Region.
1582
+ # @return [String]
1583
+ #
1584
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/DisassociateServiceRoleFromAccountResponse AWS API Documentation
1585
+ #
1586
+ class DisassociateServiceRoleFromAccountResponse < Struct.new(
1587
+ :disassociated_at)
1588
+ SENSITIVE = []
1589
+ include Aws::Structure
1590
+ end
1591
+
1493
1592
  # Contains information about a deployment job that IoT Greengrass sends
1494
1593
  # to a Greengrass core device.
1495
1594
  #
@@ -1670,6 +1769,42 @@ module Aws::GreengrassV2
1670
1769
  include Aws::Structure
1671
1770
  end
1672
1771
 
1772
+ # @note When making an API call, you may pass GetConnectivityInfoRequest
1773
+ # data as a hash:
1774
+ #
1775
+ # {
1776
+ # thing_name: "CoreDeviceThingName", # required
1777
+ # }
1778
+ #
1779
+ # @!attribute [rw] thing_name
1780
+ # The name of the core device. This is also the name of the IoT thing.
1781
+ # @return [String]
1782
+ #
1783
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/GetConnectivityInfoRequest AWS API Documentation
1784
+ #
1785
+ class GetConnectivityInfoRequest < Struct.new(
1786
+ :thing_name)
1787
+ SENSITIVE = []
1788
+ include Aws::Structure
1789
+ end
1790
+
1791
+ # @!attribute [rw] connectivity_info
1792
+ # The connectivity information for the core device.
1793
+ # @return [Array<Types::ConnectivityInfo>]
1794
+ #
1795
+ # @!attribute [rw] message
1796
+ # A message about the connectivity information request.
1797
+ # @return [String]
1798
+ #
1799
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/GetConnectivityInfoResponse AWS API Documentation
1800
+ #
1801
+ class GetConnectivityInfoResponse < Struct.new(
1802
+ :connectivity_info,
1803
+ :message)
1804
+ SENSITIVE = []
1805
+ include Aws::Structure
1806
+ end
1807
+
1673
1808
  # @note When making an API call, you may pass GetCoreDeviceRequest
1674
1809
  # data as a hash:
1675
1810
  #
@@ -1864,6 +1999,33 @@ module Aws::GreengrassV2
1864
1999
  include Aws::Structure
1865
2000
  end
1866
2001
 
2002
+ # @api private
2003
+ #
2004
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/GetServiceRoleForAccountRequest AWS API Documentation
2005
+ #
2006
+ class GetServiceRoleForAccountRequest < Aws::EmptyStructure; end
2007
+
2008
+ # @!attribute [rw] associated_at
2009
+ # The time when the service role was associated with IoT Greengrass
2010
+ # for your Amazon Web Services account in this Amazon Web Services
2011
+ # Region.
2012
+ # @return [String]
2013
+ #
2014
+ # @!attribute [rw] role_arn
2015
+ # The ARN of the service role that is associated with IoT Greengrass
2016
+ # for your Amazon Web Services account in this Amazon Web Services
2017
+ # Region.
2018
+ # @return [String]
2019
+ #
2020
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/GetServiceRoleForAccountResponse AWS API Documentation
2021
+ #
2022
+ class GetServiceRoleForAccountResponse < Struct.new(
2023
+ :associated_at,
2024
+ :role_arn)
2025
+ SENSITIVE = []
2026
+ include Aws::Structure
2027
+ end
2028
+
1867
2029
  # Contains information about a component on a Greengrass core device.
1868
2030
  #
1869
2031
  # @!attribute [rw] component_name
@@ -3373,6 +3535,55 @@ module Aws::GreengrassV2
3373
3535
  #
3374
3536
  class UntagResourceResponse < Aws::EmptyStructure; end
3375
3537
 
3538
+ # @note When making an API call, you may pass UpdateConnectivityInfoRequest
3539
+ # data as a hash:
3540
+ #
3541
+ # {
3542
+ # thing_name: "CoreDeviceThingName", # required
3543
+ # connectivity_info: [ # required
3544
+ # {
3545
+ # id: "String",
3546
+ # host_address: "String",
3547
+ # port_number: 1,
3548
+ # metadata: "String",
3549
+ # },
3550
+ # ],
3551
+ # }
3552
+ #
3553
+ # @!attribute [rw] thing_name
3554
+ # The name of the core device. This is also the name of the IoT thing.
3555
+ # @return [String]
3556
+ #
3557
+ # @!attribute [rw] connectivity_info
3558
+ # The connectivity information for the core device.
3559
+ # @return [Array<Types::ConnectivityInfo>]
3560
+ #
3561
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/UpdateConnectivityInfoRequest AWS API Documentation
3562
+ #
3563
+ class UpdateConnectivityInfoRequest < Struct.new(
3564
+ :thing_name,
3565
+ :connectivity_info)
3566
+ SENSITIVE = []
3567
+ include Aws::Structure
3568
+ end
3569
+
3570
+ # @!attribute [rw] version
3571
+ # The new version of the connectivity information for the core device.
3572
+ # @return [String]
3573
+ #
3574
+ # @!attribute [rw] message
3575
+ # A message about the connectivity information update request.
3576
+ # @return [String]
3577
+ #
3578
+ # @see http://docs.aws.amazon.com/goto/WebAPI/greengrassv2-2020-11-30/UpdateConnectivityInfoResponse AWS API Documentation
3579
+ #
3580
+ class UpdateConnectivityInfoResponse < Struct.new(
3581
+ :version,
3582
+ :message)
3583
+ SENSITIVE = []
3584
+ include Aws::Structure
3585
+ end
3586
+
3376
3587
  # The request isn't valid. This can occur if your request contains
3377
3588
  # malformed JSON or unsupported characters.
3378
3589
  #
@@ -28,7 +28,7 @@ require_relative 'aws-sdk-greengrassv2/customizations'
28
28
  # structure.
29
29
  #
30
30
  # greengrass_v2 = Aws::GreengrassV2::Client.new
31
- # resp = greengrass_v2.batch_associate_client_device_with_core_device(params)
31
+ # resp = greengrass_v2.associate_service_role_to_account(params)
32
32
  #
33
33
  # See {Client} for more information.
34
34
  #
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-greengrassv2/customizations'
48
48
  # @!group service
49
49
  module Aws::GreengrassV2
50
50
 
51
- GEM_VERSION = '1.13.0'
51
+ GEM_VERSION = '1.14.0'
52
52
 
53
53
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-greengrassv2
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.13.0
4
+ version: 1.14.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: 2021-12-21 00:00:00.000000000 Z
11
+ date: 2022-01-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core