aws-sdk-finspacedata 1.15.0 → 1.16.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: 526b99dce2580edc6cb7ce8b1b170112a92a00d2ee1b71993869b2258da1e81a
4
- data.tar.gz: 3716c9f190fd4d5242f10e3cf88a8adeb92df7f2c5c1eaf05938e01d9c96bcc1
3
+ metadata.gz: e5e654a37ea706f0ec04b85253d080b22d1ebf7c617c0fcf3fa0eeccd25b57e7
4
+ data.tar.gz: 41fab6545e8bf4fb34b040966f715701889000e472c3f63d1c8983a1bb491729
5
5
  SHA512:
6
- metadata.gz: f9cb89add7cdecb635af1b8b1873cded76979766c707fbad1e0b4a3c6031171a7f5d50bdcab86511180ffc8c4d1e6414d6165495354978ac8d10c476cd47fa6b
7
- data.tar.gz: 7234f851d8294c82a6c3aebf32c65c6ce1e7df0285609584ce7c03d8ed96a1a646dbe8dfea4973193f4428d18b5daf12cdaa09223dbd37532faf14b642154b5b
6
+ metadata.gz: 0a4b20e8a37785f0cc7830e0189428d7e49abef40a4ebb9093cf6e350df04b22a4dbfdfcc3df15cf6142187276fb74e8353dc59f2eb38418aa4629a0c61c0840
7
+ data.tar.gz: 807943759b455a92cdac063fc281e3ef0453f1d1df955fe389fbb913b10b0d89d186d6dffaf1f939c8e9f53b617064cd167b5bb45334ca75c681bab7c7a5f7a0
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.16.0 (2022-06-15)
5
+ ------------------
6
+
7
+ * Feature - This release adds a new set of APIs, GetPermissionGroup, DisassociateUserFromPermissionGroup, AssociateUserToPermissionGroup, ListPermissionGroupsByUser, ListUsersByPermissionGroup.
8
+
4
9
  1.15.0 (2022-05-12)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.15.0
1
+ 1.16.0
@@ -353,6 +353,46 @@ module Aws::FinSpaceData
353
353
 
354
354
  # @!group API Operations
355
355
 
356
+ # Adds a user account to a permission group to grant permissions for
357
+ # actions a user can perform in FinSpace.
358
+ #
359
+ # @option params [required, String] :permission_group_id
360
+ # The unique identifier for the permission group.
361
+ #
362
+ # @option params [required, String] :user_id
363
+ # The unique identifier for the user.
364
+ #
365
+ # @option params [String] :client_token
366
+ # A token that ensures idempotency. This token expires in 10 minutes.
367
+ #
368
+ # **A suitable default value is auto-generated.** You should normally
369
+ # not need to pass this option.**
370
+ #
371
+ # @return [Types::AssociateUserToPermissionGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
372
+ #
373
+ # * {Types::AssociateUserToPermissionGroupResponse#status_code #status_code} => Integer
374
+ #
375
+ # @example Request syntax with placeholder values
376
+ #
377
+ # resp = client.associate_user_to_permission_group({
378
+ # permission_group_id: "PermissionGroupId", # required
379
+ # user_id: "UserId", # required
380
+ # client_token: "ClientToken",
381
+ # })
382
+ #
383
+ # @example Response structure
384
+ #
385
+ # resp.status_code #=> Integer
386
+ #
387
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/AssociateUserToPermissionGroup AWS API Documentation
388
+ #
389
+ # @overload associate_user_to_permission_group(params = {})
390
+ # @param [Hash] params ({})
391
+ def associate_user_to_permission_group(params = {}, options = {})
392
+ req = build_request(:associate_user_to_permission_group, params)
393
+ req.send_request(options)
394
+ end
395
+
356
396
  # Creates a new Changeset in a FinSpace Dataset.
357
397
  #
358
398
  # @option params [String] :client_token
@@ -857,6 +897,45 @@ module Aws::FinSpaceData
857
897
  req.send_request(options)
858
898
  end
859
899
 
900
+ # Removes a user account from a permission group.
901
+ #
902
+ # @option params [required, String] :permission_group_id
903
+ # The unique identifier for the permission group.
904
+ #
905
+ # @option params [required, String] :user_id
906
+ # The unique identifier for the user.
907
+ #
908
+ # @option params [String] :client_token
909
+ # A token that ensures idempotency. This token expires in 10 minutes.
910
+ #
911
+ # **A suitable default value is auto-generated.** You should normally
912
+ # not need to pass this option.**
913
+ #
914
+ # @return [Types::DisassociateUserFromPermissionGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
915
+ #
916
+ # * {Types::DisassociateUserFromPermissionGroupResponse#status_code #status_code} => Integer
917
+ #
918
+ # @example Request syntax with placeholder values
919
+ #
920
+ # resp = client.disassociate_user_from_permission_group({
921
+ # permission_group_id: "PermissionGroupId", # required
922
+ # user_id: "UserId", # required
923
+ # client_token: "ClientToken",
924
+ # })
925
+ #
926
+ # @example Response structure
927
+ #
928
+ # resp.status_code #=> Integer
929
+ #
930
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/DisassociateUserFromPermissionGroup AWS API Documentation
931
+ #
932
+ # @overload disassociate_user_from_permission_group(params = {})
933
+ # @param [Hash] params ({})
934
+ def disassociate_user_from_permission_group(params = {}, options = {})
935
+ req = build_request(:disassociate_user_from_permission_group, params)
936
+ req.send_request(options)
937
+ end
938
+
860
939
  # Allows the specified user to access the FinSpace web application and
861
940
  # API.
862
941
  #
@@ -1064,6 +1143,41 @@ module Aws::FinSpaceData
1064
1143
  req.send_request(options)
1065
1144
  end
1066
1145
 
1146
+ # Retrieves the details of a specific permission group.
1147
+ #
1148
+ # @option params [required, String] :permission_group_id
1149
+ # The unique identifier for the permission group.
1150
+ #
1151
+ # @return [Types::GetPermissionGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1152
+ #
1153
+ # * {Types::GetPermissionGroupResponse#permission_group #permission_group} => Types::PermissionGroup
1154
+ #
1155
+ # @example Request syntax with placeholder values
1156
+ #
1157
+ # resp = client.get_permission_group({
1158
+ # permission_group_id: "PermissionGroupId", # required
1159
+ # })
1160
+ #
1161
+ # @example Response structure
1162
+ #
1163
+ # resp.permission_group.permission_group_id #=> String
1164
+ # resp.permission_group.name #=> String
1165
+ # resp.permission_group.description #=> String
1166
+ # resp.permission_group.application_permissions #=> Array
1167
+ # resp.permission_group.application_permissions[0] #=> String, one of "CreateDataset", "ManageClusters", "ManageUsersAndGroups", "ManageAttributeSets", "ViewAuditData", "AccessNotebooks", "GetTemporaryCredentials"
1168
+ # resp.permission_group.create_time #=> Integer
1169
+ # resp.permission_group.last_modified_time #=> Integer
1170
+ # resp.permission_group.membership_status #=> String, one of "ADDITION_IN_PROGRESS", "ADDITION_SUCCESS", "REMOVAL_IN_PROGRESS"
1171
+ #
1172
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetPermissionGroup AWS API Documentation
1173
+ #
1174
+ # @overload get_permission_group(params = {})
1175
+ # @param [Hash] params ({})
1176
+ def get_permission_group(params = {}, options = {})
1177
+ req = build_request(:get_permission_group, params)
1178
+ req.send_request(options)
1179
+ end
1180
+
1067
1181
  # Request programmatic credentials to use with FinSpace SDK.
