aws-sdk-workmail 1.50.0 → 1.52.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -20,6 +20,7 @@ module Aws::WorkMail
20
20
  AccessControlRuleName = Shapes::StringShape.new(name: 'AccessControlRuleName')
21
21
  AccessControlRuleNameList = Shapes::ListShape.new(name: 'AccessControlRuleNameList')
22
22
  AccessControlRulesList = Shapes::ListShape.new(name: 'AccessControlRulesList')
23
+ AccessEffect = Shapes::StringShape.new(name: 'AccessEffect')
23
24
  ActionsList = Shapes::ListShape.new(name: 'ActionsList')
24
25
  Aliases = Shapes::ListShape.new(name: 'Aliases')
25
26
  AmazonResourceName = Shapes::StringShape.new(name: 'AmazonResourceName')
@@ -27,6 +28,8 @@ module Aws::WorkMail
27
28
  AssociateDelegateToResourceResponse = Shapes::StructureShape.new(name: 'AssociateDelegateToResourceResponse')
28
29
  AssociateMemberToGroupRequest = Shapes::StructureShape.new(name: 'AssociateMemberToGroupRequest')
29
30
  AssociateMemberToGroupResponse = Shapes::StructureShape.new(name: 'AssociateMemberToGroupResponse')
31
+ AssumeImpersonationRoleRequest = Shapes::StructureShape.new(name: 'AssumeImpersonationRoleRequest')
32
+ AssumeImpersonationRoleResponse = Shapes::StructureShape.new(name: 'AssumeImpersonationRoleResponse')
30
33
  AvailabilityConfiguration = Shapes::StructureShape.new(name: 'AvailabilityConfiguration')
31
34
  AvailabilityConfigurationList = Shapes::ListShape.new(name: 'AvailabilityConfigurationList')
32
35
  AvailabilityProviderType = Shapes::StringShape.new(name: 'AvailabilityProviderType')
@@ -41,6 +44,8 @@ module Aws::WorkMail
41
44
  CreateAvailabilityConfigurationResponse = Shapes::StructureShape.new(name: 'CreateAvailabilityConfigurationResponse')
42
45
  CreateGroupRequest = Shapes::StructureShape.new(name: 'CreateGroupRequest')
43
46
  CreateGroupResponse = Shapes::StructureShape.new(name: 'CreateGroupResponse')
47
+ CreateImpersonationRoleRequest = Shapes::StructureShape.new(name: 'CreateImpersonationRoleRequest')
48
+ CreateImpersonationRoleResponse = Shapes::StructureShape.new(name: 'CreateImpersonationRoleResponse')
44
49
  CreateMobileDeviceAccessRuleRequest = Shapes::StructureShape.new(name: 'CreateMobileDeviceAccessRuleRequest')
45
50
  CreateMobileDeviceAccessRuleResponse = Shapes::StructureShape.new(name: 'CreateMobileDeviceAccessRuleResponse')
46
51
  CreateOrganizationRequest = Shapes::StructureShape.new(name: 'CreateOrganizationRequest')
@@ -60,6 +65,8 @@ module Aws::WorkMail
60
65
  DeleteEmailMonitoringConfigurationResponse = Shapes::StructureShape.new(name: 'DeleteEmailMonitoringConfigurationResponse')
61
66
  DeleteGroupRequest = Shapes::StructureShape.new(name: 'DeleteGroupRequest')
62
67
  DeleteGroupResponse = Shapes::StructureShape.new(name: 'DeleteGroupResponse')
68
+ DeleteImpersonationRoleRequest = Shapes::StructureShape.new(name: 'DeleteImpersonationRoleRequest')
69
+ DeleteImpersonationRoleResponse = Shapes::StructureShape.new(name: 'DeleteImpersonationRoleResponse')
63
70
  DeleteMailboxPermissionsRequest = Shapes::StructureShape.new(name: 'DeleteMailboxPermissionsRequest')
64
71
  DeleteMailboxPermissionsResponse = Shapes::StructureShape.new(name: 'DeleteMailboxPermissionsResponse')
65
72
  DeleteMobileDeviceAccessOverrideRequest = Shapes::StructureShape.new(name: 'DeleteMobileDeviceAccessOverrideRequest')
@@ -124,6 +131,7 @@ module Aws::WorkMail
124
131
  EntityState = Shapes::StringShape.new(name: 'EntityState')
125
132
  EntityStateException = Shapes::StructureShape.new(name: 'EntityStateException')
126
133
  EwsAvailabilityProvider = Shapes::StructureShape.new(name: 'EwsAvailabilityProvider')
134
+ ExpiresIn = Shapes::IntegerShape.new(name: 'ExpiresIn')
127
135
  ExternalUserName = Shapes::StringShape.new(name: 'ExternalUserName')
128
136
  FolderConfiguration = Shapes::StructureShape.new(name: 'FolderConfiguration')
129
137
  FolderConfigurations = Shapes::ListShape.new(name: 'FolderConfigurations')
@@ -132,6 +140,10 @@ module Aws::WorkMail
132
140
  GetAccessControlEffectResponse = Shapes::StructureShape.new(name: 'GetAccessControlEffectResponse')
133
141
  GetDefaultRetentionPolicyRequest = Shapes::StructureShape.new(name: 'GetDefaultRetentionPolicyRequest')
134
142
  GetDefaultRetentionPolicyResponse = Shapes::StructureShape.new(name: 'GetDefaultRetentionPolicyResponse')
143
+ GetImpersonationRoleEffectRequest = Shapes::StructureShape.new(name: 'GetImpersonationRoleEffectRequest')
144
+ GetImpersonationRoleEffectResponse = Shapes::StructureShape.new(name: 'GetImpersonationRoleEffectResponse')
145
+ GetImpersonationRoleRequest = Shapes::StructureShape.new(name: 'GetImpersonationRoleRequest')
146
+ GetImpersonationRoleResponse = Shapes::StructureShape.new(name: 'GetImpersonationRoleResponse')
135
147
  GetMailDomainRequest = Shapes::StructureShape.new(name: 'GetMailDomainRequest')