1068
1182
  #
1069
1183
  # @option params [Integer] :duration_in_minutes
@@ -1394,6 +1508,7 @@ module Aws::FinSpaceData
1394
1508
  # resp.permission_groups[0].application_permissions[0] #=> String, one of "CreateDataset", "ManageClusters", "ManageUsersAndGroups", "ManageAttributeSets", "ViewAuditData", "AccessNotebooks", "GetTemporaryCredentials"
1395
1509
  # resp.permission_groups[0].create_time #=> Integer
1396
1510
  # resp.permission_groups[0].last_modified_time #=> Integer
1511
+ # resp.permission_groups[0].membership_status #=> String, one of "ADDITION_IN_PROGRESS", "ADDITION_SUCCESS", "REMOVAL_IN_PROGRESS"
1397
1512
  # resp.next_token #=> String
1398
1513
  #
1399
1514
  # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListPermissionGroups AWS API Documentation
@@ -1405,6 +1520,48 @@ module Aws::FinSpaceData
1405
1520
  req.send_request(options)
1406
1521
  end
1407
1522
 
1523
+ # Lists all the permission groups that are associated with a specific
1524
+ # user account.
1525
+ #
1526
+ # @option params [required, String] :user_id
1527
+ # The unique identifier for the user.
1528
+ #
1529
+ # @option params [String] :next_token
1530
+ # A token that indicates where a results page should begin.
1531
+ #
1532
+ # @option params [required, Integer] :max_results
1533
+ # The maximum number of results per page.
1534
+ #
1535
+ # @return [Types::ListPermissionGroupsByUserResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1536
+ #
1537
+ # * {Types::ListPermissionGroupsByUserResponse#permission_groups #permission_groups} => Array<Types::PermissionGroupByUser>
1538
+ # * {Types::ListPermissionGroupsByUserResponse#next_token #next_token} => String
1539
+ #
1540
+ # @example Request syntax with placeholder values
1541
+ #
1542
+ # resp = client.list_permission_groups_by_user({
1543
+ # user_id: "UserId", # required
1544
+ # next_token: "PaginationToken",
1545
+ # max_results: 1, # required
1546
+ # })
1547
+ #
1548
+ # @example Response structure
1549
+ #
1550
+ # resp.permission_groups #=> Array
1551
+ # resp.permission_groups[0].permission_group_id #=> String
1552
+ # resp.permission_groups[0].name #=> String
1553
+ # resp.permission_groups[0].membership_status #=> String, one of "ADDITION_IN_PROGRESS", "ADDITION_SUCCESS", "REMOVAL_IN_PROGRESS"
1554
+ # resp.next_token #=> String
1555
+ #
1556
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListPermissionGroupsByUser AWS API Documentation
1557
+ #
1558
+ # @overload list_permission_groups_by_user(params = {})
1559
+ # @param [Hash] params ({})
1560
+ def list_permission_groups_by_user(params = {}, options = {})
1561
+ req = build_request(:list_permission_groups_by_user, params)
1562
+ req.send_request(options)
1563
+ end
1564
+
1408
1565
  # Lists all available user accounts in FinSpace.
1409
1566
  #
1410
1567
  # @option params [String] :next_token
@@ -1454,6 +1611,53 @@ module Aws::FinSpaceData
1454
1611
  req.send_request(options)
1455
1612
  end
1456
1613
 
1614
+ # Lists details of all the users in a specific permission group.
1615
+ #
1616
+ # @option params [required, String] :permission_group_id
1617
+ # The unique identifier for the permission group.
1618
+ #
1619
+ # @option params [String] :next_token
1620
+ # A token that indicates where a results page should begin.
1621
+ #
1622
+ # @option params [required, Integer] :max_results
1623
+ # The maximum number of results per page.
1624
+ #
1625
+ # @return [Types::ListUsersByPermissionGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1626
+ #
1627
+ # * {Types::ListUsersByPermissionGroupResponse#users #users} => Array<Types::UserByPermissionGroup>
1628
+ # * {Types::ListUsersByPermissionGroupResponse#next_token #next_token} => String
1629
+ #
1630
+ # @example Request syntax with placeholder values
1631
+ #
1632
+ # resp = client.list_users_by_permission_group({
1633
+ # permission_group_id: "PermissionGroupId", # required
1634
+ # next_token: "PaginationToken",
1635
+ # max_results: 1, # required
1636
+ # })
1637
+ #
1638
+ # @example Response structure
1639
+ #
1640
+ # resp.users #=> Array
1641
+ # resp.users[0].user_id #=> String
1642
+ # resp.users[0].status #=> String, one of "CREATING", "ENABLED", "DISABLED"
1643
+ # resp.users[0].first_name #=> String
1644
+ # resp.users[0].last_name #=> String
1645
+ # resp.users[0].email_address #=> String
1646
+ # resp.users[0].type #=> String, one of "SUPER_USER", "APP_USER"
1647
+ # resp.users[0].api_access #=> String, one of "ENABLED", "DISABLED"
1648
+ # resp.users[0].api_access_principal_arn #=> String
1649
+ # resp.users[0].membership_status #=> String, one of "ADDITION_IN_PROGRESS", "ADDITION_SUCCESS", "REMOVAL_IN_PROGRESS"
1650
+ # resp.next_token #=> String
1651
+ #
1652
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListUsersByPermissionGroup AWS API Documentation
1653
+ #
1654
+ # @overload list_users_by_permission_group(params = {})
1655
+ # @param [Hash] params ({})
1656
+ def list_users_by_permission_group(params = {}, options = {})
1657
+ req = build_request(:list_users_by_permission_group, params)
1658
+ req.send_request(options)
1659
+ end
1660
+
1457
1661
  # Resets the password for a specified user ID and generates a temporary
1458
1662
  # one. Only a superuser can reset password for other users. Resetting
1459
1663
  # the password immediately invalidates the previous password associated
@@ -1747,7 +1951,7 @@ module Aws::FinSpaceData
1747
1951
  # data in FinSpace.
1748
1952
  #
1749
1953
  # * `APP_USER` – A user with specific permissions in FinSpace. The users
1750
- # are assigned permissions by adding them to a permissions group.
1954
+ # are assigned permissions by adding them to a permission group.
1751
1955
  #
1752
1956
  # @option params [String] :first_name
1753
1957
  # The first name of the user.
@@ -1818,7 +2022,7 @@ module Aws::FinSpaceData
1818
2022
  params: params,
1819
2023
  config: config)
1820
2024
  context[:gem_name] = 'aws-sdk-finspacedata'
1821
- context[:gem_version] = '1.15.0'
2025
+ context[:gem_version] = '1.16.0'
1822
2026
  Seahorse::Client::Request.new(handlers, context)
1823
2027
  end
1824
2028
 
@@ -18,6 +18,8 @@ module Aws::FinSpaceData
18
18
  ApiAccess = Shapes::StringShape.new(name: 'ApiAccess')
19
19
  ApplicationPermission = Shapes::StringShape.new(name: 'ApplicationPermission')
20
20
  ApplicationPermissionList = Shapes::ListShape.new(name: 'ApplicationPermissionList')
21
+ AssociateUserToPermissionGroupRequest = Shapes::StructureShape.new(name: 'AssociateUserToPermissionGroupRequest')
22
+ AssociateUserToPermissionGroupResponse = Shapes::StructureShape.new(name: 'AssociateUserToPermissionGroupResponse')
21
23
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
22
24
  ChangeType = Shapes::StringShape.new(name: 'ChangeType')
23
25
  ChangesetArn = Shapes::StringShape.new(name: 'ChangesetArn')
@@ -67,6 +69,8 @@ module Aws::FinSpaceData
67
69
  DeletePermissionGroupResponse = Shapes::StructureShape.new(name: 'DeletePermissionGroupResponse')
68
70
  DisableUserRequest = Shapes::StructureShape.new(name: 'DisableUserRequest')
69
71
  DisableUserResponse = Shapes::StructureShape.new(name: 'DisableUserResponse')
72
+ DisassociateUserFromPermissionGroupRequest = Shapes::StructureShape.new(name: 'DisassociateUserFromPermissionGroupRequest')
73
+ DisassociateUserFromPermissionGroupResponse = Shapes::StructureShape.new(name: 'DisassociateUserFromPermissionGroupResponse')
70
74
  Email = Shapes::StringShape.new(name: 'Email')
71
75
  EnableUserRequest = Shapes::StructureShape.new(name: 'EnableUserRequest')
72
76
  EnableUserResponse = Shapes::StructureShape.new(name: 'EnableUserResponse')
@@ -81,6 +85,8 @@ module Aws::FinSpaceData
81
85
  GetDataViewResponse = Shapes::StructureShape.new(name: 'GetDataViewResponse')
82
86
  GetDatasetRequest = Shapes::StructureShape.new(name: 'GetDatasetRequest')
83
87
  GetDatasetResponse = Shapes::StructureShape.new(name: 'GetDatasetResponse')
88
+ GetPermissionGroupRequest = Shapes::StructureShape.new(name: 'GetPermissionGroupRequest')
89
+ GetPermissionGroupResponse = Shapes::StructureShape.new(name: 'GetPermissionGroupResponse')
84
90
  GetProgrammaticAccessCredentialsRequest = Shapes::StructureShape.new(name: 'GetProgrammaticAccessCredentialsRequest')
85
91
  GetProgrammaticAccessCredentialsResponse = Shapes::StructureShape.new(name: 'GetProgrammaticAccessCredentialsResponse')
86
92
  GetUserRequest = Shapes::StructureShape.new(name: 'GetUserRequest')
@@ -98,8 +104,12 @@ module Aws::FinSpaceData
98
104
  ListDataViewsResponse = Shapes::StructureShape.new(name: 'ListDataViewsResponse')
99
105
  ListDatasetsRequest = Shapes::StructureShape.new(name: 'ListDatasetsRequest')
100
106
  ListDatasetsResponse = Shapes::StructureShape.new(name: 'ListDatasetsResponse')
107
+ ListPermissionGroupsByUserRequest = Shapes::StructureShape.new(name: 'ListPermissionGroupsByUserRequest')
108
+ ListPermissionGroupsByUserResponse = Shapes::StructureShape.new(name: 'ListPermissionGroupsByUserResponse')
101
109
  ListPermissionGroupsRequest = Shapes::StructureShape.new(name: 'ListPermissionGroupsRequest')
102
110
  ListPermissionGroupsResponse = Shapes::StructureShape.new(name: 'ListPermissionGroupsResponse')
111
+ ListUsersByPermissionGroupRequest = Shapes::StructureShape.new(name: 'ListUsersByPermissionGroupRequest')
112
+ ListUsersByPermissionGroupResponse = Shapes::StructureShape.new(name: 'ListUsersByPermissionGroupResponse')
103
113
  ListUsersRequest = Shapes::StructureShape.new(name: 'ListUsersRequest')
104
114
  ListUsersResponse = Shapes::StructureShape.new(name: 'ListUsersResponse')
105
115
  OwnerName = Shapes::StringShape.new(name: 'OwnerName')
@@ -107,9 +117,12 @@ module Aws::FinSpaceData
107
117
  PartitionColumnList = Shapes::ListShape.new(name: 'PartitionColumnList')
108
118
  Password = Shapes::StringShape.new(name: 'Password')
109
119
  PermissionGroup = Shapes::StructureShape.new(name: 'PermissionGroup')
120
+ PermissionGroupByUser = Shapes::StructureShape.new(name: 'PermissionGroupByUser')
121
+ PermissionGroupByUserList = Shapes::ListShape.new(name: 'PermissionGroupByUserList')
110
122
  PermissionGroupDescription = Shapes::StringShape.new(name: 'PermissionGroupDescription')
111
123
  PermissionGroupId = Shapes::StringShape.new(name: 'PermissionGroupId')
112
124
  PermissionGroupList = Shapes::ListShape.new(name: 'PermissionGroupList')
125
+ PermissionGroupMembershipStatus = Shapes::StringShape.new(name: 'PermissionGroupMembershipStatus')
113
126
  PermissionGroupName = Shapes::StringShape.new(name: 'PermissionGroupName')
114
127
  PermissionGroupParams = Shapes::StructureShape.new(name: 'PermissionGroupParams')
115
128
  PhoneNumber = Shapes::StringShape.new(name: 'PhoneNumber')
@@ -126,6 +139,7 @@ module Aws::FinSpaceData
126
139
  SessionDuration = Shapes::IntegerShape.new(name: 'SessionDuration')
127
140
  SortColumnList = Shapes::ListShape.new(name: 'SortColumnList')
128
141
  SourceParams = Shapes::MapShape.new(name: 'SourceParams')
142
+ StatusCode = Shapes::IntegerShape.new(name: 'StatusCode')
129
143
  StringMapKey = Shapes::StringShape.new(name: 'StringMapKey')
130
144
  StringMapValue = Shapes::StringShape.new(name: 'StringMapValue')