136
148
  GetMailDomainResponse = Shapes::StructureShape.new(name: 'GetMailDomainResponse')
137
149
  GetMailboxDetailsRequest = Shapes::StructureShape.new(name: 'GetMailboxDetailsRequest')
@@ -145,6 +157,21 @@ module Aws::WorkMail
145
157
  Groups = Shapes::ListShape.new(name: 'Groups')
146
158
  HostedZoneId = Shapes::StringShape.new(name: 'HostedZoneId')
147
159
  IdempotencyClientToken = Shapes::StringShape.new(name: 'IdempotencyClientToken')
160
+ ImpersonationMatchedRule = Shapes::StructureShape.new(name: 'ImpersonationMatchedRule')
161
+ ImpersonationMatchedRuleList = Shapes::ListShape.new(name: 'ImpersonationMatchedRuleList')
162
+ ImpersonationRole = Shapes::StructureShape.new(name: 'ImpersonationRole')
163
+ ImpersonationRoleDescription = Shapes::StringShape.new(name: 'ImpersonationRoleDescription')
164
+ ImpersonationRoleId = Shapes::StringShape.new(name: 'ImpersonationRoleId')
165
+ ImpersonationRoleIdList = Shapes::ListShape.new(name: 'ImpersonationRoleIdList')
166
+ ImpersonationRoleList = Shapes::ListShape.new(name: 'ImpersonationRoleList')
167
+ ImpersonationRoleName = Shapes::StringShape.new(name: 'ImpersonationRoleName')
168
+ ImpersonationRoleType = Shapes::StringShape.new(name: 'ImpersonationRoleType')
169
+ ImpersonationRule = Shapes::StructureShape.new(name: 'ImpersonationRule')
170
+ ImpersonationRuleDescription = Shapes::StringShape.new(name: 'ImpersonationRuleDescription')
171
+ ImpersonationRuleId = Shapes::StringShape.new(name: 'ImpersonationRuleId')
172
+ ImpersonationRuleList = Shapes::ListShape.new(name: 'ImpersonationRuleList')
173
+ ImpersonationRuleName = Shapes::StringShape.new(name: 'ImpersonationRuleName')
174
+ ImpersonationToken = Shapes::StringShape.new(name: 'ImpersonationToken')
148
175
  InvalidConfigurationException = Shapes::StructureShape.new(name: 'InvalidConfigurationException')
149
176
  InvalidCustomSesConfigurationException = Shapes::StructureShape.new(name: 'InvalidCustomSesConfigurationException')
150
177
  InvalidParameterException = Shapes::StructureShape.new(name: 'InvalidParameterException')
@@ -167,6 +194,8 @@ module Aws::WorkMail
167
194
  ListGroupMembersResponse = Shapes::StructureShape.new(name: 'ListGroupMembersResponse')
168
195
  ListGroupsRequest = Shapes::StructureShape.new(name: 'ListGroupsRequest')
169
196
  ListGroupsResponse = Shapes::StructureShape.new(name: 'ListGroupsResponse')
197
+ ListImpersonationRolesRequest = Shapes::StructureShape.new(name: 'ListImpersonationRolesRequest')
198
+ ListImpersonationRolesResponse = Shapes::StructureShape.new(name: 'ListImpersonationRolesResponse')
170
199
  ListMailDomainsRequest = Shapes::StructureShape.new(name: 'ListMailDomainsRequest')
171
200
  ListMailDomainsResponse = Shapes::StructureShape.new(name: 'ListMailDomainsResponse')
172
201
  ListMailboxExportJobsRequest = Shapes::StructureShape.new(name: 'ListMailboxExportJobsRequest')
@@ -271,6 +300,7 @@ module Aws::WorkMail
271
300
  TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
272
301
  TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
273
302
  TagValue = Shapes::StringShape.new(name: 'TagValue')
303
+ TargetUsers = Shapes::ListShape.new(name: 'TargetUsers')
274
304
  TestAvailabilityConfigurationRequest = Shapes::StructureShape.new(name: 'TestAvailabilityConfigurationRequest')
275
305
  TestAvailabilityConfigurationResponse = Shapes::StructureShape.new(name: 'TestAvailabilityConfigurationResponse')
276
306
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
@@ -282,6 +312,8 @@ module Aws::WorkMail
282
312
  UpdateAvailabilityConfigurationResponse = Shapes::StructureShape.new(name: 'UpdateAvailabilityConfigurationResponse')
283
313
  UpdateDefaultMailDomainRequest = Shapes::StructureShape.new(name: 'UpdateDefaultMailDomainRequest')
284
314
  UpdateDefaultMailDomainResponse = Shapes::StructureShape.new(name: 'UpdateDefaultMailDomainResponse')
315
+ UpdateImpersonationRoleRequest = Shapes::StructureShape.new(name: 'UpdateImpersonationRoleRequest')
316
+ UpdateImpersonationRoleResponse = Shapes::StructureShape.new(name: 'UpdateImpersonationRoleResponse')
285
317
  UpdateMailboxQuotaRequest = Shapes::StructureShape.new(name: 'UpdateMailboxQuotaRequest')
286
318
  UpdateMailboxQuotaResponse = Shapes::StructureShape.new(name: 'UpdateMailboxQuotaResponse')
287
319
  UpdateMobileDeviceAccessRuleRequest = Shapes::StructureShape.new(name: 'UpdateMobileDeviceAccessRuleRequest')
@@ -310,6 +342,8 @@ module Aws::WorkMail
310
342
  AccessControlRule.add_member(:not_user_ids, Shapes::ShapeRef.new(shape: UserIdList, location_name: "NotUserIds"))