131
145
  StringValueLength1to250 = Shapes::StringShape.new(name: 'StringValueLength1to250')
@@ -141,6 +155,8 @@ module Aws::FinSpaceData
141
155
  UpdateUserRequest = Shapes::StructureShape.new(name: 'UpdateUserRequest')
142
156
  UpdateUserResponse = Shapes::StructureShape.new(name: 'UpdateUserResponse')
143
157
  User = Shapes::StructureShape.new(name: 'User')
158
+ UserByPermissionGroup = Shapes::StructureShape.new(name: 'UserByPermissionGroup')
159
+ UserByPermissionGroupList = Shapes::ListShape.new(name: 'UserByPermissionGroupList')
144
160
  UserId = Shapes::StringShape.new(name: 'UserId')
145
161
  UserList = Shapes::ListShape.new(name: 'UserList')
146
162
  UserStatus = Shapes::StringShape.new(name: 'UserStatus')
@@ -158,6 +174,14 @@ module Aws::FinSpaceData
158
174
 
159
175
  ApplicationPermissionList.member = Shapes::ShapeRef.new(shape: ApplicationPermission)
160
176
 
177
+ AssociateUserToPermissionGroupRequest.add_member(:permission_group_id, Shapes::ShapeRef.new(shape: PermissionGroupId, required: true, location: "uri", location_name: "permissionGroupId"))
178
+ AssociateUserToPermissionGroupRequest.add_member(:user_id, Shapes::ShapeRef.new(shape: UserId, required: true, location: "uri", location_name: "userId"))
179
+ AssociateUserToPermissionGroupRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
180
+ AssociateUserToPermissionGroupRequest.struct_class = Types::AssociateUserToPermissionGroupRequest
181
+
182
+ AssociateUserToPermissionGroupResponse.add_member(:status_code, Shapes::ShapeRef.new(shape: StatusCode, location: "statusCode", location_name: "statusCode"))
183
+ AssociateUserToPermissionGroupResponse.struct_class = Types::AssociateUserToPermissionGroupResponse
184
+
161
185
  ChangesetErrorInfo.add_member(:error_message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "errorMessage"))
162
186
  ChangesetErrorInfo.add_member(:error_category, Shapes::ShapeRef.new(shape: ErrorCategory, location_name: "errorCategory"))
163
187
  ChangesetErrorInfo.struct_class = Types::ChangesetErrorInfo
@@ -320,6 +344,14 @@ module Aws::FinSpaceData
320
344
  DisableUserResponse.add_member(:user_id, Shapes::ShapeRef.new(shape: UserId, location_name: "userId"))
321
345
  DisableUserResponse.struct_class = Types::DisableUserResponse
322
346
 
347
+ DisassociateUserFromPermissionGroupRequest.add_member(:permission_group_id, Shapes::ShapeRef.new(shape: PermissionGroupId, required: true, location: "uri", location_name: "permissionGroupId"))
348
+ DisassociateUserFromPermissionGroupRequest.add_member(:user_id, Shapes::ShapeRef.new(shape: UserId, required: true, location: "uri", location_name: "userId"))
349
+ DisassociateUserFromPermissionGroupRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location: "querystring", location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
350
+ DisassociateUserFromPermissionGroupRequest.struct_class = Types::DisassociateUserFromPermissionGroupRequest
351
+
352
+ DisassociateUserFromPermissionGroupResponse.add_member(:status_code, Shapes::ShapeRef.new(shape: StatusCode, location: "statusCode", location_name: "statusCode"))
353
+ DisassociateUserFromPermissionGroupResponse.struct_class = Types::DisassociateUserFromPermissionGroupResponse
354
+
323
355
  EnableUserRequest.add_member(:user_id, Shapes::ShapeRef.new(shape: UserId, required: true, location: "uri", location_name: "userId"))
324
356
  EnableUserRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
325
357
  EnableUserRequest.struct_class = Types::EnableUserRequest
@@ -382,6 +414,12 @@ module Aws::FinSpaceData
382
414
  GetDatasetResponse.add_member(:status, Shapes::ShapeRef.new(shape: DatasetStatus, location_name: "status"))
383
415
  GetDatasetResponse.struct_class = Types::GetDatasetResponse
384
416
 
417
+ GetPermissionGroupRequest.add_member(:permission_group_id, Shapes::ShapeRef.new(shape: PermissionGroupId, required: true, location: "uri", location_name: "permissionGroupId"))
418
+ GetPermissionGroupRequest.struct_class = Types::GetPermissionGroupRequest
419
+
420
+ GetPermissionGroupResponse.add_member(:permission_group, Shapes::ShapeRef.new(shape: PermissionGroup, location_name: "permissionGroup"))
421
+ GetPermissionGroupResponse.struct_class = Types::GetPermissionGroupResponse
422
+
385
423
  GetProgrammaticAccessCredentialsRequest.add_member(:duration_in_minutes, Shapes::ShapeRef.new(shape: SessionDuration, location: "querystring", location_name: "durationInMinutes"))
386
424
  GetProgrammaticAccessCredentialsRequest.add_member(:environment_id, Shapes::ShapeRef.new(shape: IdType, required: true, location: "querystring", location_name: "environmentId"))
387
425
  GetProgrammaticAccessCredentialsRequest.struct_class = Types::GetProgrammaticAccessCredentialsRequest
@@ -448,6 +486,15 @@ module Aws::FinSpaceData
448
486
  ListDatasetsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
449
487
  ListDatasetsResponse.struct_class = Types::ListDatasetsResponse
450
488
 
489
+ ListPermissionGroupsByUserRequest.add_member(:user_id, Shapes::ShapeRef.new(shape: UserId, required: true, location: "uri", location_name: "userId"))
490
+ ListPermissionGroupsByUserRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location: "querystring", location_name: "nextToken"))
491
+ ListPermissionGroupsByUserRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ResultLimit, required: true, location: "querystring", location_name: "maxResults"))
492
+ ListPermissionGroupsByUserRequest.struct_class = Types::ListPermissionGroupsByUserRequest
493
+
494
+ ListPermissionGroupsByUserResponse.add_member(:permission_groups, Shapes::ShapeRef.new(shape: PermissionGroupByUserList, location_name: "permissionGroups"))
495
+ ListPermissionGroupsByUserResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
496
+ ListPermissionGroupsByUserResponse.struct_class = Types::ListPermissionGroupsByUserResponse
497
+
451
498
  ListPermissionGroupsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location: "querystring", location_name: "nextToken"))
452
499
  ListPermissionGroupsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ResultLimit, required: true, location: "querystring", location_name: "maxResults"))
453
500
  ListPermissionGroupsRequest.struct_class = Types::ListPermissionGroupsRequest
@@ -456,6 +503,15 @@ module Aws::FinSpaceData
456
503
  ListPermissionGroupsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
457
504
  ListPermissionGroupsResponse.struct_class = Types::ListPermissionGroupsResponse
458
505
 
506
+ ListUsersByPermissionGroupRequest.add_member(:permission_group_id, Shapes::ShapeRef.new(shape: PermissionGroupId, required: true, location: "uri", location_name: "permissionGroupId"))
507
+ ListUsersByPermissionGroupRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location: "querystring", location_name: "nextToken"))
508
+ ListUsersByPermissionGroupRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ResultLimit, required: true, location: "querystring", location_name: "maxResults"))
509
+ ListUsersByPermissionGroupRequest.struct_class = Types::ListUsersByPermissionGroupRequest
510
+
511
+ ListUsersByPermissionGroupResponse.add_member(:users, Shapes::ShapeRef.new(shape: UserByPermissionGroupList, location_name: "users"))
512
+ ListUsersByPermissionGroupResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
513
+ ListUsersByPermissionGroupResponse.struct_class = Types::ListUsersByPermissionGroupResponse
514
+
459
515
  ListUsersRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location: "querystring", location_name: "nextToken"))
460
516
  ListUsersRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ResultLimit, required: true, location: "querystring", location_name: "maxResults"))
461
517
  ListUsersRequest.struct_class = Types::ListUsersRequest
@@ -472,8 +528,16 @@ module Aws::FinSpaceData
472
528
  PermissionGroup.add_member(:application_permissions, Shapes::ShapeRef.new(shape: ApplicationPermissionList, location_name: "applicationPermissions"))
473
529
  PermissionGroup.add_member(:create_time, Shapes::ShapeRef.new(shape: TimestampEpoch, location_name: "createTime"))
474
530
  PermissionGroup.add_member(:last_modified_time, Shapes::ShapeRef.new(shape: TimestampEpoch, location_name: "lastModifiedTime"))
531
+ PermissionGroup.add_member(:membership_status, Shapes::ShapeRef.new(shape: PermissionGroupMembershipStatus, location_name: "membershipStatus"))
475
532
  PermissionGroup.struct_class = Types::PermissionGroup
476
533
 
534
+ PermissionGroupByUser.add_member(:permission_group_id, Shapes::ShapeRef.new(shape: PermissionGroupId, location_name: "permissionGroupId"))
535
+ PermissionGroupByUser.add_member(:name, Shapes::ShapeRef.new(shape: PermissionGroupName, location_name: "name"))
536
+ PermissionGroupByUser.add_member(:membership_status, Shapes::ShapeRef.new(shape: PermissionGroupMembershipStatus, location_name: "membershipStatus"))
537
+ PermissionGroupByUser.struct_class = Types::PermissionGroupByUser
538
+
539
+ PermissionGroupByUserList.member = Shapes::ShapeRef.new(shape: PermissionGroupByUser)
540
+
477
541
  PermissionGroupList.member = Shapes::ShapeRef.new(shape: PermissionGroup)
478
542
 
479
543
  PermissionGroupParams.add_member(:permission_group_id, Shapes::ShapeRef.new(shape: PermissionGroupId, location_name: "permissionGroupId"))
@@ -574,6 +638,19 @@ module Aws::FinSpaceData
574
638
  User.add_member(:last_login_time, Shapes::ShapeRef.new(shape: TimestampEpoch, location_name: "lastLoginTime"))
575
639
  User.struct_class = Types::User
576
640
 
641
+ UserByPermissionGroup.add_member(:user_id, Shapes::ShapeRef.new(shape: UserId, location_name: "userId"))
642
+ UserByPermissionGroup.add_member(:status, Shapes::ShapeRef.new(shape: UserStatus, location_name: "status"))
643
+ UserByPermissionGroup.add_member(:first_name, Shapes::ShapeRef.new(shape: FirstName, location_name: "firstName"))
644
+ UserByPermissionGroup.add_member(:last_name, Shapes::ShapeRef.new(shape: LastName, location_name: "lastName"))
645
+ UserByPermissionGroup.add_member(:email_address, Shapes::ShapeRef.new(shape: Email, location_name: "emailAddress"))
646
+ UserByPermissionGroup.add_member(:type, Shapes::ShapeRef.new(shape: UserType, location_name: "type"))
647
+ UserByPermissionGroup.add_member(:api_access, Shapes::ShapeRef.new(shape: ApiAccess, location_name: "apiAccess"))
648
+ UserByPermissionGroup.add_member(:api_access_principal_arn, Shapes::ShapeRef.new(shape: RoleArn, location_name: "apiAccessPrincipalArn"))
649
+ UserByPermissionGroup.add_member(:membership_status, Shapes::ShapeRef.new(shape: PermissionGroupMembershipStatus, location_name: "membershipStatus"))
650
+ UserByPermissionGroup.struct_class = Types::UserByPermissionGroup
651
+
652
+ UserByPermissionGroupList.member = Shapes::ShapeRef.new(shape: UserByPermissionGroup)
653
+
577
654
  UserList.member = Shapes::ShapeRef.new(shape: User)
578
655
 
579
656
  ValidationException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
@@ -599,6 +676,20 @@ module Aws::FinSpaceData
599
676
  "uid" => "finspace-2020-07-13",
600
677
  }
601
678
 
679
+ api.add_operation(:associate_user_to_permission_group, Seahorse::Model::Operation.new.tap do |o|
680
+ o.name = "AssociateUserToPermissionGroup"
681
+ o.http_method = "POST"
682
+ o.http_request_uri = "/permission-group/{permissionGroupId}/users/{userId}"
683
+ o.input = Shapes::ShapeRef.new(shape: AssociateUserToPermissionGroupRequest)
684
+ o.output = Shapes::ShapeRef.new(shape: AssociateUserToPermissionGroupResponse)
685
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
686
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
687
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
688
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
689
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
690
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
691
+ end)
692
+
602
693
  api.add_operation(:create_changeset, Seahorse::Model::Operation.new.tap do |o|
603
694
  o.name = "CreateChangeset"
604
695
  o.http_method = "POST"
@@ -715,6 +806,20 @@ module Aws::FinSpaceData
715
806
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
716
807
  end)
717
808
 
809
+ api.add_operation(:disassociate_user_from_permission_group, Seahorse::Model::Operation.new.tap do |o|
810
+ o.name = "DisassociateUserFromPermissionGroup"
811
+ o.http_method = "DELETE"
812
+ o.http_request_uri = "/permission-group/{permissionGroupId}/users/{userId}"
813
+ o.input = Shapes::ShapeRef.new(shape: DisassociateUserFromPermissionGroupRequest)
814
+ o.output = Shapes::ShapeRef.new(shape: DisassociateUserFromPermissionGroupResponse)
815
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
816
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
817
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
818
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
819
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
820
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
821
+ end)
822
+
718
823
  api.add_operation(:enable_user, Seahorse::Model::Operation.new.tap do |o|
719
824
  o.name = "EnableUser"
720
825
  o.http_method = "POST"
@@ -771,6 +876,19 @@ module Aws::FinSpaceData
771
876
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
772
877
  end)