311
343
  AccessControlRule.add_member(:date_created, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DateCreated"))
312
344
  AccessControlRule.add_member(:date_modified, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DateModified"))
345
+ AccessControlRule.add_member(:impersonation_role_ids, Shapes::ShapeRef.new(shape: ImpersonationRoleIdList, location_name: "ImpersonationRoleIds"))
346
+ AccessControlRule.add_member(:not_impersonation_role_ids, Shapes::ShapeRef.new(shape: ImpersonationRoleIdList, location_name: "NotImpersonationRoleIds"))
313
347
  AccessControlRule.struct_class = Types::AccessControlRule
314
348
 
315
349
  AccessControlRuleNameList.member = Shapes::ShapeRef.new(shape: AccessControlRuleName)
@@ -334,6 +368,14 @@ module Aws::WorkMail
334
368
 
335
369
  AssociateMemberToGroupResponse.struct_class = Types::AssociateMemberToGroupResponse
336
370
 
371
+ AssumeImpersonationRoleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
372
+ AssumeImpersonationRoleRequest.add_member(:impersonation_role_id, Shapes::ShapeRef.new(shape: ImpersonationRoleId, required: true, location_name: "ImpersonationRoleId"))
373
+ AssumeImpersonationRoleRequest.struct_class = Types::AssumeImpersonationRoleRequest
374
+
375
+ AssumeImpersonationRoleResponse.add_member(:token, Shapes::ShapeRef.new(shape: ImpersonationToken, location_name: "Token"))
376
+ AssumeImpersonationRoleResponse.add_member(:expires_in, Shapes::ShapeRef.new(shape: ExpiresIn, location_name: "ExpiresIn"))
377
+ AssumeImpersonationRoleResponse.struct_class = Types::AssumeImpersonationRoleResponse
378
+
337
379
  AvailabilityConfiguration.add_member(:domain_name, Shapes::ShapeRef.new(shape: DomainName, location_name: "DomainName"))
338
380
  AvailabilityConfiguration.add_member(:provider_type, Shapes::ShapeRef.new(shape: AvailabilityProviderType, location_name: "ProviderType"))
339
381
  AvailabilityConfiguration.add_member(:ews_provider, Shapes::ShapeRef.new(shape: RedactedEwsAvailabilityProvider, location_name: "EwsProvider"))
@@ -379,6 +421,17 @@ module Aws::WorkMail
379
421
  CreateGroupResponse.add_member(:group_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, location_name: "GroupId"))
380
422
  CreateGroupResponse.struct_class = Types::CreateGroupResponse
381
423
 
424
+ CreateImpersonationRoleRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: IdempotencyClientToken, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
425
+ CreateImpersonationRoleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
426
+ CreateImpersonationRoleRequest.add_member(:name, Shapes::ShapeRef.new(shape: ImpersonationRoleName, required: true, location_name: "Name"))
427
+ CreateImpersonationRoleRequest.add_member(:type, Shapes::ShapeRef.new(shape: ImpersonationRoleType, required: true, location_name: "Type"))
428
+ CreateImpersonationRoleRequest.add_member(:description, Shapes::ShapeRef.new(shape: ImpersonationRoleDescription, location_name: "Description"))
429
+ CreateImpersonationRoleRequest.add_member(:rules, Shapes::ShapeRef.new(shape: ImpersonationRuleList, required: true, location_name: "Rules"))
430
+ CreateImpersonationRoleRequest.struct_class = Types::CreateImpersonationRoleRequest
431
+
432
+ CreateImpersonationRoleResponse.add_member(:impersonation_role_id, Shapes::ShapeRef.new(shape: ImpersonationRoleId, location_name: "ImpersonationRoleId"))
433
+ CreateImpersonationRoleResponse.struct_class = Types::CreateImpersonationRoleResponse
434
+
382
435
  CreateMobileDeviceAccessRuleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
383
436
  CreateMobileDeviceAccessRuleRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: IdempotencyClientToken, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
384
437
  CreateMobileDeviceAccessRuleRequest.add_member(:name, Shapes::ShapeRef.new(shape: MobileDeviceAccessRuleName, required: true, location_name: "Name"))
@@ -459,6 +512,12 @@ module Aws::WorkMail
459
512
 
460
513
  DeleteGroupResponse.struct_class = Types::DeleteGroupResponse
461
514
 
515
+ DeleteImpersonationRoleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
516
+ DeleteImpersonationRoleRequest.add_member(:impersonation_role_id, Shapes::ShapeRef.new(shape: ImpersonationRoleId, required: true, location_name: "ImpersonationRoleId"))
517
+ DeleteImpersonationRoleRequest.struct_class = Types::DeleteImpersonationRoleRequest
518
+
519
+ DeleteImpersonationRoleResponse.struct_class = Types::DeleteImpersonationRoleResponse
520
+
462
521
  DeleteMailboxPermissionsRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
463
522
  DeleteMailboxPermissionsRequest.add_member(:entity_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, required: true, location_name: "EntityId"))
464
523
  DeleteMailboxPermissionsRequest.add_member(:grantee_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, required: true, location_name: "GranteeId"))
@@ -674,7 +733,8 @@ module Aws::WorkMail
674
733
  GetAccessControlEffectRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
675
734
  GetAccessControlEffectRequest.add_member(:ip_address, Shapes::ShapeRef.new(shape: IpAddress, required: true, location_name: "IpAddress"))
676
735
  GetAccessControlEffectRequest.add_member(:action, Shapes::ShapeRef.new(shape: AccessControlRuleAction, required: true, location_name: "Action"))
677
- GetAccessControlEffectRequest.add_member(:user_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, required: true, location_name: "UserId"))
736
+ GetAccessControlEffectRequest.add_member(:user_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, location_name: "UserId"))
737
+ GetAccessControlEffectRequest.add_member(:impersonation_role_id, Shapes::ShapeRef.new(shape: ImpersonationRoleId, location_name: "ImpersonationRoleId"))
678
738
  GetAccessControlEffectRequest.struct_class = Types::GetAccessControlEffectRequest