773
878
 
879
+ api.add_operation(:get_permission_group, Seahorse::Model::Operation.new.tap do |o|
880
+ o.name = "GetPermissionGroup"
881
+ o.http_method = "GET"
882
+ o.http_request_uri = "/permission-group/{permissionGroupId}"
883
+ o.input = Shapes::ShapeRef.new(shape: GetPermissionGroupRequest)
884
+ o.output = Shapes::ShapeRef.new(shape: GetPermissionGroupResponse)
885
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
886
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
887
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
888
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
889
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
890
+ end)
891
+
774
892
  api.add_operation(:get_programmatic_access_credentials, Seahorse::Model::Operation.new.tap do |o|
775
893
  o.name = "GetProgrammaticAccessCredentials"
776
894
  o.http_method = "GET"
@@ -884,6 +1002,19 @@ module Aws::FinSpaceData
884
1002
  )
885
1003
  end)
886
1004
 
1005
+ api.add_operation(:list_permission_groups_by_user, Seahorse::Model::Operation.new.tap do |o|
1006
+ o.name = "ListPermissionGroupsByUser"
1007
+ o.http_method = "GET"
1008
+ o.http_request_uri = "/user/{userId}/permission-groups"
1009
+ o.input = Shapes::ShapeRef.new(shape: ListPermissionGroupsByUserRequest)
1010
+ o.output = Shapes::ShapeRef.new(shape: ListPermissionGroupsByUserResponse)
1011
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1012
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1013
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1014
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1015
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1016
+ end)
1017
+
887
1018
  api.add_operation(:list_users, Seahorse::Model::Operation.new.tap do |o|
888
1019
  o.name = "ListUsers"
889
1020
  o.http_method = "GET"
@@ -902,6 +1033,19 @@ module Aws::FinSpaceData
902
1033
  )
903
1034
  end)
904
1035
 
1036
+ api.add_operation(:list_users_by_permission_group, Seahorse::Model::Operation.new.tap do |o|
1037
+ o.name = "ListUsersByPermissionGroup"
1038
+ o.http_method = "GET"
1039
+ o.http_request_uri = "/permission-group/{permissionGroupId}/users"
1040
+ o.input = Shapes::ShapeRef.new(shape: ListUsersByPermissionGroupRequest)
1041
+ o.output = Shapes::ShapeRef.new(shape: ListUsersByPermissionGroupResponse)
1042
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1043
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1044
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1045
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1046
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1047
+ end)
1048
+
905
1049
  api.add_operation(:reset_user_password, Seahorse::Model::Operation.new.tap do |o|
906
1050
  o.name = "ResetUserPassword"
907
1051
  o.http_method = "POST"
@@ -23,6 +23,52 @@ module Aws::FinSpaceData
23
23
  include Aws::Structure
24
24
  end
25
25
 
26
+ # @note When making an API call, you may pass AssociateUserToPermissionGroupRequest
27
+ # data as a hash:
28
+ #
29
+ # {
30
+ # permission_group_id: "PermissionGroupId", # required
31
+ # user_id: "UserId", # required
32
+ # client_token: "ClientToken",
33
+ # }
34
+ #
35
+ # @!attribute [rw] permission_group_id
36
+ # The unique identifier for the permission group.
37
+ # @return [String]
38
+ #
39
+ # @!attribute [rw] user_id
40
+ # The unique identifier for the user.
41
+ # @return [String]
42
+ #
43
+ # @!attribute [rw] client_token
44
+ # A token that ensures idempotency. This token expires in 10 minutes.
45
+ #
46
+ # **A suitable default value is auto-generated.** You should normally
47
+ # not need to pass this option.
48
+ # @return [String]
49
+ #
50
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/AssociateUserToPermissionGroupRequest AWS API Documentation
51
+ #
52
+ class AssociateUserToPermissionGroupRequest < Struct.new(
53
+ :permission_group_id,
54
+ :user_id,
55
+ :client_token)
56
+ SENSITIVE = []
57
+ include Aws::Structure
58
+ end
59
+
60
+ # @!attribute [rw] status_code
61
+ # The returned status code of the response.
62
+ # @return [Integer]
63
+ #
64
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/AssociateUserToPermissionGroupResponse AWS API Documentation
65
+ #
66
+ class AssociateUserToPermissionGroupResponse < Struct.new(
67
+ :status_code)
68
+ SENSITIVE = []
69
+ include Aws::Structure
70
+ end
71
+
26
72
  # The structure with error messages.
27
73
  #
28
74
  # @!attribute [rw] error_message
@@ -769,7 +815,7 @@ module Aws::FinSpaceData
769
815
  # @return [String]
770
816
  #
771
817
  # @!attribute [rw] s3_destination_export_file_format
772
- # Data view export file format.
818
+ # Dataview export file format.
773
819
  #
774
820
  # * `PARQUET` – Parquet export file format.
775
821
  #
@@ -1154,6 +1200,52 @@ module Aws::FinSpaceData
1154
1200
  include Aws::Structure
1155
1201
  end
1156
1202
 
1203
+ # @note When making an API call, you may pass DisassociateUserFromPermissionGroupRequest
1204
+ # data as a hash:
1205
+ #
1206
+ # {
1207
+ # permission_group_id: "PermissionGroupId", # required
1208
+ # user_id: "UserId", # required
1209
+ # client_token: "ClientToken",
1210
+ # }
1211
+ #
1212
+ # @!attribute [rw] permission_group_id
1213
+ # The unique identifier for the permission group.
1214
+ # @return [String]
1215
+ #
1216
+ # @!attribute [rw] user_id
1217
+ # The unique identifier for the user.
1218
+ # @return [String]
1219
+ #
1220
+ # @!attribute [rw] client_token
1221
+ # A token that ensures idempotency. This token expires in 10 minutes.
1222
+ #
1223
+ # **A suitable default value is auto-generated.** You should normally
1224
+ # not need to pass this option.
1225
+ # @return [String]
1226
+ #
1227
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/DisassociateUserFromPermissionGroupRequest AWS API Documentation
1228
+ #
1229
+ class DisassociateUserFromPermissionGroupRequest < Struct.new(
1230
+ :permission_group_id,
1231
+ :user_id,
1232
+ :client_token)
1233
+ SENSITIVE = []
1234
+ include Aws::Structure
1235
+ end
1236
+
1237
+ # @!attribute [rw] status_code
1238
+ # The returned status code of the response.
1239
+ # @return [Integer]
1240
+ #
1241
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/DisassociateUserFromPermissionGroupResponse AWS API Documentation
1242
+ #
1243
+ class DisassociateUserFromPermissionGroupResponse < Struct.new(
1244
+ :status_code)
1245
+ SENSITIVE = []
1246
+ include Aws::Structure
1247
+ end
1248
+
1157
1249
  # @note When making an API call, you may pass EnableUserRequest
1158
1250
  # data as a hash:
1159
1251
  #
@@ -1533,6 +1625,37 @@ module Aws::FinSpaceData
1533
1625
  include Aws::Structure
1534
1626
  end
1535
1627
 
1628
+ # @note When making an API call, you may pass GetPermissionGroupRequest
1629
+ # data as a hash:
1630
+ #
1631
+ # {
1632
+ # permission_group_id: "PermissionGroupId", # required
1633
+ # }
1634
+ #
1635
+ # @!attribute [rw] permission_group_id
1636
+ # The unique identifier for the permission group.
1637
+ # @return [String]
1638
+ #
1639
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetPermissionGroupRequest AWS API Documentation
1640
+ #
1641
+ class GetPermissionGroupRequest < Struct.new(
1642
+ :permission_group_id)
1643
+ SENSITIVE = []
1644
+ include Aws::Structure
1645
+ end
1646
+
1647
+ # @!attribute [rw] permission_group
1648
+ # The structure for a permission group.
1649
+ # @return [Types::PermissionGroup]
1650
+ #
1651
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetPermissionGroupResponse AWS API Documentation
1652
+ #
1653
+ class GetPermissionGroupResponse < Struct.new(
1654
+ :permission_group)
1655
+ SENSITIVE = []
1656
+ include Aws::Structure
1657
+ end
1658
+
1536
1659
  # Request for GetProgrammaticAccessCredentials operation
1537
1660
  #
1538
1661
  # @note When making an API call, you may pass GetProgrammaticAccessCredentialsRequest
@@ -1634,7 +1757,7 @@ module Aws::FinSpaceData
1634
1757
  # ^
1635
1758
  #
1636
1759
  # * `APP_USER` – A user with specific permissions in FinSpace. The
1637
- # users are assigned permissions by adding them to a permissions
1760
+ # users are assigned permissions by adding them to a permission
1638
1761
  # group.
1639
1762
  #
1640
1763
  # ^
@@ -1929,6 +2052,54 @@ module Aws::FinSpaceData
1929
2052
  include Aws::Structure
1930
2053
  end
1931
2054
 
2055
+ # @note When making an API call, you may pass ListPermissionGroupsByUserRequest
2056
+ # data as a hash:
2057
+ #
2058
+ # {
2059
+ # user_id: "UserId", # required
2060
+ # next_token: "PaginationToken",
2061
+ # max_results: 1, # required
2062
+ # }
2063
+ #
2064
+ # @!attribute [rw] user_id
2065
+ # The unique identifier for the user.
2066
+ # @return [String]
2067
+ #
2068
+ # @!attribute [rw] next_token
2069
+ # A token that indicates where a results page should begin.
2070
+ # @return [String]
2071
+ #
2072
+ # @!attribute [rw] max_results
2073
+ # The maximum number of results per page.
2074
+ # @return [Integer]
2075
+ #
2076
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListPermissionGroupsByUserRequest AWS API Documentation
2077
+ #
2078
+ class ListPermissionGroupsByUserRequest < Struct.new(
2079
+ :user_id,
2080
+ :next_token,
2081
+ :max_results)
2082
+ SENSITIVE = []
2083
+ include Aws::Structure
2084
+ end
2085
+
2086
+ # @!attribute [rw] permission_groups
2087
+ # A list of returned permission groups.
2088
+ # @return [Array<Types::PermissionGroupByUser>]
2089
+ #
2090
+ # @!attribute [rw] next_token
2091
+ # A token that indicates where a results page should begin.
2092
+ # @return [String]
2093
+ #
2094
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListPermissionGroupsByUserResponse AWS API Documentation
2095
+ #
2096
+ class ListPermissionGroupsByUserResponse < Struct.new(
2097
+ :permission_groups,
2098
+ :next_token)
2099
+ SENSITIVE = []
2100
+ include Aws::Structure
2101
+ end
2102
+
1932
2103
  # @note When making an API call, you may pass ListPermissionGroupsRequest
1933
2104
  # data as a hash:
1934
2105
  #
@@ -1971,6 +2142,54 @@ module Aws::FinSpaceData
1971
2142
  include Aws::Structure
1972
2143
  end
1973
2144
 
2145
+ # @note When making an API call, you may pass ListUsersByPermissionGroupRequest
2146
+ # data as a hash:
2147
+ #
2148
+ # {
2149
+ # permission_group_id: "PermissionGroupId", # required
2150
+ # next_token: "PaginationToken",
2151
+ # max_results: 1, # required
2152
+ # }
2153
+ #
2154
+ # @!attribute [rw] permission_group_id
2155
+ # The unique identifier for the permission group.
2156
+ # @return [String]
2157
+ #
2158
+ # @!attribute [rw] next_token
2159
+ # A token that indicates where a results page should begin.
2160
+ # @return [String]
2161
+ #
2162
+ # @!attribute [rw] max_results
2163
+ # The maximum number of results per page.
2164
+ # @return [Integer]
2165
+ #
2166
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListUsersByPermissionGroupRequest AWS API Documentation
2167
+ #
2168
+ class ListUsersByPermissionGroupRequest < Struct.new(
2169
+ :permission_group_id,
2170
+ :next_token,
2171
+ :max_results)
2172
+ SENSITIVE = []
2173
+ include Aws::Structure
2174
+ end
2175
+
2176
+ # @!attribute [rw] users
2177
+ # Lists details of all users in a specific permission group.
2178
+ # @return [Array<Types::UserByPermissionGroup>]
2179
+ #
2180
+ # @!attribute [rw] next_token
2181
+ # A token that indicates where a results page should begin.
2182
+ # @return [String]
2183
+ #
2184
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListUsersByPermissionGroupResponse AWS API Documentation
2185
+ #
2186
+ class ListUsersByPermissionGroupResponse < Struct.new(
2187
+ :users,
2188
+ :next_token)
2189
+ SENSITIVE = []
2190
+ include Aws::Structure
2191
+ end
2192
+
1974
2193
  # @note When making an API call, you may pass ListUsersRequest
1975
2194
  # data as a hash:
1976
2195
  #
@@ -2060,6 +2279,19 @@ module Aws::FinSpaceData
2060
2279
  # is determined as epoch time in milliseconds.
2061
2280
  # @return [Integer]
2062
2281
  #
2282
+ # @!attribute [rw] membership_status
2283
+ # Indicates the status of the user account within a permission group.
2284
+ #
2285
+ # * `ADDITION_IN_PROGRESS` – The user account is currently being added
2286
+ # to the permission group.
2287
+ #
2288
+ # * `ADDITION_SUCCESS` – The user account is successfully added to the
2289
+ # permission group.
2290
+ #
2291
+ # * `REMOVAL_IN_PROGRESS` – The user is currently being removed from
2292
+ # the permission group.
2293
+ # @return [String]
2294
+ #
2063
2295
  # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/PermissionGroup AWS API Documentation
2064
2296
  #
2065
2297
  class PermissionGroup < Struct.new(
@@ -2068,11 +2300,45 @@ module Aws::FinSpaceData
2068
2300
  :description,
2069
2301
  :application_permissions,
2070
2302
  :create_time,
2071
- :last_modified_time)
2303
+ :last_modified_time,
2304
+ :membership_status)
2072
2305
  SENSITIVE = [:name, :description]