679
739
 
680
740
  GetAccessControlEffectResponse.add_member(:effect, Shapes::ShapeRef.new(shape: AccessControlRuleEffect, location_name: "Effect"))
@@ -690,6 +750,29 @@ module Aws::WorkMail
690
750
  GetDefaultRetentionPolicyResponse.add_member(:folder_configurations, Shapes::ShapeRef.new(shape: FolderConfigurations, location_name: "FolderConfigurations"))
691
751
  GetDefaultRetentionPolicyResponse.struct_class = Types::GetDefaultRetentionPolicyResponse
692
752
 
753
+ GetImpersonationRoleEffectRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
754
+ GetImpersonationRoleEffectRequest.add_member(:impersonation_role_id, Shapes::ShapeRef.new(shape: ImpersonationRoleId, required: true, location_name: "ImpersonationRoleId"))
755
+ GetImpersonationRoleEffectRequest.add_member(:target_user, Shapes::ShapeRef.new(shape: EntityIdentifier, required: true, location_name: "TargetUser"))
756
+ GetImpersonationRoleEffectRequest.struct_class = Types::GetImpersonationRoleEffectRequest
757
+
758
+ GetImpersonationRoleEffectResponse.add_member(:type, Shapes::ShapeRef.new(shape: ImpersonationRoleType, location_name: "Type"))
759
+ GetImpersonationRoleEffectResponse.add_member(:effect, Shapes::ShapeRef.new(shape: AccessEffect, location_name: "Effect"))
760
+ GetImpersonationRoleEffectResponse.add_member(:matched_rules, Shapes::ShapeRef.new(shape: ImpersonationMatchedRuleList, location_name: "MatchedRules"))
761
+ GetImpersonationRoleEffectResponse.struct_class = Types::GetImpersonationRoleEffectResponse
762
+
763
+ GetImpersonationRoleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
764
+ GetImpersonationRoleRequest.add_member(:impersonation_role_id, Shapes::ShapeRef.new(shape: ImpersonationRoleId, required: true, location_name: "ImpersonationRoleId"))
765
+ GetImpersonationRoleRequest.struct_class = Types::GetImpersonationRoleRequest
766
+
767
+ GetImpersonationRoleResponse.add_member(:impersonation_role_id, Shapes::ShapeRef.new(shape: ImpersonationRoleId, location_name: "ImpersonationRoleId"))
768
+ GetImpersonationRoleResponse.add_member(:name, Shapes::ShapeRef.new(shape: ImpersonationRoleName, location_name: "Name"))
769
+ GetImpersonationRoleResponse.add_member(:type, Shapes::ShapeRef.new(shape: ImpersonationRoleType, location_name: "Type"))
770
+ GetImpersonationRoleResponse.add_member(:description, Shapes::ShapeRef.new(shape: ImpersonationRoleDescription, location_name: "Description"))
771
+ GetImpersonationRoleResponse.add_member(:rules, Shapes::ShapeRef.new(shape: ImpersonationRuleList, location_name: "Rules"))
772
+ GetImpersonationRoleResponse.add_member(:date_created, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DateCreated"))
773
+ GetImpersonationRoleResponse.add_member(:date_modified, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DateModified"))
774
+ GetImpersonationRoleResponse.struct_class = Types::GetImpersonationRoleResponse
775
+
693
776
  GetMailDomainRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
694
777
  GetMailDomainRequest.add_member(:domain_name, Shapes::ShapeRef.new(shape: WorkMailDomainName, required: true, location_name: "DomainName"))
695
778
  GetMailDomainRequest.struct_class = Types::GetMailDomainRequest
@@ -743,6 +826,33 @@ module Aws::WorkMail
743
826
 
744
827
  Groups.member = Shapes::ShapeRef.new(shape: Group)
745
828
 
829
+ ImpersonationMatchedRule.add_member(:impersonation_rule_id, Shapes::ShapeRef.new(shape: ImpersonationRuleId, location_name: "ImpersonationRuleId"))
830
+ ImpersonationMatchedRule.add_member(:name, Shapes::ShapeRef.new(shape: ImpersonationRuleName, location_name: "Name"))
831
+ ImpersonationMatchedRule.struct_class = Types::ImpersonationMatchedRule
832
+
833
+ ImpersonationMatchedRuleList.member = Shapes::ShapeRef.new(shape: ImpersonationMatchedRule)
834
+
835
+ ImpersonationRole.add_member(:impersonation_role_id, Shapes::ShapeRef.new(shape: ImpersonationRoleId, location_name: "ImpersonationRoleId"))
836
+ ImpersonationRole.add_member(:name, Shapes::ShapeRef.new(shape: ImpersonationRoleName, location_name: "Name"))
837
+ ImpersonationRole.add_member(:type, Shapes::ShapeRef.new(shape: ImpersonationRoleType, location_name: "Type"))
838
+ ImpersonationRole.add_member(:date_created, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DateCreated"))
839
+ ImpersonationRole.add_member(:date_modified, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DateModified"))
840
+ ImpersonationRole.struct_class = Types::ImpersonationRole
841
+
842
+ ImpersonationRoleIdList.member = Shapes::ShapeRef.new(shape: ImpersonationRoleId)
843
+
844
+ ImpersonationRoleList.member = Shapes::ShapeRef.new(shape: ImpersonationRole)
845
+
846
+ ImpersonationRule.add_member(:impersonation_rule_id, Shapes::ShapeRef.new(shape: ImpersonationRuleId, required: true, location_name: "ImpersonationRuleId"))
847
+ ImpersonationRule.add_member(:name, Shapes::ShapeRef.new(shape: ImpersonationRuleName, location_name: "Name"))
848
+ ImpersonationRule.add_member(:description, Shapes::ShapeRef.new(shape: ImpersonationRuleDescription, location_name: "Description"))
849
+ ImpersonationRule.add_member(:effect, Shapes::ShapeRef.new(shape: AccessEffect, required: true, location_name: "Effect"))
850
+ ImpersonationRule.add_member(:target_users, Shapes::ShapeRef.new(shape: TargetUsers, location_name: "TargetUsers"))
851
+ ImpersonationRule.add_member(:not_target_users, Shapes::ShapeRef.new(shape: TargetUsers, location_name: "NotTargetUsers"))
852
+ ImpersonationRule.struct_class = Types::ImpersonationRule
853
+
854
+ ImpersonationRuleList.member = Shapes::ShapeRef.new(shape: ImpersonationRule)
855
+
746
856
  InvalidConfigurationException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
747
857
  InvalidConfigurationException.struct_class = Types::InvalidConfigurationException
748
858
 
@@ -809,6 +919,15 @@ module Aws::WorkMail
809
919
  ListGroupsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
810
920
  ListGroupsResponse.struct_class = Types::ListGroupsResponse
811
921
 
922
+ ListImpersonationRolesRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
923
+ ListImpersonationRolesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
924
+ ListImpersonationRolesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults"))
925
+ ListImpersonationRolesRequest.struct_class = Types::ListImpersonationRolesRequest
926
+
927
+ ListImpersonationRolesResponse.add_member(:roles, Shapes::ShapeRef.new(shape: ImpersonationRoleList, location_name: "Roles"))
928
+ ListImpersonationRolesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
929
+ ListImpersonationRolesResponse.struct_class = Types::ListImpersonationRolesResponse
930
+
812
931
  ListMailDomainsRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
813
932
  ListMailDomainsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults"))
814
933
  ListMailDomainsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
@@ -1003,6 +1122,8 @@ module Aws::WorkMail
1003
1122
  PutAccessControlRuleRequest.add_member(:user_ids, Shapes::ShapeRef.new(shape: UserIdList, location_name: "UserIds"))
1004
1123
  PutAccessControlRuleRequest.add_member(:not_user_ids, Shapes::ShapeRef.new(shape: UserIdList, location_name: "NotUserIds"))
1005
1124
  PutAccessControlRuleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
1125
+ PutAccessControlRuleRequest.add_member(:impersonation_role_ids, Shapes::ShapeRef.new(shape: ImpersonationRoleIdList, location_name: "ImpersonationRoleIds"))
1126
+ PutAccessControlRuleRequest.add_member(:not_impersonation_role_ids, Shapes::ShapeRef.new(shape: ImpersonationRoleIdList, location_name: "NotImpersonationRoleIds"))
1006
1127
  PutAccessControlRuleRequest.struct_class = Types::PutAccessControlRuleRequest
1007
1128
 
1008
1129
  PutAccessControlRuleResponse.struct_class = Types::PutAccessControlRuleResponse
@@ -1117,6 +1238,8 @@ module Aws::WorkMail
1117
1238
 
1118
1239
  TagResourceResponse.struct_class = Types::TagResourceResponse
1119
1240
 
1241
+ TargetUsers.member = Shapes::ShapeRef.new(shape: EntityIdentifier)
1242
+
1120
1243
  TestAvailabilityConfigurationRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
1121
1244
  TestAvailabilityConfigurationRequest.add_member(:domain_name, Shapes::ShapeRef.new(shape: DomainName, location_name: "DomainName"))
1122
1245
  TestAvailabilityConfigurationRequest.add_member(:ews_provider, Shapes::ShapeRef.new(shape: EwsAvailabilityProvider, location_name: "EwsProvider"))
@@ -1153,6 +1276,16 @@ module Aws::WorkMail
1153
1276
 
1154
1277
  UpdateDefaultMailDomainResponse.struct_class = Types::UpdateDefaultMailDomainResponse
1155
1278
 
1279
+ UpdateImpersonationRoleRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
1280
+ UpdateImpersonationRoleRequest.add_member(:impersonation_role_id, Shapes::ShapeRef.new(shape: ImpersonationRoleId, required: true, location_name: "ImpersonationRoleId"))
1281
+ UpdateImpersonationRoleRequest.add_member(:name, Shapes::ShapeRef.new(shape: ImpersonationRoleName, required: true, location_name: "Name"))
1282
+ UpdateImpersonationRoleRequest.add_member(:type, Shapes::ShapeRef.new(shape: ImpersonationRoleType, required: true, location_name: "Type"))
1283
+ UpdateImpersonationRoleRequest.add_member(:description, Shapes::ShapeRef.new(shape: ImpersonationRoleDescription, location_name: "Description"))
1284
+ UpdateImpersonationRoleRequest.add_member(:rules, Shapes::ShapeRef.new(shape: ImpersonationRuleList, required: true, location_name: "Rules"))
1285
+ UpdateImpersonationRoleRequest.struct_class = Types::UpdateImpersonationRoleRequest
1286
+
1287
+ UpdateImpersonationRoleResponse.struct_class = Types::UpdateImpersonationRoleResponse
1288
+
1156
1289
  UpdateMailboxQuotaRequest.add_member(:organization_id, Shapes::ShapeRef.new(shape: OrganizationId, required: true, location_name: "OrganizationId"))
1157
1290
  UpdateMailboxQuotaRequest.add_member(:user_id, Shapes::ShapeRef.new(shape: WorkMailIdentifier, required: true, location_name: "UserId"))
1158
1291
  UpdateMailboxQuotaRequest.add_member(:mailbox_quota, Shapes::ShapeRef.new(shape: MailboxQuota, required: true, location_name: "MailboxQuota"))
@@ -1253,6 +1386,18 @@ module Aws::WorkMail
1253
1386
  o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
1254
1387
  end)
1255
1388
 
1389
+ api.add_operation(:assume_impersonation_role, Seahorse::Model::Operation.new.tap do |o|
1390
+ o.name = "AssumeImpersonationRole"
1391
+ o.http_method = "POST"
1392
+ o.http_request_uri = "/"
1393
+ o.input = Shapes::ShapeRef.new(shape: AssumeImpersonationRoleRequest)
1394
+ o.output = Shapes::ShapeRef.new(shape: AssumeImpersonationRoleResponse)
1395
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1396
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1397
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1398
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1399
+ end)
1400
+
1256
1401
  api.add_operation(:cancel_mailbox_export_job, Seahorse::Model::Operation.new.tap do |o|
1257
1402
  o.name = "CancelMailboxExportJob"
1258
1403
  o.http_method = "POST"
@@ -1311,6 +1456,20 @@ module Aws::WorkMail
1311
1456
  o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
1312
1457
  end)
1313
1458
 
1459
+ api.add_operation(:create_impersonation_role, Seahorse::Model::Operation.new.tap do |o|
1460
+ o.name = "CreateImpersonationRole"
1461
+ o.http_method = "POST"
1462
+ o.http_request_uri = "/"
1463
+ o.input = Shapes::ShapeRef.new(shape: CreateImpersonationRoleRequest)
1464
+ o.output = Shapes::ShapeRef.new(shape: CreateImpersonationRoleResponse)
1465
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1466
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1467
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1468
+ o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
1469
+ o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
1470
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1471
+ end)
1472
+
1314
1473
  api.add_operation(:create_mobile_device_access_rule, Seahorse::Model::Operation.new.tap do |o|
1315
1474
  o.name = "CreateMobileDeviceAccessRule"
1316
1475
  o.http_method = "POST"
@@ -1427,6 +1586,17 @@ module Aws::WorkMail
1427
1586
  o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
1428
1587
  end)
1429
1588
 
1589
+ api.add_operation(:delete_impersonation_role, Seahorse::Model::Operation.new.tap do |o|
1590
+ o.name = "DeleteImpersonationRole"
1591
+ o.http_method = "POST"
1592
+ o.http_request_uri = "/"
1593
+ o.input = Shapes::ShapeRef.new(shape: DeleteImpersonationRoleRequest)
1594
+ o.output = Shapes::ShapeRef.new(shape: DeleteImpersonationRoleResponse)
1595
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1596
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1597
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1598
+ end)
1599
+
1430
1600
  api.add_operation(:delete_mailbox_permissions, Seahorse::Model::Operation.new.tap do |o|
1431
1601
  o.name = "DeleteMailboxPermissions"
1432
1602
  o.http_method = "POST"
@@ -1654,6 +1824,7 @@ module Aws::WorkMail
1654
1824
  o.input = Shapes::ShapeRef.new(shape: GetAccessControlEffectRequest)
1655
1825
  o.output = Shapes::ShapeRef.new(shape: GetAccessControlEffectResponse)
1656
1826
  o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
1827
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1657
1828
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1658
1829
  o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1659
1830
  o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
@@ -1671,6 +1842,32 @@ module Aws::WorkMail
1671
1842
  o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
1672
1843
  end)
1673
1844
 
1845
+ api.add_operation(:get_impersonation_role, Seahorse::Model::Operation.new.tap do |o|
1846
+ o.name = "GetImpersonationRole"
1847
+ o.http_method = "POST"
1848
+ o.http_request_uri = "/"
1849
+ o.input = Shapes::ShapeRef.new(shape: GetImpersonationRoleRequest)
1850
+ o.output = Shapes::ShapeRef.new(shape: GetImpersonationRoleResponse)
1851
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1852
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1853
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1854
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1855
+ end)
1856
+
1857
+ api.add_operation(:get_impersonation_role_effect, Seahorse::Model::Operation.new.tap do |o|
1858
+ o.name = "GetImpersonationRoleEffect"
1859
+ o.http_method = "POST"
1860
+ o.http_request_uri = "/"
1861
+ o.input = Shapes::ShapeRef.new(shape: GetImpersonationRoleEffectRequest)
1862
+ o.output = Shapes::ShapeRef.new(shape: GetImpersonationRoleEffectResponse)
1863
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1864
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1865
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1866
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1867
+ o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
1868
+ o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
1869
+ end)
1870
+
1674
1871
  api.add_operation(:get_mail_domain, Seahorse::Model::Operation.new.tap do |o|
1675
1872
  o.name = "GetMailDomain"
1676
1873
  o.http_method = "POST"
@@ -1800,6 +1997,23 @@ module Aws::WorkMail
1800
1997
  )
1801
1998
  end)
1802
1999
 
2000
+ api.add_operation(:list_impersonation_roles, Seahorse::Model::Operation.new.tap do |o|
2001
+ o.name = "ListImpersonationRoles"
2002
+ o.http_method = "POST"
2003
+ o.http_request_uri = "/"
2004
+ o.input = Shapes::ShapeRef.new(shape: ListImpersonationRolesRequest)
2005
+ o.output = Shapes::ShapeRef.new(shape: ListImpersonationRolesResponse)
2006
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
2007
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
2008
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
2009
+ o[:pager] = Aws::Pager.new(
2010
+ limit_key: "max_results",
2011
+ tokens: {
2012
+ "next_token" => "next_token"
2013
+ }
2014
+ )
2015
+ end)
2016
+
1803
2017
  api.add_operation(:list_mail_domains, Seahorse::Model::Operation.new.tap do |o|
1804
2018
  o.name = "ListMailDomains"
1805
2019
  o.http_method = "POST"
@@ -1967,6 +2181,7 @@ module Aws::WorkMail
1967
2181
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1968
2182
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1969
2183
  o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
2184
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1970
2185
  o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
1971
2186
  o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
1972
2187
  end)
@@ -2150,6 +2365,21 @@ module Aws::WorkMail
2150
2365
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
2151
2366
  end)
2152
2367
 
2368
+ api.add_operation(:update_impersonation_role, Seahorse::Model::Operation.new.tap do |o|
2369
+ o.name = "UpdateImpersonationRole"
2370
+ o.http_method = "POST"
2371
+ o.http_request_uri = "/"
2372
+ o.input = Shapes::ShapeRef.new(shape: UpdateImpersonationRoleRequest)
2373
+ o.output = Shapes::ShapeRef.new(shape: UpdateImpersonationRoleResponse)
2374
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
2375
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotFoundException)
2376
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationStateException)
2377
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
2378
+ o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
2379
+ o.errors << Shapes::ShapeRef.new(shape: EntityStateException)
2380
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
2381
+ end)
2382
+
2153
2383
  api.add_operation(:update_mailbox_quota, Seahorse::Model::Operation.new.tap do |o|
2154
2384
  o.name = "UpdateMailboxQuota"
2155
2385
  o.http_method = "POST"
@@ -0,0 +1,66 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::WorkMail
11
+ # Endpoint parameters used to influence endpoints per request.
12
+ #
13
+ # @!attribute region
14
+ # The AWS region used to dispatch the request.
15
+ #
16
+ # @return [String]
17
+ #
18
+ # @!attribute use_dual_stack
19
+ # When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
20
+ #
21
+ # @return [Boolean]
22
+ #
23
+ # @!attribute use_fips
24
+ # When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
25
+ #
26
+ # @return [Boolean]
27
+ #
28
+ # @!attribute endpoint
29
+ # Override the endpoint used to send this request
30
+ #
31
+ # @return [String]
32
+ #
33
+ EndpointParameters = Struct.new(
34
+ :region,
35
+ :use_dual_stack,
36
+ :use_fips,
37
+ :endpoint,
38
+ ) do
39
+ include Aws::Structure
40
+
41
+ # @api private
42
+ class << self
43
+ PARAM_MAP = {
44
+ 'Region' => :region,
45
+ 'UseDualStack' => :use_dual_stack,
46
+ 'UseFIPS' => :use_fips,
47
+ 'Endpoint' => :endpoint,
48
+ }.freeze
49
+ end
50
+
51
+ def initialize(options = {})
52
+ self[:region] = options[:region]
53
+ self[:use_dual_stack] = options[:use_dual_stack]
54
+ self[:use_dual_stack] = false if self[:use_dual_stack].nil?
55
+ if self[:use_dual_stack].nil?
56
+ raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
57
+ end
58
+ self[:use_fips] = options[:use_fips]
59
+ self[:use_fips] = false if self[:use_fips].nil?
60
+ if self[:use_fips].nil?
61
+ raise ArgumentError, "Missing required EndpointParameter: :use_fips"
62
+ end
63
+ self[:endpoint] = options[:endpoint]
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,111 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::WorkMail
11
+ class EndpointProvider
12
+ def initialize(rule_set = nil)
13
+ @@rule_set ||= begin
14
+ endpoint_rules = Aws::Json.load(Base64.decode64(RULES))
15
+ Aws::Endpoints::RuleSet.new(
16
+ version: endpoint_rules['version'],
17
+ service_id: endpoint_rules['serviceId'],
18
+ parameters: endpoint_rules['parameters'],
19
+ rules: endpoint_rules['rules']
20
+ )
21
+ end
22
+ @provider = Aws::Endpoints::RulesProvider.new(rule_set || @@rule_set)
23
+ end
24
+
25
+ def resolve_endpoint(parameters)
26
+ @provider.resolve_endpoint(parameters)
27
+ end
28
+
29
+ # @api private
30
+ RULES = <<-JSON
31
+ eyJ2ZXJzaW9uIjoiMS4wIiwicGFyYW1ldGVycyI6eyJSZWdpb24iOnsiYnVp
32
+ bHRJbiI6IkFXUzo6UmVnaW9uIiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1bWVu
33
+ dGF0aW9uIjoiVGhlIEFXUyByZWdpb24gdXNlZCB0byBkaXNwYXRjaCB0aGUg
34
+ cmVxdWVzdC4iLCJ0eXBlIjoiU3RyaW5nIn0sIlVzZUR1YWxTdGFjayI6eyJi
35
+ dWlsdEluIjoiQVdTOjpVc2VEdWFsU3RhY2siLCJyZXF1aXJlZCI6dHJ1ZSwi
36
+ ZGVmYXVsdCI6ZmFsc2UsImRvY3VtZW50YXRpb24iOiJXaGVuIHRydWUsIHVz
37
+ ZSB0aGUgZHVhbC1zdGFjayBlbmRwb2ludC4gSWYgdGhlIGNvbmZpZ3VyZWQg
38
+ ZW5kcG9pbnQgZG9lcyBub3Qgc3VwcG9ydCBkdWFsLXN0YWNrLCBkaXNwYXRj
39
+ aGluZyB0aGUgcmVxdWVzdCBNQVkgcmV0dXJuIGFuIGVycm9yLiIsInR5cGUi
40
+ OiJCb29sZWFuIn0sIlVzZUZJUFMiOnsiYnVpbHRJbiI6IkFXUzo6VXNlRklQ
41
+ UyIsInJlcXVpcmVkIjp0cnVlLCJkZWZhdWx0IjpmYWxzZSwiZG9jdW1lbnRh
42
+ dGlvbiI6IldoZW4gdHJ1ZSwgc2VuZCB0aGlzIHJlcXVlc3QgdG8gdGhlIEZJ
43
+ UFMtY29tcGxpYW50IHJlZ2lvbmFsIGVuZHBvaW50LiBJZiB0aGUgY29uZmln
44
+ dXJlZCBlbmRwb2ludCBkb2VzIG5vdCBoYXZlIGEgRklQUyBjb21wbGlhbnQg
45
+ ZW5kcG9pbnQsIGRpc3BhdGNoaW5nIHRoZSByZXF1ZXN0IHdpbGwgcmV0dXJu
46
+ IGFuIGVycm9yLiIsInR5cGUiOiJCb29sZWFuIn0sIkVuZHBvaW50Ijp7ImJ1
47
+ aWx0SW4iOiJTREs6OkVuZHBvaW50IiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1
48
+ bWVudGF0aW9uIjoiT3ZlcnJpZGUgdGhlIGVuZHBvaW50IHVzZWQgdG8gc2Vu
49
+ ZCB0aGlzIHJlcXVlc3QiLCJ0eXBlIjoiU3RyaW5nIn19LCJydWxlcyI6W3si
50
+ Y29uZGl0aW9ucyI6W3siZm4iOiJhd3MucGFydGl0aW9uIiwiYXJndiI6W3si
51
+ cmVmIjoiUmVnaW9uIn1dLCJhc3NpZ24iOiJQYXJ0aXRpb25SZXN1bHQifV0s
52
+ InR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoi
53
+ aXNTZXQiLCJhcmd2IjpbeyJyZWYiOiJFbmRwb2ludCJ9XX0seyJmbiI6InBh
54
+ cnNlVVJMIiwiYXJndiI6W3sicmVmIjoiRW5kcG9pbnQifV0sImFzc2lnbiI6
55
+ InVybCJ9XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6
56
+ W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQ
57
+ UyJ9LHRydWVdfV0sImVycm9yIjoiSW52YWxpZCBDb25maWd1cmF0aW9uOiBG
58
+ SVBTIGFuZCBjdXN0b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0
59
+ eXBlIjoiZXJyb3IifSx7ImNvbmRpdGlvbnMiOltdLCJ0eXBlIjoidHJlZSIs
60
+ InJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMi
61
+ LCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJlcnJv
62
+ ciI6IkludmFsaWQgQ29uZmlndXJhdGlvbjogRHVhbHN0YWNrIGFuZCBjdXN0
63
+ b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0eXBlIjoiZXJyb3Ii
64
+ fSx7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOnsicmVmIjoi
65
+ RW5kcG9pbnQifSwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlw
66
+ ZSI6ImVuZHBvaW50In1dfV19LHsiY29uZGl0aW9ucyI6W3siZm4iOiJib29s
67
+ ZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQUyJ9LHRydWVdfSx7
68
+ ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUR1YWxT
69
+ dGFjayJ9LHRydWVdfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRp
70
+ dGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsi
71
+ Zm4iOiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0
72
+ In0sInN1cHBvcnRzRklQUyJdfV19LHsiZm4iOiJib29sZWFuRXF1YWxzIiwi
73
+ YXJndiI6W3RydWUseyJmbiI6ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQ
74
+ YXJ0aXRpb25SZXN1bHQifSwic3VwcG9ydHNEdWFsU3RhY2siXX1dfV0sInR5
75
+ cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2lu
76
+ dCI6eyJ1cmwiOiJodHRwczovL3dvcmttYWlsLWZpcHMue1JlZ2lvbn0ue1Bh
77
+ cnRpdGlvblJlc3VsdCNkdWFsU3RhY2tEbnNTdWZmaXh9IiwicHJvcGVydGll
78
+ cyI6e30sImhlYWRlcnMiOnt9fSwidHlwZSI6ImVuZHBvaW50In1dfSx7ImNv
79
+ bmRpdGlvbnMiOltdLCJlcnJvciI6IkZJUFMgYW5kIER1YWxTdGFjayBhcmUg
80
+ ZW5hYmxlZCwgYnV0IHRoaXMgcGFydGl0aW9uIGRvZXMgbm90IHN1cHBvcnQg
81
+ b25lIG9yIGJvdGgiLCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0aW9ucyI6
82
+ W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQ
83
+ UyJ9LHRydWVdfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlv
84
+ bnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsiZm4i
85
+ OiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0In0s
86
+ InN1cHBvcnRzRklQUyJdfV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3si
87
+ Y29uZGl0aW9ucyI6W10sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRp
88
+ dGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOiJodHRwczovL3dvcmttYWls
89
+ LWZpcHMue1JlZ2lvbn0ue1BhcnRpdGlvblJlc3VsdCNkbnNTdWZmaXh9Iiwi
90
+ cHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlwZSI6ImVuZHBvaW50
91
+ In1dfV19LHsiY29uZGl0aW9ucyI6W10sImVycm9yIjoiRklQUyBpcyBlbmFi
92
+ bGVkIGJ1dCB0aGlzIHBhcnRpdGlvbiBkb2VzIG5vdCBzdXBwb3J0IEZJUFMi
93
+ LCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0aW9ucyI6W3siZm4iOiJib29s
94
+ ZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRHVhbFN0YWNrIn0sdHJ1
95
+ ZV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6W3si
96
+ Zm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3RydWUseyJmbiI6ImdldEF0
97
+ dHIiLCJhcmd2IjpbeyJyZWYiOiJQYXJ0aXRpb25SZXN1bHQifSwic3VwcG9y
98
+ dHNEdWFsU3RhY2siXX1dfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNv
99
+ bmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOiJodHRwczovL3dvcmtt
100
+ YWlsLntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZHVhbFN0YWNrRG5zU3Vm
101
+ Zml4fSIsInByb3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJl
102
+ bmRwb2ludCJ9XX0seyJjb25kaXRpb25zIjpbXSwiZXJyb3IiOiJEdWFsU3Rh
103
+ Y2sgaXMgZW5hYmxlZCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qgc3Vw
104
+ cG9ydCBEdWFsU3RhY2siLCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0aW9u
105
+ cyI6W10sImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vd29ya21haWwue1Jl
106
+ Z2lvbn0ue1BhcnRpdGlvblJlc3VsdCNkbnNTdWZmaXh9IiwicHJvcGVydGll
107
+ cyI6e30sImhlYWRlcnMiOnt9fSwidHlwZSI6ImVuZHBvaW50In1dfV19
108
+
109
+ JSON
110
+ end
111
+ end