2073
2306
  include Aws::Structure
2074
2307
  end
2075
2308
 
2309
+ # The structure of a permission group associated with a user account.
2310
+ #
2311
+ # @!attribute [rw] permission_group_id
2312
+ # The unique identifier for the permission group.
2313
+ # @return [String]
2314
+ #
2315
+ # @!attribute [rw] name
2316
+ # The name of the permission group.
2317
+ # @return [String]
2318
+ #
2319
+ # @!attribute [rw] membership_status
2320
+ # Indicates the status of the user account within a permission group.
2321
+ #
2322
+ # * `ADDITION_IN_PROGRESS` – The user account is currently being added
2323
+ # to the permission group.
2324
+ #
2325
+ # * `ADDITION_SUCCESS` – The user account is successfully added to the
2326
+ # permission group.
2327
+ #
2328
+ # * `REMOVAL_IN_PROGRESS` – The user is currently being removed from
2329
+ # the permission group.
2330
+ # @return [String]
2331
+ #
2332
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/PermissionGroupByUser AWS API Documentation
2333
+ #
2334
+ class PermissionGroupByUser < Struct.new(
2335
+ :permission_group_id,
2336
+ :name,
2337
+ :membership_status)
2338
+ SENSITIVE = [:name]
2339
+ include Aws::Structure
2340
+ end
2341
+
2076
2342
  # Permission group parameters for Dataset permissions.
2077
2343
  #
2078
2344
  # Here is an example of how you could specify the
@@ -2604,7 +2870,7 @@ module Aws::FinSpaceData
2604
2870
  # data in FinSpace.
2605
2871
  #
2606
2872
  # * `APP_USER` – A user with specific permissions in FinSpace. The
2607
- # users are assigned permissions by adding them to a permissions
2873
+ # users are assigned permissions by adding them to a permission
2608
2874
  # group.
2609
2875
  # @return [String]
2610
2876
  #
@@ -2702,7 +2968,7 @@ module Aws::FinSpaceData
2702
2968
  # data in FinSpace.
2703
2969
  #
2704
2970
  # * `APP_USER` – A user with specific permissions in FinSpace. The
2705
- # users are assigned permissions by adding them to a permissions
2971
+ # users are assigned permissions by adding them to a permission
2706
2972
  # group.
2707
2973
  # @return [String]
2708
2974
  #
@@ -2768,6 +3034,88 @@ module Aws::FinSpaceData
2768
3034
  include Aws::Structure
2769
3035
  end
2770
3036
 
3037
+ # The structure of a user account associated with a permission group.
3038
+ #
3039
+ # @!attribute [rw] user_id
3040
+ # The unique identifier for the user.
3041
+ # @return [String]
3042
+ #
3043
+ # @!attribute [rw] status
3044
+ # The current status of the user account.
3045
+ #
3046
+ # * `CREATING` – The user account creation is in progress.
3047
+ #
3048
+ # * `ENABLED` – The user account is created and is currently active.
3049
+ #
3050
+ # * `DISABLED` – The user account is currently inactive.
3051
+ # @return [String]
3052
+ #
3053
+ # @!attribute [rw] first_name
3054
+ # The first name of the user.
3055
+ # @return [String]
3056
+ #
3057
+ # @!attribute [rw] last_name
3058
+ # The last name of the user.
3059
+ # @return [String]
3060
+ #
3061
+ # @!attribute [rw] email_address
3062
+ # The email address of the user. The email address serves as a unique
3063
+ # identifier for each user and cannot be changed after it's created.
3064
+ # @return [String]
3065
+ #
3066
+ # @!attribute [rw] type
3067
+ # Indicates the type of user.
3068
+ #
3069
+ # * `SUPER_USER` – A user with permission to all the functionality and
3070
+ # data in FinSpace.
3071
+ #
3072
+ # * `APP_USER` – A user with specific permissions in FinSpace. The
3073
+ # users are assigned permissions by adding them to a permission
3074
+ # group.
3075
+ # @return [String]
3076
+ #
3077
+ # @!attribute [rw] api_access
3078
+ # Indicates whether the user can access FinSpace API operations.
3079
+ #
3080
+ # * `ENABLED` – The user has permissions to use the API operations.
3081
+ #
3082
+ # * `DISABLED` – The user does not have permissions to use any API
3083
+ # operations.
3084
+ # @return [String]
3085
+ #
3086
+ # @!attribute [rw] api_access_principal_arn
3087
+ # The IAM ARN identifier that is attached to FinSpace API calls.
3088
+ # @return [String]
3089
+ #
3090
+ # @!attribute [rw] membership_status
3091
+ # Indicates the status of the user account within a permission group.
3092
+ #
3093
+ # * `ADDITION_IN_PROGRESS` – The user account is currently being added
3094
+ # to the permission group.
3095
+ #
3096
+ # * `ADDITION_SUCCESS` – The user account is successfully added to the
3097
+ # permission group.
3098
+ #
3099
+ # * `REMOVAL_IN_PROGRESS` – The user is currently being removed from
3100
+ # the permission group.
3101
+ # @return [String]
3102
+ #
3103
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/UserByPermissionGroup AWS API Documentation
3104
+ #
3105
+ class UserByPermissionGroup < Struct.new(
3106
+ :user_id,
3107
+ :status,
3108
+ :first_name,
3109
+ :last_name,
3110
+ :email_address,
3111
+ :type,
3112
+ :api_access,
3113
+ :api_access_principal_arn,
3114
+ :membership_status)
3115
+ SENSITIVE = [:first_name, :last_name, :email_address]
3116
+ include Aws::Structure
3117
+ end
3118
+
2771
3119
  # The input fails to satisfy the constraints specified by an AWS
2772
3120
  # service.
2773
3121
  #
@@ -28,7 +28,7 @@ require_relative 'aws-sdk-finspacedata/customizations'
28
28
  # structure.
29
29
  #
30
30
  # fin_space_data = Aws::FinSpaceData::Client.new
31
- # resp = fin_space_data.create_changeset(params)
31
+ # resp = fin_space_data.associate_user_to_permission_group(params)
32
32
  #
33
33
  # See {Client} for more information.
34
34
  #
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-finspacedata/customizations'
48
48
  # @!group service
49
49
  module Aws::FinSpaceData
50
50
 
51
- GEM_VERSION = '1.15.0'
51
+ GEM_VERSION = '1.16.0'
52
52
 
53
53
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-finspacedata
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.15.0
4
+ version: 1.16.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: 2022-05-12 00:00:00.000000000 Z
11
+ date: 2022-06-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core