aws-sdk-organizations 1.0.0.rc1

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.
File without changes
@@ -0,0 +1,14 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::Organizations
9
+ module Errors
10
+
11
+ extend Aws::Errors::DynamicErrors
12
+
13
+ end
14
+ end
@@ -0,0 +1,23 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::Organizations
9
+ class Resource
10
+
11
+ # @param options ({})
12
+ # @option options [Client] :client
13
+ def initialize(options = {})
14
+ @client = options[:client] || Client.new(options)
15
+ end
16
+
17
+ # @return [Client]
18
+ def client
19
+ @client
20
+ end
21
+
22
+ end
23
+ end
@@ -0,0 +1,2743 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::Organizations
9
+ module Types
10
+
11
+ # @note When making an API call, you may pass AcceptHandshakeRequest
12
+ # data as a hash:
13
+ #
14
+ # {
15
+ # handshake_id: "HandshakeId", # required
16
+ # }
17
+ #
18
+ # @!attribute [rw] handshake_id
19
+ # The unique identifier (ID) of the handshake that you want to accept.
20
+ #
21
+ # The [regex pattern][1] for handshake ID string requires "h-"
22
+ # followed by from 8 to 32 lower-case letters or digits.
23
+ #
24
+ #
25
+ #
26
+ # [1]: http://wikipedia.org/wiki/regex
27
+ # @return [String]
28
+ #
29
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/AcceptHandshakeRequest AWS API Documentation
30
+ #
31
+ class AcceptHandshakeRequest < Struct.new(
32
+ :handshake_id)
33
+ include Aws::Structure
34
+ end
35
+
36
+ # @!attribute [rw] handshake
37
+ # A structure that contains details about the accepted handshake.
38
+ # @return [Types::Handshake]
39
+ #
40
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/AcceptHandshakeResponse AWS API Documentation
41
+ #
42
+ class AcceptHandshakeResponse < Struct.new(
43
+ :handshake)
44
+ include Aws::Structure
45
+ end
46
+
47
+ # Contains information about an AWS account that is a member of an
48
+ # organization.
49
+ #
50
+ # @!attribute [rw] id
51
+ # The unique identifier (ID) of the account.
52
+ #
53
+ # The [regex pattern][1] for an account ID string requires exactly 12
54
+ # digits.
55
+ #
56
+ #
57
+ #
58
+ # [1]: http://wikipedia.org/wiki/regex
59
+ # @return [String]
60
+ #
61
+ # @!attribute [rw] arn
62
+ # The Amazon Resource Name (ARN) of the account.
63
+ #
64
+ # For more information about ARNs in Organizations, see [ARN Formats
65
+ # Supported by Organizations][1] in the *AWS Organizations User
66
+ # Guide*.
67
+ #
68
+ #
69
+ #
70
+ # [1]: http://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns
71
+ # @return [String]
72
+ #
73
+ # @!attribute [rw] name
74
+ # The friendly name of the account.
75
+ #
76
+ # The [regex pattern][1] that is used to validate this parameter is a
77
+ # string of any of the characters in the ASCII character range.
78
+ #
79
+ #
80
+ #
81
+ # [1]: http://wikipedia.org/wiki/regex
82
+ # @return [String]
83
+ #
84
+ # @!attribute [rw] status
85
+ # The status of the account in the organization.
86
+ # @return [String]
87
+ #
88
+ # @!attribute [rw] joined_method
89
+ # The method by which the account joined the organization.
90
+ # @return [String]
91
+ #
92
+ # @!attribute [rw] joined_timestamp
93
+ # The date the account became a part of the organization.
94
+ # @return [Time]
95
+ #
96
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/Account AWS API Documentation
97
+ #
98
+ class Account < Struct.new(
99
+ :id,
100
+ :arn,
101
+ :name,
102
+ :status,
103
+ :joined_method,
104
+ :joined_timestamp)
105
+ include Aws::Structure
106
+ end
107
+
108
+ # @note When making an API call, you may pass AttachPolicyRequest
109
+ # data as a hash:
110
+ #
111
+ # {
112
+ # policy_id: "PolicyId", # required
113
+ # target_id: "PolicyTargetId", # required
114
+ # }
115
+ #
116
+ # @!attribute [rw] policy_id
117
+ # The unique identifier (ID) of the policy that you want to attach to
118
+ # the target. You can get the ID for the policy by calling the
119
+ # ListPolicies operation.
120
+ #
121
+ # The [regex pattern][1] for a policy ID string requires "p-"
122
+ # followed by from 8 to 128 lower-case letters or digits.
123
+ #
124
+ #
125
+ #
126
+ # [1]: http://wikipedia.org/wiki/regex
127
+ # @return [String]
128
+ #
129
+ # @!attribute [rw] target_id
130
+ # The unique identifier (ID) of the root, OU, or account that you want
131
+ # to attach the policy to. You can get the ID by calling the
132
+ # ListRoots, ListOrganizationalUnitsForParent, or ListAccounts
133
+ # operations.
134
+ #
135
+ # The [regex pattern][1] for a target ID string requires one of the
136
+ # following:
137
+ #
138
+ # * Root: a string that begins with "r-" followed by from 4 to 32
139
+ # lower-case letters or digits.
140
+ #
141
+ # * Account: a string that consists of exactly 12 digits.
142
+ #
143
+ # * Organizational unit (OU): a string that begins with "ou-"
144
+ # followed by from 4 to 32 lower-case letters or digits (the ID of
145
+ # the root that the OU is in) followed by a second "-" dash and
146
+ # from 8 to 32 additional lower-case letters or digits.
147
+ #
148
+ #
149
+ #
150
+ # [1]: http://wikipedia.org/wiki/regex
151
+ # @return [String]
152
+ #
153
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/AttachPolicyRequest AWS API Documentation
154
+ #
155
+ class AttachPolicyRequest < Struct.new(
156
+ :policy_id,
157
+ :target_id)
158
+ include Aws::Structure
159
+ end
160
+
161
+ # @note When making an API call, you may pass CancelHandshakeRequest
162
+ # data as a hash:
163
+ #
164
+ # {
165
+ # handshake_id: "HandshakeId", # required
166
+ # }
167
+ #
168
+ # @!attribute [rw] handshake_id
169
+ # The unique identifier (ID) of the handshake that you want to cancel.
170
+ # You can get the ID from the ListHandshakesForOrganization operation.
171
+ #
172
+ # The [regex pattern][1] for handshake ID string requires "h-"
173
+ # followed by from 8 to 32 lower-case letters or digits.
174
+ #
175
+ #
176
+ #
177
+ # [1]: http://wikipedia.org/wiki/regex
178
+ # @return [String]
179
+ #
180
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/CancelHandshakeRequest AWS API Documentation
181
+ #
182
+ class CancelHandshakeRequest < Struct.new(
183
+ :handshake_id)
184
+ include Aws::Structure
185
+ end
186
+
187
+ # @!attribute [rw] handshake
188
+ # A structure that contains details about the handshake that you
189
+ # canceled.
190
+ # @return [Types::Handshake]
191
+ #
192
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/CancelHandshakeResponse AWS API Documentation
193
+ #
194
+ class CancelHandshakeResponse < Struct.new(
195
+ :handshake)
196
+ include Aws::Structure
197
+ end
198
+
199
+ # Contains a list of child entities, either OUs or accounts.
200
+ #
201
+ # @!attribute [rw] id
202
+ # The unique identifier (ID) of this child entity.
203
+ #
204
+ # The [regex pattern][1] for a child ID string requires one of the
205
+ # following:
206
+ #
207
+ # * Account: a string that consists of exactly 12 digits.
208
+ #
209
+ # * Organizational unit (OU): a string that begins with "ou-"
210
+ # followed by from 4 to 32 lower-case letters or digits (the ID of
211
+ # the root that contains the OU) followed by a second "-" dash and
212
+ # from 8 to 32 additional lower-case letters or digits.
213
+ #
214
+ #
215
+ #
216
+ # [1]: http://wikipedia.org/wiki/regex
217
+ # @return [String]
218
+ #
219
+ # @!attribute [rw] type
220
+ # The type of this child entity.
221
+ # @return [String]
222
+ #
223
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/Child AWS API Documentation
224
+ #
225
+ class Child < Struct.new(
226
+ :id,
227
+ :type)
228
+ include Aws::Structure
229
+ end
230
+
231
+ # @note When making an API call, you may pass CreateAccountRequest
232
+ # data as a hash:
233
+ #
234
+ # {
235
+ # email: "Email", # required
236
+ # account_name: "AccountName", # required
237
+ # role_name: "RoleName",
238
+ # iam_user_access_to_billing: "ALLOW", # accepts ALLOW, DENY
239
+ # }
240
+ #
241
+ # @!attribute [rw] email
242
+ # The email address of the owner to assign to the new member account.
243
+ # This email address must not already be associated with another AWS
244
+ # account.
245
+ # @return [String]
246
+ #
247
+ # @!attribute [rw] account_name
248
+ # The friendly name of the member account.
249
+ # @return [String]
250
+ #
251
+ # @!attribute [rw] role_name
252
+ # (Optional)
253
+ #
254
+ # The name of an IAM role that Organizations automatically
255
+ # preconfigures in the new member account. This role trusts the master
256
+ # account, allowing users in the master account to assume the role, as
257
+ # permitted by the master account administrator. The role has
258
+ # administrator permissions in the new member account.
259
+ #
260
+ # If you do not specify this parameter, the role name defaults to
261
+ # `OrganizationAccountAccessRole`.
262
+ #
263
+ # For more information about how to use this role to access the member
264
+ # account, see [Accessing and Administering the Member Accounts in
265
+ # Your Organization][1] in the *AWS Organizations User Guide*, and
266
+ # steps 2 and 3 in [Tutorial: Delegate Access Across AWS Accounts
267
+ # Using IAM Roles][2] in the *IAM User Guide*.
268
+ #
269
+ # The [regex pattern][3] that is used to validate this parameter is a
270
+ # string of characters that can consist of uppercase letters,
271
+ # lowercase letters, digits with no spaces, and any of the following
272
+ # characters: =,.@-
273
+ #
274
+ #
275
+ #
276
+ # [1]: http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_access.html#orgs_manage_accounts_create-cross-account-role
277
+ # [2]: http://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html
278
+ # [3]: http://wikipedia.org/wiki/regex
279
+ # @return [String]
280
+ #
281
+ # @!attribute [rw] iam_user_access_to_billing
282
+ # If set to `ALLOW`, the new account enables IAM users to access
283
+ # account billing information *if* they have the required permissions.
284
+ # If set to `DENY`, then only the root user of the new account can
285
+ # access account billing information. For more information, see
286
+ # [Activating Access to the Billing and Cost Management Console][1] in
287
+ # the *AWS Billing and Cost Management User Guide*.
288
+ #
289
+ #
290
+ #
291
+ # [1]: http://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/grantaccess.html#ControllingAccessWebsite-Activate
292
+ # @return [String]
293
+ #
294
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/CreateAccountRequest AWS API Documentation
295
+ #
296
+ class CreateAccountRequest < Struct.new(
297
+ :email,
298
+ :account_name,
299
+ :role_name,
300
+ :iam_user_access_to_billing)
301
+ include Aws::Structure
302
+ end
303
+
304
+ # @!attribute [rw] create_account_status
305
+ # A structure that contains details about the request to create an
306
+ # account. This response structure might not be fully populated when
307
+ # you first receive it because account creation is an asynchronous
308
+ # process. You can pass the returned CreateAccountStatus ID as a
309
+ # parameter to ` DescribeCreateAccountStatus ` to get status about the
310
+ # progress of the request at later times.
311
+ # @return [Types::CreateAccountStatus]
312
+ #
313
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/CreateAccountResponse AWS API Documentation
314
+ #
315
+ class CreateAccountResponse < Struct.new(
316
+ :create_account_status)
317
+ include Aws::Structure
318
+ end
319
+
320
+ # Contains the status about a CreateAccount request to create an AWS
321
+ # account in an organization.
322
+ #
323
+ # @!attribute [rw] id
324
+ # The unique identifier (ID) that references this request. You get
325
+ # this value from the response of the initial CreateAccount request to
326
+ # create the account.
327
+ #
328
+ # The [regex pattern][1] for an create account request ID string
329
+ # requires "car-" followed by from 8 to 32 lower-case letters or
330
+ # digits.
331
+ #
332
+ #
333
+ #
334
+ # [1]: http://wikipedia.org/wiki/regex
335
+ # @return [String]
336
+ #
337
+ # @!attribute [rw] account_name
338
+ # The account name given to the account when it was created.
339
+ # @return [String]
340
+ #
341
+ # @!attribute [rw] state
342
+ # The status of the request.
343
+ # @return [String]
344
+ #
345
+ # @!attribute [rw] requested_timestamp
346
+ # The date and time that the request was made for the account
347
+ # creation.
348
+ # @return [Time]
349
+ #
350
+ # @!attribute [rw] completed_timestamp
351
+ # The date and time that the account was created and the request
352
+ # completed.
353
+ # @return [Time]
354
+ #
355
+ # @!attribute [rw] account_id
356
+ # If the account was created successfully, the unique identifier (ID)
357
+ # of the new account.
358
+ #
359
+ # The [regex pattern][1] for an account ID string requires exactly 12
360
+ # digits.
361
+ #
362
+ #
363
+ #
364
+ # [1]: http://wikipedia.org/wiki/regex
365
+ # @return [String]
366
+ #
367
+ # @!attribute [rw] failure_reason
368
+ # If the request failed, a description of the reason for the failure.
369
+ # @return [String]
370
+ #
371
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/CreateAccountStatus AWS API Documentation
372
+ #
373
+ class CreateAccountStatus < Struct.new(
374
+ :id,
375
+ :account_name,
376
+ :state,
377
+ :requested_timestamp,
378
+ :completed_timestamp,
379
+ :account_id,
380
+ :failure_reason)
381
+ include Aws::Structure
382
+ end
383
+
384
+ # @note When making an API call, you may pass CreateOrganizationRequest
385
+ # data as a hash:
386
+ #
387
+ # {
388
+ # feature_set: "ALL", # accepts ALL, CONSOLIDATED_BILLING
389
+ # }
390
+ #
391
+ # @!attribute [rw] feature_set
392
+ # Specifies the feature set supported by the new organization. Each
393
+ # feature set supports different levels of functionality.
394
+ #
395
+ # * *CONSOLIDATED\_BILLING*\: All member accounts have their bills
396
+ # consolidated to and paid by the master account. For more
397
+ # information, see [Consolidated Billing][1] in the *AWS
398
+ # Organizations User Guide*.
399
+ #
400
+ # * *ALL*\: In addition to all the features supported by the
401
+ # consolidated billing feature set, the master account can also
402
+ # apply any type of policy to any member account in the
403
+ # organization. For more information, see [All features][2] in the
404
+ # *AWS Organizations User Guide*.
405
+ #
406
+ #
407
+ #
408
+ # [1]: http://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#feature-set-cb-only
409
+ # [2]: http://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#feature-set-all
410
+ # @return [String]
411
+ #
412
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/CreateOrganizationRequest AWS API Documentation
413
+ #
414
+ class CreateOrganizationRequest < Struct.new(
415
+ :feature_set)
416
+ include Aws::Structure
417
+ end
418
+
419
+ # @!attribute [rw] organization
420
+ # A structure that contains details about the newly created
421
+ # organization.
422
+ # @return [Types::Organization]
423
+ #
424
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/CreateOrganizationResponse AWS API Documentation
425
+ #
426
+ class CreateOrganizationResponse < Struct.new(
427
+ :organization)
428
+ include Aws::Structure
429
+ end
430
+
431
+ # @note When making an API call, you may pass CreateOrganizationalUnitRequest
432
+ # data as a hash:
433
+ #
434
+ # {
435
+ # parent_id: "ParentId", # required
436
+ # name: "OrganizationalUnitName", # required
437
+ # }
438
+ #
439
+ # @!attribute [rw] parent_id
440
+ # The unique identifier (ID) of the parent root or OU in which you
441
+ # want to create the new OU.
442
+ #
443
+ # The [regex pattern][1] for a parent ID string requires one of the
444
+ # following:
445
+ #
446
+ # * Root: a string that begins with "r-" followed by from 4 to 32
447
+ # lower-case letters or digits.
448
+ #
449
+ # * Organizational unit (OU): a string that begins with "ou-"
450
+ # followed by from 4 to 32 lower-case letters or digits (the ID of
451
+ # the root that the OU is in) followed by a second "-" dash and
452
+ # from 8 to 32 additional lower-case letters or digits.
453
+ #
454
+ #
455
+ #
456
+ # [1]: http://wikipedia.org/wiki/regex
457
+ # @return [String]
458
+ #
459
+ # @!attribute [rw] name
460
+ # The friendly name to assign to the new OU.
461
+ # @return [String]
462
+ #
463
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/CreateOrganizationalUnitRequest AWS API Documentation
464
+ #
465
+ class CreateOrganizationalUnitRequest < Struct.new(
466
+ :parent_id,
467
+ :name)
468
+ include Aws::Structure
469
+ end
470
+
471
+ # @!attribute [rw] organizational_unit
472
+ # A structure that contains details about the newly created OU.
473
+ # @return [Types::OrganizationalUnit]
474
+ #
475
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/CreateOrganizationalUnitResponse AWS API Documentation
476
+ #
477
+ class CreateOrganizationalUnitResponse < Struct.new(
478
+ :organizational_unit)
479
+ include Aws::Structure
480
+ end
481
+
482
+ # @note When making an API call, you may pass CreatePolicyRequest
483
+ # data as a hash:
484
+ #
485
+ # {
486
+ # content: "PolicyContent", # required
487
+ # description: "PolicyDescription", # required
488
+ # name: "PolicyName", # required
489
+ # type: "SERVICE_CONTROL_POLICY", # required, accepts SERVICE_CONTROL_POLICY
490
+ # }
491
+ #
492
+ # @!attribute [rw] content
493
+ # The policy content to add to the new policy. For example, if you
494
+ # create a [service control policy][1] (SCP), this string must be JSON
495
+ # text that specifies the permissions that admins in attached accounts
496
+ # can delegate to their users, groups, and roles. For more information
497
+ # about the SCP syntax, see [Service Control Policy Syntax][2] in the
498
+ # *AWS Organizations User Guide*.
499
+ #
500
+ #
501
+ #
502
+ # [1]: http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html
503
+ # [2]: http://docs.aws.amazon.com/organizations/latest/userguide/orgs_reference_scp-syntax.html
504
+ # @return [String]
505
+ #
506
+ # @!attribute [rw] description
507
+ # An optional description to assign to the policy.
508
+ # @return [String]
509
+ #
510
+ # @!attribute [rw] name
511
+ # The friendly name to assign to the policy.
512
+ #
513
+ # The [regex pattern][1] that is used to validate this parameter is a
514
+ # string of any of the characters in the ASCII character range.
515
+ #
516
+ #
517
+ #
518
+ # [1]: http://wikipedia.org/wiki/regex
519
+ # @return [String]
520
+ #
521
+ # @!attribute [rw] type
522
+ # The type of policy to create.
523
+ #
524
+ # <note markdown="1"> In the current release, the only type of policy that you can create
525
+ # is a service control policy (SCP).
526
+ #
527
+ # </note>
528
+ # @return [String]
529
+ #
530
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/CreatePolicyRequest AWS API Documentation
531
+ #
532
+ class CreatePolicyRequest < Struct.new(
533
+ :content,
534
+ :description,
535
+ :name,
536
+ :type)
537
+ include Aws::Structure
538
+ end
539
+
540
+ # @!attribute [rw] policy
541
+ # A structure that contains details about the newly created policy.
542
+ # @return [Types::Policy]
543
+ #
544
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/CreatePolicyResponse AWS API Documentation
545
+ #
546
+ class CreatePolicyResponse < Struct.new(
547
+ :policy)
548
+ include Aws::Structure
549
+ end
550
+
551
+ # @note When making an API call, you may pass DeclineHandshakeRequest
552
+ # data as a hash:
553
+ #
554
+ # {
555
+ # handshake_id: "HandshakeId", # required
556
+ # }
557
+ #
558
+ # @!attribute [rw] handshake_id
559
+ # The unique identifier (ID) of the handshake that you want to
560
+ # decline. You can get the ID from the ListHandshakesForAccount
561
+ # operation.
562
+ #
563
+ # The [regex pattern][1] for handshake ID string requires "h-"
564
+ # followed by from 8 to 32 lower-case letters or digits.
565
+ #
566
+ #
567
+ #
568
+ # [1]: http://wikipedia.org/wiki/regex
569
+ # @return [String]
570
+ #
571
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DeclineHandshakeRequest AWS API Documentation
572
+ #
573
+ class DeclineHandshakeRequest < Struct.new(
574
+ :handshake_id)
575
+ include Aws::Structure
576
+ end
577
+
578
+ # @!attribute [rw] handshake
579
+ # A structure that contains details about the declined handshake. The
580
+ # state is updated to show the value `DECLINED`.
581
+ # @return [Types::Handshake]
582
+ #
583
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DeclineHandshakeResponse AWS API Documentation
584
+ #
585
+ class DeclineHandshakeResponse < Struct.new(
586
+ :handshake)
587
+ include Aws::Structure
588
+ end
589
+
590
+ # @note When making an API call, you may pass DeleteOrganizationalUnitRequest
591
+ # data as a hash:
592
+ #
593
+ # {
594
+ # organizational_unit_id: "OrganizationalUnitId", # required
595
+ # }
596
+ #
597
+ # @!attribute [rw] organizational_unit_id
598
+ # The unique identifier (ID) of the organizational unit that you want
599
+ # to delete. You can get the ID from the
600
+ # ListOrganizationalUnitsForParent operation.
601
+ #
602
+ # The [regex pattern][1] for an organizational unit ID string requires
603
+ # "ou-" followed by from 4 to 32 lower-case letters or digits (the
604
+ # ID of the root that contains the OU) followed by a second "-" dash
605
+ # and from 8 to 32 additional lower-case letters or digits.
606
+ #
607
+ #
608
+ #
609
+ # [1]: http://wikipedia.org/wiki/regex
610
+ # @return [String]
611
+ #
612
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DeleteOrganizationalUnitRequest AWS API Documentation
613
+ #
614
+ class DeleteOrganizationalUnitRequest < Struct.new(
615
+ :organizational_unit_id)
616
+ include Aws::Structure
617
+ end
618
+
619
+ # @note When making an API call, you may pass DeletePolicyRequest
620
+ # data as a hash:
621
+ #
622
+ # {
623
+ # policy_id: "PolicyId", # required
624
+ # }
625
+ #
626
+ # @!attribute [rw] policy_id
627
+ # The unique identifier (ID) of the policy that you want to delete.
628
+ # You can get the ID from the ListPolicies or ListPoliciesForTarget
629
+ # operations.
630
+ #
631
+ # The [regex pattern][1] for a policy ID string requires "p-"
632
+ # followed by from 8 to 128 lower-case letters or digits.
633
+ #
634
+ #
635
+ #
636
+ # [1]: http://wikipedia.org/wiki/regex
637
+ # @return [String]
638
+ #
639
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DeletePolicyRequest AWS API Documentation
640
+ #
641
+ class DeletePolicyRequest < Struct.new(
642
+ :policy_id)
643
+ include Aws::Structure
644
+ end
645
+
646
+ # @note When making an API call, you may pass DescribeAccountRequest
647
+ # data as a hash:
648
+ #
649
+ # {
650
+ # account_id: "AccountId", # required
651
+ # }
652
+ #
653
+ # @!attribute [rw] account_id
654
+ # The unique identifier (ID) of the AWS account that you want
655
+ # information about. You can get the ID from the ListAccounts or
656
+ # ListAccountsForParent operations.
657
+ #
658
+ # The [regex pattern][1] for an account ID string requires exactly 12
659
+ # digits.
660
+ #
661
+ #
662
+ #
663
+ # [1]: http://wikipedia.org/wiki/regex
664
+ # @return [String]
665
+ #
666
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DescribeAccountRequest AWS API Documentation
667
+ #
668
+ class DescribeAccountRequest < Struct.new(
669
+ :account_id)
670
+ include Aws::Structure
671
+ end
672
+
673
+ # @!attribute [rw] account
674
+ # A structure that contains information about the requested account.
675
+ # @return [Types::Account]
676
+ #
677
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DescribeAccountResponse AWS API Documentation
678
+ #
679
+ class DescribeAccountResponse < Struct.new(
680
+ :account)
681
+ include Aws::Structure
682
+ end
683
+
684
+ # @note When making an API call, you may pass DescribeCreateAccountStatusRequest
685
+ # data as a hash:
686
+ #
687
+ # {
688
+ # create_account_request_id: "CreateAccountRequestId", # required
689
+ # }
690
+ #
691
+ # @!attribute [rw] create_account_request_id
692
+ # Specifies the `operationId` that uniquely identifies the request.
693
+ # You can get the ID from the response to an earlier CreateAccount
694
+ # request, or from the ListCreateAccountStatus operation.
695
+ #
696
+ # The [regex pattern][1] for an create account request ID string
697
+ # requires "car-" followed by from 8 to 32 lower-case letters or
698
+ # digits.
699
+ #
700
+ #
701
+ #
702
+ # [1]: http://wikipedia.org/wiki/regex
703
+ # @return [String]
704
+ #
705
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DescribeCreateAccountStatusRequest AWS API Documentation
706
+ #
707
+ class DescribeCreateAccountStatusRequest < Struct.new(
708
+ :create_account_request_id)
709
+ include Aws::Structure
710
+ end
711
+
712
+ # @!attribute [rw] create_account_status
713
+ # A structure that contains the current status of an account creation
714
+ # request.
715
+ # @return [Types::CreateAccountStatus]
716
+ #
717
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DescribeCreateAccountStatusResponse AWS API Documentation
718
+ #
719
+ class DescribeCreateAccountStatusResponse < Struct.new(
720
+ :create_account_status)
721
+ include Aws::Structure
722
+ end
723
+
724
+ # @note When making an API call, you may pass DescribeHandshakeRequest
725
+ # data as a hash:
726
+ #
727
+ # {
728
+ # handshake_id: "HandshakeId", # required
729
+ # }
730
+ #
731
+ # @!attribute [rw] handshake_id
732
+ # The unique identifier (ID) of the handshake that you want
733
+ # information about. You can get the ID from the original call to
734
+ # InviteAccountToOrganization, or from a call to
735
+ # ListHandshakesForAccount or ListHandshakesForOrganization.
736
+ #
737
+ # The [regex pattern][1] for handshake ID string requires "h-"
738
+ # followed by from 8 to 32 lower-case letters or digits.
739
+ #
740
+ #
741
+ #
742
+ # [1]: http://wikipedia.org/wiki/regex
743
+ # @return [String]
744
+ #
745
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DescribeHandshakeRequest AWS API Documentation
746
+ #
747
+ class DescribeHandshakeRequest < Struct.new(
748
+ :handshake_id)
749
+ include Aws::Structure
750
+ end
751
+
752
+ # @!attribute [rw] handshake
753
+ # A structure that contains information about the specified handshake.
754
+ # @return [Types::Handshake]
755
+ #
756
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DescribeHandshakeResponse AWS API Documentation
757
+ #
758
+ class DescribeHandshakeResponse < Struct.new(
759
+ :handshake)
760
+ include Aws::Structure
761
+ end
762
+
763
+ # @!attribute [rw] organization
764
+ # A structure that contains information about the organization.
765
+ # @return [Types::Organization]
766
+ #
767
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DescribeOrganizationResponse AWS API Documentation
768
+ #
769
+ class DescribeOrganizationResponse < Struct.new(
770
+ :organization)
771
+ include Aws::Structure
772
+ end
773
+
774
+ # @note When making an API call, you may pass DescribeOrganizationalUnitRequest
775
+ # data as a hash:
776
+ #
777
+ # {
778
+ # organizational_unit_id: "OrganizationalUnitId", # required
779
+ # }
780
+ #
781
+ # @!attribute [rw] organizational_unit_id
782
+ # The unique identifier (ID) of the organizational unit that you want
783
+ # details about. You can get the ID from the
784
+ # ListOrganizationalUnitsForParent operation.
785
+ #
786
+ # The [regex pattern][1] for an organizational unit ID string requires
787
+ # "ou-" followed by from 4 to 32 lower-case letters or digits (the
788
+ # ID of the root that contains the OU) followed by a second "-" dash
789
+ # and from 8 to 32 additional lower-case letters or digits.
790
+ #
791
+ #
792
+ #
793
+ # [1]: http://wikipedia.org/wiki/regex
794
+ # @return [String]
795
+ #
796
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DescribeOrganizationalUnitRequest AWS API Documentation
797
+ #
798
+ class DescribeOrganizationalUnitRequest < Struct.new(
799
+ :organizational_unit_id)
800
+ include Aws::Structure
801
+ end
802
+
803
+ # @!attribute [rw] organizational_unit
804
+ # A structure that contains details about the specified OU.
805
+ # @return [Types::OrganizationalUnit]
806
+ #
807
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DescribeOrganizationalUnitResponse AWS API Documentation
808
+ #
809
+ class DescribeOrganizationalUnitResponse < Struct.new(
810
+ :organizational_unit)
811
+ include Aws::Structure
812
+ end
813
+
814
+ # @note When making an API call, you may pass DescribePolicyRequest
815
+ # data as a hash:
816
+ #
817
+ # {
818
+ # policy_id: "PolicyId", # required
819
+ # }
820
+ #
821
+ # @!attribute [rw] policy_id
822
+ # The unique identifier (ID) of the policy that you want details
823
+ # about. You can get the ID from the ListPolicies or
824
+ # ListPoliciesForTarget operations.
825
+ #
826
+ # The [regex pattern][1] for a policy ID string requires "p-"
827
+ # followed by from 8 to 128 lower-case letters or digits.
828
+ #
829
+ #
830
+ #
831
+ # [1]: http://wikipedia.org/wiki/regex
832
+ # @return [String]
833
+ #
834
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DescribePolicyRequest AWS API Documentation
835
+ #
836
+ class DescribePolicyRequest < Struct.new(
837
+ :policy_id)
838
+ include Aws::Structure
839
+ end
840
+
841
+ # @!attribute [rw] policy
842
+ # A structure that contains details about the specified policy.
843
+ # @return [Types::Policy]
844
+ #
845
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DescribePolicyResponse AWS API Documentation
846
+ #
847
+ class DescribePolicyResponse < Struct.new(
848
+ :policy)
849
+ include Aws::Structure
850
+ end
851
+
852
+ # @note When making an API call, you may pass DetachPolicyRequest
853
+ # data as a hash:
854
+ #
855
+ # {
856
+ # policy_id: "PolicyId", # required
857
+ # target_id: "PolicyTargetId", # required
858
+ # }
859
+ #
860
+ # @!attribute [rw] policy_id
861
+ # The unique identifier (ID) of the policy you want to detach. You can
862
+ # get the ID from the ListPolicies or ListPoliciesForTarget
863
+ # operations.
864
+ #
865
+ # The [regex pattern][1] for a policy ID string requires "p-"
866
+ # followed by from 8 to 128 lower-case letters or digits.
867
+ #
868
+ #
869
+ #
870
+ # [1]: http://wikipedia.org/wiki/regex
871
+ # @return [String]
872
+ #
873
+ # @!attribute [rw] target_id
874
+ # The unique identifier (ID) of the root, OU, or account from which
875
+ # you want to detach the policy. You can get the ID from the
876
+ # ListRoots, ListOrganizationalUnitsForParent, or ListAccounts
877
+ # operations.
878
+ #
879
+ # The [regex pattern][1] for a target ID string requires one of the
880
+ # following:
881
+ #
882
+ # * Root: a string that begins with "r-" followed by from 4 to 32
883
+ # lower-case letters or digits.
884
+ #
885
+ # * Account: a string that consists of exactly 12 digits.
886
+ #
887
+ # * Organizational unit (OU): a string that begins with "ou-"
888
+ # followed by from 4 to 32 lower-case letters or digits (the ID of
889
+ # the root that the OU is in) followed by a second "-" dash and
890
+ # from 8 to 32 additional lower-case letters or digits.
891
+ #
892
+ #
893
+ #
894
+ # [1]: http://wikipedia.org/wiki/regex
895
+ # @return [String]
896
+ #
897
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DetachPolicyRequest AWS API Documentation
898
+ #
899
+ class DetachPolicyRequest < Struct.new(
900
+ :policy_id,
901
+ :target_id)
902
+ include Aws::Structure
903
+ end
904
+
905
+ # @note When making an API call, you may pass DisablePolicyTypeRequest
906
+ # data as a hash:
907
+ #
908
+ # {
909
+ # root_id: "RootId", # required
910
+ # policy_type: "SERVICE_CONTROL_POLICY", # required, accepts SERVICE_CONTROL_POLICY
911
+ # }
912
+ #
913
+ # @!attribute [rw] root_id
914
+ # The unique identifier (ID) of the root in which you want to disable
915
+ # a policy type. You can get the ID from the ListPolicies operation.
916
+ #
917
+ # The [regex pattern][1] for a root ID string requires "r-" followed
918
+ # by from 4 to 32 lower-case letters or digits.
919
+ #
920
+ #
921
+ #
922
+ # [1]: http://wikipedia.org/wiki/regex
923
+ # @return [String]
924
+ #
925
+ # @!attribute [rw] policy_type
926
+ # The policy type that you want to disable in this root.
927
+ # @return [String]
928
+ #
929
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DisablePolicyTypeRequest AWS API Documentation
930
+ #
931
+ class DisablePolicyTypeRequest < Struct.new(
932
+ :root_id,
933
+ :policy_type)
934
+ include Aws::Structure
935
+ end
936
+
937
+ # @!attribute [rw] root
938
+ # A structure that shows the root with the updated list of enabled
939
+ # policy types.
940
+ # @return [Types::Root]
941
+ #
942
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DisablePolicyTypeResponse AWS API Documentation
943
+ #
944
+ class DisablePolicyTypeResponse < Struct.new(
945
+ :root)
946
+ include Aws::Structure
947
+ end
948
+
949
+ # @api private
950
+ #
951
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/EnableAllFeaturesRequest AWS API Documentation
952
+ #
953
+ class EnableAllFeaturesRequest < Aws::EmptyStructure; end
954
+
955
+ # @!attribute [rw] handshake
956
+ # A structure that contains details about the handshake created to
957
+ # support this request to enable all features in the organization.
958
+ # @return [Types::Handshake]
959
+ #
960
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/EnableAllFeaturesResponse AWS API Documentation
961
+ #
962
+ class EnableAllFeaturesResponse < Struct.new(
963
+ :handshake)
964
+ include Aws::Structure
965
+ end
966
+
967
+ # @note When making an API call, you may pass EnablePolicyTypeRequest
968
+ # data as a hash:
969
+ #
970
+ # {
971
+ # root_id: "RootId", # required
972
+ # policy_type: "SERVICE_CONTROL_POLICY", # required, accepts SERVICE_CONTROL_POLICY
973
+ # }
974
+ #
975
+ # @!attribute [rw] root_id
976
+ # The unique identifier (ID) of the root in which you want to enable a
977
+ # policy type. You can get the ID from the ListRoots operation.
978
+ #
979
+ # The [regex pattern][1] for a root ID string requires "r-" followed
980
+ # by from 4 to 32 lower-case letters or digits.
981
+ #
982
+ #
983
+ #
984
+ # [1]: http://wikipedia.org/wiki/regex
985
+ # @return [String]
986
+ #
987
+ # @!attribute [rw] policy_type
988
+ # The policy type that you want to enable.
989
+ # @return [String]
990
+ #
991
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/EnablePolicyTypeRequest AWS API Documentation
992
+ #
993
+ class EnablePolicyTypeRequest < Struct.new(
994
+ :root_id,
995
+ :policy_type)
996
+ include Aws::Structure
997
+ end
998
+
999
+ # @!attribute [rw] root
1000
+ # A structure that shows the root with the updated list of enabled
1001
+ # policy types.
1002
+ # @return [Types::Root]
1003
+ #
1004
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/EnablePolicyTypeResponse AWS API Documentation
1005
+ #
1006
+ class EnablePolicyTypeResponse < Struct.new(
1007
+ :root)
1008
+ include Aws::Structure
1009
+ end
1010
+
1011
+ # Contains information that must be exchanged to securely establish a
1012
+ # relationship between two accounts (an *originator* and a *recipient*).
1013
+ # For example, when a master account (the originator) invites another
1014
+ # account (the recipient) to join its organization, the two accounts
1015
+ # exchange information as a series of handshake requests and responses.
1016
+ #
1017
+ # @!attribute [rw] id
1018
+ # The unique identifier (ID) of a handshake. The originating account
1019
+ # creates the ID when it initiates the handshake.
1020
+ #
1021
+ # The [regex pattern][1] for handshake ID string requires "h-"
1022
+ # followed by from 8 to 32 lower-case letters or digits.
1023
+ #
1024
+ #
1025
+ #
1026
+ # [1]: http://wikipedia.org/wiki/regex
1027
+ # @return [String]
1028
+ #
1029
+ # @!attribute [rw] arn
1030
+ # The Amazon Resource Name (ARN) of a handshake.
1031
+ #
1032
+ # For more information about ARNs in Organizations, see [ARN Formats
1033
+ # Supported by Organizations][1] in the *AWS Organizations User
1034
+ # Guide*.
1035
+ #
1036
+ #
1037
+ #
1038
+ # [1]: http://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns
1039
+ # @return [String]
1040
+ #
1041
+ # @!attribute [rw] parties
1042
+ # Information about the two accounts that are participating in the
1043
+ # handshake.
1044
+ # @return [Array<Types::HandshakeParty>]
1045
+ #
1046
+ # @!attribute [rw] state
1047
+ # The current state of the handshake. Use the state to trace the flow
1048
+ # of the handshake through the process from its creation to its
1049
+ # acceptance. The meaning of each of the valid values is as follows:
1050
+ #
1051
+ # * **REQUESTED**\: This handshake was sent to multiple recipients
1052
+ # (applicable to only some handshake types) and not all recipients
1053
+ # have responded yet. The request stays in this state until all
1054
+ # recipients respond.
1055
+ #
1056
+ # * **OPEN**\: This handshake was sent to multiple recipients
1057
+ # (applicable to only some policy types) and all recipients have
1058
+ # responded, allowing the originator to complete the handshake
1059
+ # action.
1060
+ #
1061
+ # * **CANCELED**\: This handshake is no longer active because it was
1062
+ # canceled by the originating account.
1063
+ #
1064
+ # * **ACCEPTED**\: This handshake is complete because it has been
1065
+ # accepted by the recipient.
1066
+ #
1067
+ # * **DECLINED**\: This handshake is no longer active because it was
1068
+ # declined by the recipient account.
1069
+ #
1070
+ # * **EXPIRED**\: This handshake is no longer active because the
1071
+ # originator did not receive a response of any kind from the
1072
+ # recipient before the expiration time (15 days).
1073
+ # @return [String]
1074
+ #
1075
+ # @!attribute [rw] requested_timestamp
1076
+ # The date and time that the handshake request was made.
1077
+ # @return [Time]
1078
+ #
1079
+ # @!attribute [rw] expiration_timestamp
1080
+ # The date and time that the handshake expires. If the recipient of
1081
+ # the handshake request fails to respond before the specified date and
1082
+ # time, the handshake becomes inactive and is no longer valid.
1083
+ # @return [Time]
1084
+ #
1085
+ # @!attribute [rw] action
1086
+ # The type of handshake, indicating what action occurs when the
1087
+ # recipient accepts the handshake.
1088
+ # @return [String]
1089
+ #
1090
+ # @!attribute [rw] resources
1091
+ # Additional information that is needed to process the handshake.
1092
+ # @return [Array<Types::HandshakeResource>]
1093
+ #
1094
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/Handshake AWS API Documentation
1095
+ #
1096
+ class Handshake < Struct.new(
1097
+ :id,
1098
+ :arn,
1099
+ :parties,
1100
+ :state,
1101
+ :requested_timestamp,
1102
+ :expiration_timestamp,
1103
+ :action,
1104
+ :resources)
1105
+ include Aws::Structure
1106
+ end
1107
+
1108
+ # Specifies the criteria that are used to select the handshakes for the
1109
+ # operation.
1110
+ #
1111
+ # @note When making an API call, you may pass HandshakeFilter
1112
+ # data as a hash:
1113
+ #
1114
+ # {
1115
+ # action_type: "INVITE", # accepts INVITE, ENABLE_ALL_FEATURES, APPROVE_ALL_FEATURES
1116
+ # parent_handshake_id: "HandshakeId",
1117
+ # }
1118
+ #
1119
+ # @!attribute [rw] action_type
1120
+ # Specifies the type of handshake action.
1121
+ #
1122
+ # If you specify `ActionType`, you cannot also specify
1123
+ # `ParentHandshakeId`.
1124
+ # @return [String]
1125
+ #
1126
+ # @!attribute [rw] parent_handshake_id
1127
+ # Specifies the parent handshake. Only used for handshake types that
1128
+ # are a child of another type.
1129
+ #
1130
+ # If you specify `ParentHandshakeId`, you cannot also specify
1131
+ # `ActionType`.
1132
+ #
1133
+ # The [regex pattern][1] for handshake ID string requires "h-"
1134
+ # followed by from 8 to 32 lower-case letters or digits.
1135
+ #
1136
+ #
1137
+ #
1138
+ # [1]: http://wikipedia.org/wiki/regex
1139
+ # @return [String]
1140
+ #
1141
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/HandshakeFilter AWS API Documentation
1142
+ #
1143
+ class HandshakeFilter < Struct.new(
1144
+ :action_type,
1145
+ :parent_handshake_id)
1146
+ include Aws::Structure
1147
+ end
1148
+
1149
+ # Identifies a participant in a handshake.
1150
+ #
1151
+ # @note When making an API call, you may pass HandshakeParty
1152
+ # data as a hash:
1153
+ #
1154
+ # {
1155
+ # id: "HandshakePartyId",
1156
+ # type: "ACCOUNT", # accepts ACCOUNT, ORGANIZATION, EMAIL
1157
+ # }
1158
+ #
1159
+ # @!attribute [rw] id
1160
+ # The unique identifier (ID) for the party.
1161
+ #
1162
+ # The [regex pattern][1] for handshake ID string requires "h-"
1163
+ # followed by from 8 to 32 lower-case letters or digits.
1164
+ #
1165
+ #
1166
+ #
1167
+ # [1]: http://wikipedia.org/wiki/regex
1168
+ # @return [String]
1169
+ #
1170
+ # @!attribute [rw] type
1171
+ # The type of party.
1172
+ # @return [String]
1173
+ #
1174
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/HandshakeParty AWS API Documentation
1175
+ #
1176
+ class HandshakeParty < Struct.new(
1177
+ :id,
1178
+ :type)
1179
+ include Aws::Structure
1180
+ end
1181
+
1182
+ # Contains additional data that is needed to process a handshake.
1183
+ #
1184
+ # @!attribute [rw] value
1185
+ # The information that is passed to the other party in the handshake.
1186
+ # The format of the value string must match the requirements of the
1187
+ # specified type.
1188
+ # @return [String]
1189
+ #
1190
+ # @!attribute [rw] type
1191
+ # The type of information being passed, specifying how the value is to
1192
+ # be interpreted by the other party:
1193
+ #
1194
+ # * `ACCOUNT` - Specifies an AWS account ID number.
1195
+ #
1196
+ # * `ORGANIZATION` - Specifies an organization ID number.
1197
+ #
1198
+ # * `EMAIL` - Specifies the email address that is associated with the
1199
+ # account that receives the handshake.
1200
+ #
1201
+ # * `OWNER_EMAIL` - Specifies the email address associated with the
1202
+ # master account. Included as information about an organization.
1203
+ #
1204
+ # * `OWNER_NAME` - Specifies the name associated with the master
1205
+ # account. Included as information about an organization.
1206
+ #
1207
+ # * `NOTES` - Additional text provided by the handshake initiator and
1208
+ # intended for the recipient to read.
1209
+ # @return [String]
1210
+ #
1211
+ # @!attribute [rw] resources
1212
+ # When needed, contains an additional array of `HandshakeResource`
1213
+ # objects.
1214
+ # @return [Array<Types::HandshakeResource>]
1215
+ #
1216
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/HandshakeResource AWS API Documentation
1217
+ #
1218
+ class HandshakeResource < Struct.new(
1219
+ :value,
1220
+ :type,
1221
+ :resources)
1222
+ include Aws::Structure
1223
+ end
1224
+
1225
+ # @note When making an API call, you may pass InviteAccountToOrganizationRequest
1226
+ # data as a hash:
1227
+ #
1228
+ # {
1229
+ # target: { # required
1230
+ # id: "HandshakePartyId",
1231
+ # type: "ACCOUNT", # accepts ACCOUNT, ORGANIZATION, EMAIL
1232
+ # },
1233
+ # notes: "HandshakeNotes",
1234
+ # }
1235
+ #
1236
+ # @!attribute [rw] target
1237
+ # The identifier (ID) of the AWS account that you want to invite to
1238
+ # join your organization. This is a JSON object that contains the
1239
+ # following elements:
1240
+ #
1241
+ # `\{ "Type": "ACCOUNT", "Id": "< account id number >" \}`
1242
+ #
1243
+ # If you use the AWS CLI, you can submit this as a single string,
1244
+ # similar to the following example:
1245
+ #
1246
+ # `--target id=123456789012,type=ACCOUNT`
1247
+ #
1248
+ # If you specify `"Type": "ACCOUNT"`, then you must provide the AWS
1249
+ # account ID number as the `Id`. If you specify `"Type": "EMAIL"`,
1250
+ # then you must specify the email address that is associated with the
1251
+ # account.
1252
+ #
1253
+ # `--target id=bill@example.com,type=EMAIL`
1254
+ # @return [Types::HandshakeParty]
1255
+ #
1256
+ # @!attribute [rw] notes
1257
+ # Additional information that you want to include in the generated
1258
+ # email to the recipient account owner.
1259
+ # @return [String]
1260
+ #
1261
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/InviteAccountToOrganizationRequest AWS API Documentation
1262
+ #
1263
+ class InviteAccountToOrganizationRequest < Struct.new(
1264
+ :target,
1265
+ :notes)
1266
+ include Aws::Structure
1267
+ end
1268
+
1269
+ # @!attribute [rw] handshake
1270
+ # A structure that contains details about the handshake that is
1271
+ # created to support this invitation request.
1272
+ # @return [Types::Handshake]
1273
+ #
1274
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/InviteAccountToOrganizationResponse AWS API Documentation
1275
+ #
1276
+ class InviteAccountToOrganizationResponse < Struct.new(
1277
+ :handshake)
1278
+ include Aws::Structure
1279
+ end
1280
+
1281
+ # @note When making an API call, you may pass ListAccountsForParentRequest
1282
+ # data as a hash:
1283
+ #
1284
+ # {
1285
+ # parent_id: "ParentId", # required
1286
+ # next_token: "NextToken",
1287
+ # max_results: 1,
1288
+ # }
1289
+ #
1290
+ # @!attribute [rw] parent_id
1291
+ # The unique identifier (ID) for the parent root or organization unit
1292
+ # (OU) whose accounts you want to list.
1293
+ # @return [String]
1294
+ #
1295
+ # @!attribute [rw] next_token
1296
+ # Use this parameter if you receive a `NextToken` response in a
1297
+ # previous request that indicates that there is more output available.
1298
+ # Set it to the value of the previous call's `NextToken` response to
1299
+ # indicate where the output should continue from.
1300
+ # @return [String]
1301
+ #
1302
+ # @!attribute [rw] max_results
1303
+ # (Optional) Use this to limit the number of results you want included
1304
+ # in the response. If you do not include this parameter, it defaults
1305
+ # to a value that is specific to the operation. If additional items
1306
+ # exist beyond the maximum you specify, the `NextToken` response
1307
+ # element is present and has a value (is not null). Include that value
1308
+ # as the `NextToken` request parameter in the next call to the
1309
+ # operation to get the next part of the results. Note that
1310
+ # Organizations might return fewer results than the maximum even when
1311
+ # there are more results available. You should check `NextToken` after
1312
+ # every operation to ensure that you receive all of the results.
1313
+ # @return [Integer]
1314
+ #
1315
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListAccountsForParentRequest AWS API Documentation
1316
+ #
1317
+ class ListAccountsForParentRequest < Struct.new(
1318
+ :parent_id,
1319
+ :next_token,
1320
+ :max_results)
1321
+ include Aws::Structure
1322
+ end
1323
+
1324
+ # @!attribute [rw] accounts
1325
+ # A list of the accounts in the specified root or OU.
1326
+ # @return [Array<Types::Account>]
1327
+ #
1328
+ # @!attribute [rw] next_token
1329
+ # If present, this value indicates that there is more output available
1330
+ # than is included in the current response. Use this value in the
1331
+ # `NextToken` request parameter in a subsequent call to the operation
1332
+ # to get the next part of the output. You should repeat this until the
1333
+ # `NextToken` response element comes back as `null`.
1334
+ # @return [String]
1335
+ #
1336
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListAccountsForParentResponse AWS API Documentation
1337
+ #
1338
+ class ListAccountsForParentResponse < Struct.new(
1339
+ :accounts,
1340
+ :next_token)
1341
+ include Aws::Structure
1342
+ end
1343
+
1344
+ # @note When making an API call, you may pass ListAccountsRequest
1345
+ # data as a hash:
1346
+ #
1347
+ # {
1348
+ # next_token: "NextToken",
1349
+ # max_results: 1,
1350
+ # }
1351
+ #
1352
+ # @!attribute [rw] next_token
1353
+ # Use this parameter if you receive a `NextToken` response in a
1354
+ # previous request that indicates that there is more output available.
1355
+ # Set it to the value of the previous call's `NextToken` response to
1356
+ # indicate where the output should continue from.
1357
+ # @return [String]
1358
+ #
1359
+ # @!attribute [rw] max_results
1360
+ # (Optional) Use this to limit the number of results you want included
1361
+ # in the response. If you do not include this parameter, it defaults
1362
+ # to a value that is specific to the operation. If additional items
1363
+ # exist beyond the maximum you specify, the `NextToken` response
1364
+ # element is present and has a value (is not null). Include that value
1365
+ # as the `NextToken` request parameter in the next call to the
1366
+ # operation to get the next part of the results. Note that
1367
+ # Organizations might return fewer results than the maximum even when
1368
+ # there are more results available. You should check `NextToken` after
1369
+ # every operation to ensure that you receive all of the results.
1370
+ # @return [Integer]
1371
+ #
1372
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListAccountsRequest AWS API Documentation
1373
+ #
1374
+ class ListAccountsRequest < Struct.new(
1375
+ :next_token,
1376
+ :max_results)
1377
+ include Aws::Structure
1378
+ end
1379
+
1380
+ # @!attribute [rw] accounts
1381
+ # A list of objects in the organization.
1382
+ # @return [Array<Types::Account>]
1383
+ #
1384
+ # @!attribute [rw] next_token
1385
+ # If present, this value indicates that there is more output available
1386
+ # than is included in the current response. Use this value in the
1387
+ # `NextToken` request parameter in a subsequent call to the operation
1388
+ # to get the next part of the output. You should repeat this until the
1389
+ # `NextToken` response element comes back as `null`.
1390
+ # @return [String]
1391
+ #
1392
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListAccountsResponse AWS API Documentation
1393
+ #
1394
+ class ListAccountsResponse < Struct.new(
1395
+ :accounts,
1396
+ :next_token)
1397
+ include Aws::Structure
1398
+ end
1399
+
1400
+ # @note When making an API call, you may pass ListChildrenRequest
1401
+ # data as a hash:
1402
+ #
1403
+ # {
1404
+ # parent_id: "ParentId", # required
1405
+ # child_type: "ACCOUNT", # required, accepts ACCOUNT, ORGANIZATIONAL_UNIT
1406
+ # next_token: "NextToken",
1407
+ # max_results: 1,
1408
+ # }
1409
+ #
1410
+ # @!attribute [rw] parent_id
1411
+ # The unique identifier (ID) for the parent root or OU whose children
1412
+ # you want to list.
1413
+ #
1414
+ # The [regex pattern][1] for a parent ID string requires one of the
1415
+ # following:
1416
+ #
1417
+ # * Root: a string that begins with "r-" followed by from 4 to 32
1418
+ # lower-case letters or digits.
1419
+ #
1420
+ # * Organizational unit (OU): a string that begins with "ou-"
1421
+ # followed by from 4 to 32 lower-case letters or digits (the ID of
1422
+ # the root that the OU is in) followed by a second "-" dash and
1423
+ # from 8 to 32 additional lower-case letters or digits.
1424
+ #
1425
+ #
1426
+ #
1427
+ # [1]: http://wikipedia.org/wiki/regex
1428
+ # @return [String]
1429
+ #
1430
+ # @!attribute [rw] child_type
1431
+ # Filters the output to include only the specified child type.
1432
+ # @return [String]
1433
+ #
1434
+ # @!attribute [rw] next_token
1435
+ # Use this parameter if you receive a `NextToken` response in a
1436
+ # previous request that indicates that there is more output available.
1437
+ # Set it to the value of the previous call's `NextToken` response to
1438
+ # indicate where the output should continue from.
1439
+ # @return [String]
1440
+ #
1441
+ # @!attribute [rw] max_results
1442
+ # (Optional) Use this to limit the number of results you want included
1443
+ # in the response. If you do not include this parameter, it defaults
1444
+ # to a value that is specific to the operation. If additional items
1445
+ # exist beyond the maximum you specify, the `NextToken` response
1446
+ # element is present and has a value (is not null). Include that value
1447
+ # as the `NextToken` request parameter in the next call to the
1448
+ # operation to get the next part of the results. Note that
1449
+ # Organizations might return fewer results than the maximum even when
1450
+ # there are more results available. You should check `NextToken` after
1451
+ # every operation to ensure that you receive all of the results.
1452
+ # @return [Integer]
1453
+ #
1454
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListChildrenRequest AWS API Documentation
1455
+ #
1456
+ class ListChildrenRequest < Struct.new(
1457
+ :parent_id,
1458
+ :child_type,
1459
+ :next_token,
1460
+ :max_results)
1461
+ include Aws::Structure
1462
+ end
1463
+
1464
+ # @!attribute [rw] children
1465
+ # The list of children of the specified parent container.
1466
+ # @return [Array<Types::Child>]
1467
+ #
1468
+ # @!attribute [rw] next_token
1469
+ # If present, this value indicates that there is more output available
1470
+ # than is included in the current response. Use this value in the
1471
+ # `NextToken` request parameter in a subsequent call to the operation
1472
+ # to get the next part of the output. You should repeat this until the
1473
+ # `NextToken` response element comes back as `null`.
1474
+ # @return [String]
1475
+ #
1476
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListChildrenResponse AWS API Documentation
1477
+ #
1478
+ class ListChildrenResponse < Struct.new(
1479
+ :children,
1480
+ :next_token)
1481
+ include Aws::Structure
1482
+ end
1483
+
1484
+ # @note When making an API call, you may pass ListCreateAccountStatusRequest
1485
+ # data as a hash:
1486
+ #
1487
+ # {
1488
+ # states: ["IN_PROGRESS"], # accepts IN_PROGRESS, SUCCEEDED, FAILED
1489
+ # next_token: "NextToken",
1490
+ # max_results: 1,
1491
+ # }
1492
+ #
1493
+ # @!attribute [rw] states
1494
+ # A list of one or more states that you want included in the response.
1495
+ # If this parameter is not present, then all requests are included in
1496
+ # the response.
1497
+ # @return [Array<String>]
1498
+ #
1499
+ # @!attribute [rw] next_token
1500
+ # Use this parameter if you receive a `NextToken` response in a
1501
+ # previous request that indicates that there is more output available.
1502
+ # Set it to the value of the previous call's `NextToken` response to
1503
+ # indicate where the output should continue from.
1504
+ # @return [String]
1505
+ #
1506
+ # @!attribute [rw] max_results
1507
+ # (Optional) Use this to limit the number of results you want included
1508
+ # in the response. If you do not include this parameter, it defaults
1509
+ # to a value that is specific to the operation. If additional items
1510
+ # exist beyond the maximum you specify, the `NextToken` response
1511
+ # element is present and has a value (is not null). Include that value
1512
+ # as the `NextToken` request parameter in the next call to the
1513
+ # operation to get the next part of the results. Note that
1514
+ # Organizations might return fewer results than the maximum even when
1515
+ # there are more results available. You should check `NextToken` after
1516
+ # every operation to ensure that you receive all of the results.
1517
+ # @return [Integer]
1518
+ #
1519
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListCreateAccountStatusRequest AWS API Documentation
1520
+ #
1521
+ class ListCreateAccountStatusRequest < Struct.new(
1522
+ :states,
1523
+ :next_token,
1524
+ :max_results)
1525
+ include Aws::Structure
1526
+ end
1527
+
1528
+ # @!attribute [rw] create_account_statuses
1529
+ # A list of objects with details about the requests. Certain elements,
1530
+ # such as the accountId number, are present in the output only after
1531
+ # the account has been successfully created.
1532
+ # @return [Array<Types::CreateAccountStatus>]
1533
+ #
1534
+ # @!attribute [rw] next_token
1535
+ # If present, this value indicates that there is more output available
1536
+ # than is included in the current response. Use this value in the
1537
+ # `NextToken` request parameter in a subsequent call to the operation
1538
+ # to get the next part of the output. You should repeat this until the
1539
+ # `NextToken` response element comes back as `null`.
1540
+ # @return [String]
1541
+ #
1542
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListCreateAccountStatusResponse AWS API Documentation
1543
+ #
1544
+ class ListCreateAccountStatusResponse < Struct.new(
1545
+ :create_account_statuses,
1546
+ :next_token)
1547
+ include Aws::Structure
1548
+ end
1549
+
1550
+ # @note When making an API call, you may pass ListHandshakesForAccountRequest
1551
+ # data as a hash:
1552
+ #
1553
+ # {
1554
+ # filter: {
1555
+ # action_type: "INVITE", # accepts INVITE, ENABLE_ALL_FEATURES, APPROVE_ALL_FEATURES
1556
+ # parent_handshake_id: "HandshakeId",
1557
+ # },
1558
+ # next_token: "NextToken",
1559
+ # max_results: 1,
1560
+ # }
1561
+ #
1562
+ # @!attribute [rw] filter
1563
+ # Filters the handshakes that you want included in the response. The
1564
+ # default is all types. Use the `ActionType` element to limit the
1565
+ # output to only a specified type, such as `INVITE`,
1566
+ # `ENABLE-FULL-CONTROL`, or `APPROVE-FULL-CONTROL`. Alternatively, for
1567
+ # the `ENABLE-FULL-CONTROL` handshake that generates a separate child
1568
+ # handshake for each member account, you can specify
1569
+ # `ParentHandshakeId` to see only the handshakes that were generated
1570
+ # by that parent request.
1571
+ # @return [Types::HandshakeFilter]
1572
+ #
1573
+ # @!attribute [rw] next_token
1574
+ # Use this parameter if you receive a `NextToken` response in a
1575
+ # previous request that indicates that there is more output available.
1576
+ # Set it to the value of the previous call's `NextToken` response to
1577
+ # indicate where the output should continue from.
1578
+ # @return [String]
1579
+ #
1580
+ # @!attribute [rw] max_results
1581
+ # (Optional) Use this to limit the number of results you want included
1582
+ # in the response. If you do not include this parameter, it defaults
1583
+ # to a value that is specific to the operation. If additional items
1584
+ # exist beyond the maximum you specify, the `NextToken` response
1585
+ # element is present and has a value (is not null). Include that value
1586
+ # as the `NextToken` request parameter in the next call to the
1587
+ # operation to get the next part of the results. Note that
1588
+ # Organizations might return fewer results than the maximum even when
1589
+ # there are more results available. You should check `NextToken` after
1590
+ # every operation to ensure that you receive all of the results.
1591
+ # @return [Integer]
1592
+ #
1593
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListHandshakesForAccountRequest AWS API Documentation
1594
+ #
1595
+ class ListHandshakesForAccountRequest < Struct.new(
1596
+ :filter,
1597
+ :next_token,
1598
+ :max_results)
1599
+ include Aws::Structure
1600
+ end
1601
+
1602
+ # @!attribute [rw] handshakes
1603
+ # A list of Handshake objects with details about each of the
1604
+ # handshakes that is associated with the specified account.
1605
+ # @return [Array<Types::Handshake>]
1606
+ #
1607
+ # @!attribute [rw] next_token
1608
+ # If present, this value indicates that there is more output available
1609
+ # than is included in the current response. Use this value in the
1610
+ # `NextToken` request parameter in a subsequent call to the operation
1611
+ # to get the next part of the output. You should repeat this until the
1612
+ # `NextToken` response element comes back as `null`.
1613
+ # @return [String]
1614
+ #
1615
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListHandshakesForAccountResponse AWS API Documentation
1616
+ #
1617
+ class ListHandshakesForAccountResponse < Struct.new(
1618
+ :handshakes,
1619
+ :next_token)
1620
+ include Aws::Structure
1621
+ end
1622
+
1623
+ # @note When making an API call, you may pass ListHandshakesForOrganizationRequest
1624
+ # data as a hash:
1625
+ #
1626
+ # {
1627
+ # filter: {
1628
+ # action_type: "INVITE", # accepts INVITE, ENABLE_ALL_FEATURES, APPROVE_ALL_FEATURES
1629
+ # parent_handshake_id: "HandshakeId",
1630
+ # },
1631
+ # next_token: "NextToken",
1632
+ # max_results: 1,
1633
+ # }
1634
+ #
1635
+ # @!attribute [rw] filter
1636
+ # A filter of the handshakes that you want included in the response.
1637
+ # The default is all types. Use the `ActionType` element to limit the
1638
+ # output to only a specified type, such as `INVITE`,
1639
+ # `ENABLE-ALL-FEATURES`, or `APPROVE-ALL-FEATURES`. Alternatively, for
1640
+ # the `ENABLE-ALL-FEATURES` handshake that generates a separate child
1641
+ # handshake for each member account, you can specify the
1642
+ # `ParentHandshakeId` to see only the handshakes that were generated
1643
+ # by that parent request.
1644
+ # @return [Types::HandshakeFilter]
1645
+ #
1646
+ # @!attribute [rw] next_token
1647
+ # Use this parameter if you receive a `NextToken` response in a
1648
+ # previous request that indicates that there is more output available.
1649
+ # Set it to the value of the previous call's `NextToken` response to
1650
+ # indicate where the output should continue from.
1651
+ # @return [String]
1652
+ #
1653
+ # @!attribute [rw] max_results
1654
+ # (Optional) Use this to limit the number of results you want included
1655
+ # in the response. If you do not include this parameter, it defaults
1656
+ # to a value that is specific to the operation. If additional items
1657
+ # exist beyond the maximum you specify, the `NextToken` response
1658
+ # element is present and has a value (is not null). Include that value
1659
+ # as the `NextToken` request parameter in the next call to the
1660
+ # operation to get the next part of the results. Note that
1661
+ # Organizations might return fewer results than the maximum even when
1662
+ # there are more results available. You should check `NextToken` after
1663
+ # every operation to ensure that you receive all of the results.
1664
+ # @return [Integer]
1665
+ #
1666
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListHandshakesForOrganizationRequest AWS API Documentation
1667
+ #
1668
+ class ListHandshakesForOrganizationRequest < Struct.new(
1669
+ :filter,
1670
+ :next_token,
1671
+ :max_results)
1672
+ include Aws::Structure
1673
+ end
1674
+
1675
+ # @!attribute [rw] handshakes
1676
+ # A list of Handshake objects with details about each of the
1677
+ # handshakes that are associated with an organization.
1678
+ # @return [Array<Types::Handshake>]
1679
+ #
1680
+ # @!attribute [rw] next_token
1681
+ # If present, this value indicates that there is more output available
1682
+ # than is included in the current response. Use this value in the
1683
+ # `NextToken` request parameter in a subsequent call to the operation
1684
+ # to get the next part of the output. You should repeat this until the
1685
+ # `NextToken` response element comes back as `null`.
1686
+ # @return [String]
1687
+ #
1688
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListHandshakesForOrganizationResponse AWS API Documentation
1689
+ #
1690
+ class ListHandshakesForOrganizationResponse < Struct.new(
1691
+ :handshakes,
1692
+ :next_token)
1693
+ include Aws::Structure
1694
+ end
1695
+
1696
+ # @note When making an API call, you may pass ListOrganizationalUnitsForParentRequest
1697
+ # data as a hash:
1698
+ #
1699
+ # {
1700
+ # parent_id: "ParentId", # required
1701
+ # next_token: "NextToken",
1702
+ # max_results: 1,
1703
+ # }
1704
+ #
1705
+ # @!attribute [rw] parent_id
1706
+ # The unique identifier (ID) of the root or OU whose child OUs you
1707
+ # want to list.
1708
+ #
1709
+ # The [regex pattern][1] for a parent ID string requires one of the
1710
+ # following:
1711
+ #
1712
+ # * Root: a string that begins with "r-" followed by from 4 to 32
1713
+ # lower-case letters or digits.
1714
+ #
1715
+ # * Organizational unit (OU): a string that begins with "ou-"
1716
+ # followed by from 4 to 32 lower-case letters or digits (the ID of
1717
+ # the root that the OU is in) followed by a second "-" dash and
1718
+ # from 8 to 32 additional lower-case letters or digits.
1719
+ #
1720
+ #
1721
+ #
1722
+ # [1]: http://wikipedia.org/wiki/regex
1723
+ # @return [String]
1724
+ #
1725
+ # @!attribute [rw] next_token
1726
+ # Use this parameter if you receive a `NextToken` response in a
1727
+ # previous request that indicates that there is more output available.
1728
+ # Set it to the value of the previous call's `NextToken` response to
1729
+ # indicate where the output should continue from.
1730
+ # @return [String]
1731
+ #
1732
+ # @!attribute [rw] max_results
1733
+ # (Optional) Use this to limit the number of results you want included
1734
+ # in the response. If you do not include this parameter, it defaults
1735
+ # to a value that is specific to the operation. If additional items
1736
+ # exist beyond the maximum you specify, the `NextToken` response
1737
+ # element is present and has a value (is not null). Include that value
1738
+ # as the `NextToken` request parameter in the next call to the
1739
+ # operation to get the next part of the results. Note that
1740
+ # Organizations might return fewer results than the maximum even when
1741
+ # there are more results available. You should check `NextToken` after
1742
+ # every operation to ensure that you receive all of the results.
1743
+ # @return [Integer]
1744
+ #
1745
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListOrganizationalUnitsForParentRequest AWS API Documentation
1746
+ #
1747
+ class ListOrganizationalUnitsForParentRequest < Struct.new(
1748
+ :parent_id,
1749
+ :next_token,
1750
+ :max_results)
1751
+ include Aws::Structure
1752
+ end
1753
+
1754
+ # @!attribute [rw] organizational_units
1755
+ # A list of the OUs in the specified root or parent OU.
1756
+ # @return [Array<Types::OrganizationalUnit>]
1757
+ #
1758
+ # @!attribute [rw] next_token
1759
+ # If present, this value indicates that there is more output available
1760
+ # than is included in the current response. Use this value in the
1761
+ # `NextToken` request parameter in a subsequent call to the operation
1762
+ # to get the next part of the output. You should repeat this until the
1763
+ # `NextToken` response element comes back as `null`.
1764
+ # @return [String]
1765
+ #
1766
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListOrganizationalUnitsForParentResponse AWS API Documentation
1767
+ #
1768
+ class ListOrganizationalUnitsForParentResponse < Struct.new(
1769
+ :organizational_units,
1770
+ :next_token)
1771
+ include Aws::Structure
1772
+ end
1773
+
1774
+ # @note When making an API call, you may pass ListParentsRequest
1775
+ # data as a hash:
1776
+ #
1777
+ # {
1778
+ # child_id: "ChildId", # required
1779
+ # next_token: "NextToken",
1780
+ # max_results: 1,
1781
+ # }
1782
+ #
1783
+ # @!attribute [rw] child_id
1784
+ # The unique identifier (ID) of the OU or account whose parent
1785
+ # containers you want to list. Do not specify a root.
1786
+ #
1787
+ # The [regex pattern][1] for a child ID string requires one of the
1788
+ # following:
1789
+ #
1790
+ # * Account: a string that consists of exactly 12 digits.
1791
+ #
1792
+ # * Organizational unit (OU): a string that begins with "ou-"
1793
+ # followed by from 4 to 32 lower-case letters or digits (the ID of
1794
+ # the root that contains the OU) followed by a second "-" dash and
1795
+ # from 8 to 32 additional lower-case letters or digits.
1796
+ #
1797
+ #
1798
+ #
1799
+ # [1]: http://wikipedia.org/wiki/regex
1800
+ # @return [String]
1801
+ #
1802
+ # @!attribute [rw] next_token
1803
+ # Use this parameter if you receive a `NextToken` response in a
1804
+ # previous request that indicates that there is more output available.
1805
+ # Set it to the value of the previous call's `NextToken` response to
1806
+ # indicate where the output should continue from.
1807
+ # @return [String]
1808
+ #
1809
+ # @!attribute [rw] max_results
1810
+ # (Optional) Use this to limit the number of results you want included
1811
+ # in the response. If you do not include this parameter, it defaults
1812
+ # to a value that is specific to the operation. If additional items
1813
+ # exist beyond the maximum you specify, the `NextToken` response
1814
+ # element is present and has a value (is not null). Include that value
1815
+ # as the `NextToken` request parameter in the next call to the
1816
+ # operation to get the next part of the results. Note that
1817
+ # Organizations might return fewer results than the maximum even when
1818
+ # there are more results available. You should check `NextToken` after
1819
+ # every operation to ensure that you receive all of the results.
1820
+ # @return [Integer]
1821
+ #
1822
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListParentsRequest AWS API Documentation
1823
+ #
1824
+ class ListParentsRequest < Struct.new(
1825
+ :child_id,
1826
+ :next_token,
1827
+ :max_results)
1828
+ include Aws::Structure
1829
+ end
1830
+
1831
+ # @!attribute [rw] parents
1832
+ # A list of parents for the specified child account or OU.
1833
+ # @return [Array<Types::Parent>]
1834
+ #
1835
+ # @!attribute [rw] next_token
1836
+ # If present, this value indicates that there is more output available
1837
+ # than is included in the current response. Use this value in the
1838
+ # `NextToken` request parameter in a subsequent call to the operation
1839
+ # to get the next part of the output. You should repeat this until the
1840
+ # `NextToken` response element comes back as `null`.
1841
+ # @return [String]
1842
+ #
1843
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListParentsResponse AWS API Documentation
1844
+ #
1845
+ class ListParentsResponse < Struct.new(
1846
+ :parents,
1847
+ :next_token)
1848
+ include Aws::Structure
1849
+ end
1850
+
1851
+ # @note When making an API call, you may pass ListPoliciesForTargetRequest
1852
+ # data as a hash:
1853
+ #
1854
+ # {
1855
+ # target_id: "PolicyTargetId", # required
1856
+ # filter: "SERVICE_CONTROL_POLICY", # required, accepts SERVICE_CONTROL_POLICY
1857
+ # next_token: "NextToken",
1858
+ # max_results: 1,
1859
+ # }
1860
+ #
1861
+ # @!attribute [rw] target_id
1862
+ # The unique identifier (ID) of the root, organizational unit, or
1863
+ # account whose policies you want to list.
1864
+ #
1865
+ # The [regex pattern][1] for a target ID string requires one of the
1866
+ # following:
1867
+ #
1868
+ # * Root: a string that begins with "r-" followed by from 4 to 32
1869
+ # lower-case letters or digits.
1870
+ #
1871
+ # * Account: a string that consists of exactly 12 digits.
1872
+ #
1873
+ # * Organizational unit (OU): a string that begins with "ou-"
1874
+ # followed by from 4 to 32 lower-case letters or digits (the ID of
1875
+ # the root that the OU is in) followed by a second "-" dash and
1876
+ # from 8 to 32 additional lower-case letters or digits.
1877
+ #
1878
+ #
1879
+ #
1880
+ # [1]: http://wikipedia.org/wiki/regex
1881
+ # @return [String]
1882
+ #
1883
+ # @!attribute [rw] filter
1884
+ # The type of policy that you want to include in the returned list.
1885
+ # @return [String]
1886
+ #
1887
+ # @!attribute [rw] next_token
1888
+ # Use this parameter if you receive a `NextToken` response in a
1889
+ # previous request that indicates that there is more output available.
1890
+ # Set it to the value of the previous call's `NextToken` response to
1891
+ # indicate where the output should continue from.
1892
+ # @return [String]
1893
+ #
1894
+ # @!attribute [rw] max_results
1895
+ # (Optional) Use this to limit the number of results you want included
1896
+ # in the response. If you do not include this parameter, it defaults
1897
+ # to a value that is specific to the operation. If additional items
1898
+ # exist beyond the maximum you specify, the `NextToken` response
1899
+ # element is present and has a value (is not null). Include that value
1900
+ # as the `NextToken` request parameter in the next call to the
1901
+ # operation to get the next part of the results. Note that
1902
+ # Organizations might return fewer results than the maximum even when
1903
+ # there are more results available. You should check `NextToken` after
1904
+ # every operation to ensure that you receive all of the results.
1905
+ # @return [Integer]
1906
+ #
1907
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListPoliciesForTargetRequest AWS API Documentation
1908
+ #
1909
+ class ListPoliciesForTargetRequest < Struct.new(
1910
+ :target_id,
1911
+ :filter,
1912
+ :next_token,
1913
+ :max_results)
1914
+ include Aws::Structure
1915
+ end
1916
+
1917
+ # @!attribute [rw] policies
1918
+ # The list of policies that match the criteria in the request.
1919
+ # @return [Array<Types::PolicySummary>]
1920
+ #
1921
+ # @!attribute [rw] next_token
1922
+ # If present, this value indicates that there is more output available
1923
+ # than is included in the current response. Use this value in the
1924
+ # `NextToken` request parameter in a subsequent call to the operation
1925
+ # to get the next part of the output. You should repeat this until the
1926
+ # `NextToken` response element comes back as `null`.
1927
+ # @return [String]
1928
+ #
1929
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListPoliciesForTargetResponse AWS API Documentation
1930
+ #
1931
+ class ListPoliciesForTargetResponse < Struct.new(
1932
+ :policies,
1933
+ :next_token)
1934
+ include Aws::Structure
1935
+ end
1936
+
1937
+ # @note When making an API call, you may pass ListPoliciesRequest
1938
+ # data as a hash:
1939
+ #
1940
+ # {
1941
+ # filter: "SERVICE_CONTROL_POLICY", # required, accepts SERVICE_CONTROL_POLICY
1942
+ # next_token: "NextToken",
1943
+ # max_results: 1,
1944
+ # }
1945
+ #
1946
+ # @!attribute [rw] filter
1947
+ # Specifies the type of policy that you want to include in the
1948
+ # response.
1949
+ # @return [String]
1950
+ #
1951
+ # @!attribute [rw] next_token
1952
+ # Use this parameter if you receive a `NextToken` response in a
1953
+ # previous request that indicates that there is more output available.
1954
+ # Set it to the value of the previous call's `NextToken` response to
1955
+ # indicate where the output should continue from.
1956
+ # @return [String]
1957
+ #
1958
+ # @!attribute [rw] max_results
1959
+ # (Optional) Use this to limit the number of results you want included
1960
+ # in the response. If you do not include this parameter, it defaults
1961
+ # to a value that is specific to the operation. If additional items
1962
+ # exist beyond the maximum you specify, the `NextToken` response
1963
+ # element is present and has a value (is not null). Include that value
1964
+ # as the `NextToken` request parameter in the next call to the
1965
+ # operation to get the next part of the results. Note that
1966
+ # Organizations might return fewer results than the maximum even when
1967
+ # there are more results available. You should check `NextToken` after
1968
+ # every operation to ensure that you receive all of the results.
1969
+ # @return [Integer]
1970
+ #
1971
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListPoliciesRequest AWS API Documentation
1972
+ #
1973
+ class ListPoliciesRequest < Struct.new(
1974
+ :filter,
1975
+ :next_token,
1976
+ :max_results)
1977
+ include Aws::Structure
1978
+ end
1979
+
1980
+ # @!attribute [rw] policies
1981
+ # A list of policies that match the filter criteria in the request.
1982
+ # The output list does not include the policy contents. To see the
1983
+ # content for a policy, see DescribePolicy.
1984
+ # @return [Array<Types::PolicySummary>]
1985
+ #
1986
+ # @!attribute [rw] next_token
1987
+ # If present, this value indicates that there is more output available
1988
+ # than is included in the current response. Use this value in the
1989
+ # `NextToken` request parameter in a subsequent call to the operation
1990
+ # to get the next part of the output. You should repeat this until the
1991
+ # `NextToken` response element comes back as `null`.
1992
+ # @return [String]
1993
+ #
1994
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListPoliciesResponse AWS API Documentation
1995
+ #
1996
+ class ListPoliciesResponse < Struct.new(
1997
+ :policies,
1998
+ :next_token)
1999
+ include Aws::Structure
2000
+ end
2001
+
2002
+ # @note When making an API call, you may pass ListRootsRequest
2003
+ # data as a hash:
2004
+ #
2005
+ # {
2006
+ # next_token: "NextToken",
2007
+ # max_results: 1,
2008
+ # }
2009
+ #
2010
+ # @!attribute [rw] next_token
2011
+ # Use this parameter if you receive a `NextToken` response in a
2012
+ # previous request that indicates that there is more output available.
2013
+ # Set it to the value of the previous call's `NextToken` response to
2014
+ # indicate where the output should continue from.
2015
+ # @return [String]
2016
+ #
2017
+ # @!attribute [rw] max_results
2018
+ # (Optional) Use this to limit the number of results you want included
2019
+ # in the response. If you do not include this parameter, it defaults
2020
+ # to a value that is specific to the operation. If additional items
2021
+ # exist beyond the maximum you specify, the `NextToken` response
2022
+ # element is present and has a value (is not null). Include that value
2023
+ # as the `NextToken` request parameter in the next call to the
2024
+ # operation to get the next part of the results. Note that
2025
+ # Organizations might return fewer results than the maximum even when
2026
+ # there are more results available. You should check `NextToken` after
2027
+ # every operation to ensure that you receive all of the results.
2028
+ # @return [Integer]
2029
+ #
2030
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListRootsRequest AWS API Documentation
2031
+ #
2032
+ class ListRootsRequest < Struct.new(
2033
+ :next_token,
2034
+ :max_results)
2035
+ include Aws::Structure
2036
+ end
2037
+
2038
+ # @!attribute [rw] roots
2039
+ # A list of roots that are defined in an organization.
2040
+ # @return [Array<Types::Root>]
2041
+ #
2042
+ # @!attribute [rw] next_token
2043
+ # If present, this value indicates that there is more output available
2044
+ # than is included in the current response. Use this value in the
2045
+ # `NextToken` request parameter in a subsequent call to the operation
2046
+ # to get the next part of the output. You should repeat this until the
2047
+ # `NextToken` response element comes back as `null`.
2048
+ # @return [String]
2049
+ #
2050
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListRootsResponse AWS API Documentation
2051
+ #
2052
+ class ListRootsResponse < Struct.new(
2053
+ :roots,
2054
+ :next_token)
2055
+ include Aws::Structure
2056
+ end
2057
+
2058
+ # @note When making an API call, you may pass ListTargetsForPolicyRequest
2059
+ # data as a hash:
2060
+ #
2061
+ # {
2062
+ # policy_id: "PolicyId", # required
2063
+ # next_token: "NextToken",
2064
+ # max_results: 1,
2065
+ # }
2066
+ #
2067
+ # @!attribute [rw] policy_id
2068
+ # The unique identifier (ID) of the policy for which you want to know
2069
+ # its attachments.
2070
+ #
2071
+ # The [regex pattern][1] for a policy ID string requires "p-"
2072
+ # followed by from 8 to 128 lower-case letters or digits.
2073
+ #
2074
+ #
2075
+ #
2076
+ # [1]: http://wikipedia.org/wiki/regex
2077
+ # @return [String]
2078
+ #
2079
+ # @!attribute [rw] next_token
2080
+ # Use this parameter if you receive a `NextToken` response in a
2081
+ # previous request that indicates that there is more output available.
2082
+ # Set it to the value of the previous call's `NextToken` response to
2083
+ # indicate where the output should continue from.
2084
+ # @return [String]
2085
+ #
2086
+ # @!attribute [rw] max_results
2087
+ # (Optional) Use this to limit the number of results you want included
2088
+ # in the response. If you do not include this parameter, it defaults
2089
+ # to a value that is specific to the operation. If additional items
2090
+ # exist beyond the maximum you specify, the `NextToken` response
2091
+ # element is present and has a value (is not null). Include that value
2092
+ # as the `NextToken` request parameter in the next call to the
2093
+ # operation to get the next part of the results. Note that
2094
+ # Organizations might return fewer results than the maximum even when
2095
+ # there are more results available. You should check `NextToken` after
2096
+ # every operation to ensure that you receive all of the results.
2097
+ # @return [Integer]
2098
+ #
2099
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListTargetsForPolicyRequest AWS API Documentation
2100
+ #
2101
+ class ListTargetsForPolicyRequest < Struct.new(
2102
+ :policy_id,
2103
+ :next_token,
2104
+ :max_results)
2105
+ include Aws::Structure
2106
+ end
2107
+
2108
+ # @!attribute [rw] targets
2109
+ # A list of structures, each of which contains details about one of
2110
+ # the entities to which the specified policy is attached.
2111
+ # @return [Array<Types::PolicyTargetSummary>]
2112
+ #
2113
+ # @!attribute [rw] next_token
2114
+ # If present, this value indicates that there is more output available
2115
+ # than is included in the current response. Use this value in the
2116
+ # `NextToken` request parameter in a subsequent call to the operation
2117
+ # to get the next part of the output. You should repeat this until the
2118
+ # `NextToken` response element comes back as `null`.
2119
+ # @return [String]
2120
+ #
2121
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListTargetsForPolicyResponse AWS API Documentation
2122
+ #
2123
+ class ListTargetsForPolicyResponse < Struct.new(
2124
+ :targets,
2125
+ :next_token)
2126
+ include Aws::Structure
2127
+ end
2128
+
2129
+ # @note When making an API call, you may pass MoveAccountRequest
2130
+ # data as a hash:
2131
+ #
2132
+ # {
2133
+ # account_id: "AccountId", # required
2134
+ # source_parent_id: "ParentId", # required
2135
+ # destination_parent_id: "ParentId", # required
2136
+ # }
2137
+ #
2138
+ # @!attribute [rw] account_id
2139
+ # The unique identifier (ID) of the account that you want to move.
2140
+ #
2141
+ # The [regex pattern][1] for an account ID string requires exactly 12
2142
+ # digits.
2143
+ #
2144
+ #
2145
+ #
2146
+ # [1]: http://wikipedia.org/wiki/regex
2147
+ # @return [String]
2148
+ #
2149
+ # @!attribute [rw] source_parent_id
2150
+ # The unique identifier (ID) of the root or organizational unit that
2151
+ # you want to move the account from.
2152
+ #
2153
+ # The [regex pattern][1] for a parent ID string requires one of the
2154
+ # following:
2155
+ #
2156
+ # * Root: a string that begins with "r-" followed by from 4 to 32
2157
+ # lower-case letters or digits.
2158
+ #
2159
+ # * Organizational unit (OU): a string that begins with "ou-"
2160
+ # followed by from 4 to 32 lower-case letters or digits (the ID of
2161
+ # the root that the OU is in) followed by a second "-" dash and
2162
+ # from 8 to 32 additional lower-case letters or digits.
2163
+ #
2164
+ #
2165
+ #
2166
+ # [1]: http://wikipedia.org/wiki/regex
2167
+ # @return [String]
2168
+ #
2169
+ # @!attribute [rw] destination_parent_id
2170
+ # The unique identifier (ID) of the root or organizational unit that
2171
+ # you want to move the account to.
2172
+ #
2173
+ # The [regex pattern][1] for a parent ID string requires one of the
2174
+ # following:
2175
+ #
2176
+ # * Root: a string that begins with "r-" followed by from 4 to 32
2177
+ # lower-case letters or digits.
2178
+ #
2179
+ # * Organizational unit (OU): a string that begins with "ou-"
2180
+ # followed by from 4 to 32 lower-case letters or digits (the ID of
2181
+ # the root that the OU is in) followed by a second "-" dash and
2182
+ # from 8 to 32 additional lower-case letters or digits.
2183
+ #
2184
+ #
2185
+ #
2186
+ # [1]: http://wikipedia.org/wiki/regex
2187
+ # @return [String]
2188
+ #
2189
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/MoveAccountRequest AWS API Documentation
2190
+ #
2191
+ class MoveAccountRequest < Struct.new(
2192
+ :account_id,
2193
+ :source_parent_id,
2194
+ :destination_parent_id)
2195
+ include Aws::Structure
2196
+ end
2197
+
2198
+ # Contains details about an organization. An organization is a
2199
+ # collection of accounts that are centrally managed together using
2200
+ # consolidated billing, organized hierarchically with organizational
2201
+ # units (OUs), and controlled with policies .
2202
+ #
2203
+ # @!attribute [rw] id
2204
+ # The unique identifier (ID) of an organization.
2205
+ #
2206
+ # The [regex pattern][1] for an organization ID string requires "o-"
2207
+ # followed by from 10 to 32 lower-case letters or digits.
2208
+ #
2209
+ #
2210
+ #
2211
+ # [1]: http://wikipedia.org/wiki/regex
2212
+ # @return [String]
2213
+ #
2214
+ # @!attribute [rw] arn
2215
+ # The Amazon Resource Name (ARN) of an organization.
2216
+ #
2217
+ # For more information about ARNs in Organizations, see [ARN Formats
2218
+ # Supported by Organizations][1] in the *AWS Organizations User
2219
+ # Guide*.
2220
+ #
2221
+ #
2222
+ #
2223
+ # [1]: http://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns
2224
+ # @return [String]
2225
+ #
2226
+ # @!attribute [rw] feature_set
2227
+ # Specifies the functionality that currently is available to the
2228
+ # organization. If set to "ALL", then all features are enabled and
2229
+ # policies can be applied to accounts in the organization. If set to
2230
+ # "CONSOLIDATED\_BILLING", then only consolidated billing
2231
+ # functionality is available. For more information, see [Enabling All
2232
+ # Features in Your Organization][1] in the *AWS Organizations User
2233
+ # Guide*.
2234
+ #
2235
+ #
2236
+ #
2237
+ # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/orgs_manage_org_support-all-features.html
2238
+ # @return [String]
2239
+ #
2240
+ # @!attribute [rw] master_account_arn
2241
+ # The Amazon Resource Name (ARN) of the account that is designated as
2242
+ # the master account for the organization.
2243
+ #
2244
+ # For more information about ARNs in Organizations, see [ARN Formats
2245
+ # Supported by Organizations][1] in the *AWS Organizations User
2246
+ # Guide*.
2247
+ #
2248
+ #
2249
+ #
2250
+ # [1]: http://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns
2251
+ # @return [String]
2252
+ #
2253
+ # @!attribute [rw] master_account_id
2254
+ # The unique identifier (ID) of the master account of an organization.
2255
+ #
2256
+ # The [regex pattern][1] for an account ID string requires exactly 12
2257
+ # digits.
2258
+ #
2259
+ #
2260
+ #
2261
+ # [1]: http://wikipedia.org/wiki/regex
2262
+ # @return [String]
2263
+ #
2264
+ # @!attribute [rw] master_account_email
2265
+ # The email address that is associated with the AWS account that is
2266
+ # designated as the master account for the organization.
2267
+ # @return [String]
2268
+ #
2269
+ # @!attribute [rw] available_policy_types
2270
+ # A list of policy types that are enabled for this organization. For
2271
+ # example, if your organization has all features enabled, then service
2272
+ # control policies (SCPs) are included in the list.
2273
+ # @return [Array<Types::PolicyTypeSummary>]
2274
+ #
2275
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/Organization AWS API Documentation
2276
+ #
2277
+ class Organization < Struct.new(
2278
+ :id,
2279
+ :arn,
2280
+ :feature_set,
2281
+ :master_account_arn,
2282
+ :master_account_id,
2283
+ :master_account_email,
2284
+ :available_policy_types)
2285
+ include Aws::Structure
2286
+ end
2287
+
2288
+ # Contains details about an organizational unit (OU). An OU is a
2289
+ # container of AWS accounts within a root of an organization. Policies
2290
+ # that are attached to an OU apply to all accounts contained in that OU
2291
+ # and in any child OUs.
2292
+ #
2293
+ # @!attribute [rw] id
2294
+ # The unique identifier (ID) associated with this OU.
2295
+ #
2296
+ # The [regex pattern][1] for an organizational unit ID string requires
2297
+ # "ou-" followed by from 4 to 32 lower-case letters or digits (the
2298
+ # ID of the root that contains the OU) followed by a second "-" dash
2299
+ # and from 8 to 32 additional lower-case letters or digits.
2300
+ #
2301
+ #
2302
+ #
2303
+ # [1]: http://wikipedia.org/wiki/regex
2304
+ # @return [String]
2305
+ #
2306
+ # @!attribute [rw] arn
2307
+ # The Amazon Resource Name (ARN) of this OU.
2308
+ #
2309
+ # For more information about ARNs in Organizations, see [ARN Formats
2310
+ # Supported by Organizations][1] in the *AWS Organizations User
2311
+ # Guide*.
2312
+ #
2313
+ #
2314
+ #
2315
+ # [1]: http://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns
2316
+ # @return [String]
2317
+ #
2318
+ # @!attribute [rw] name
2319
+ # The friendly name of this OU.
2320
+ #
2321
+ # The [regex pattern][1] that is used to validate this parameter is a
2322
+ # string of any of the characters in the ASCII character range.
2323
+ #
2324
+ #
2325
+ #
2326
+ # [1]: http://wikipedia.org/wiki/regex
2327
+ # @return [String]
2328
+ #
2329
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/OrganizationalUnit AWS API Documentation
2330
+ #
2331
+ class OrganizationalUnit < Struct.new(
2332
+ :id,
2333
+ :arn,
2334
+ :name)
2335
+ include Aws::Structure
2336
+ end
2337
+
2338
+ # Contains information about either a root or an organizational unit
2339
+ # (OU) that can contain OUs or accounts in an organization.
2340
+ #
2341
+ # @!attribute [rw] id
2342
+ # The unique identifier (ID) of the parent entity.
2343
+ #
2344
+ # The [regex pattern][1] for a parent ID string requires one of the
2345
+ # following:
2346
+ #
2347
+ # * Root: a string that begins with "r-" followed by from 4 to 32
2348
+ # lower-case letters or digits.
2349
+ #
2350
+ # * Organizational unit (OU): a string that begins with "ou-"
2351
+ # followed by from 4 to 32 lower-case letters or digits (the ID of
2352
+ # the root that the OU is in) followed by a second "-" dash and
2353
+ # from 8 to 32 additional lower-case letters or digits.
2354
+ #
2355
+ #
2356
+ #
2357
+ # [1]: http://wikipedia.org/wiki/regex
2358
+ # @return [String]
2359
+ #
2360
+ # @!attribute [rw] type
2361
+ # The type of the parent entity.
2362
+ # @return [String]
2363
+ #
2364
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/Parent AWS API Documentation
2365
+ #
2366
+ class Parent < Struct.new(
2367
+ :id,
2368
+ :type)
2369
+ include Aws::Structure
2370
+ end
2371
+
2372
+ # Contains rules to be applied to the affected accounts. Policies can be
2373
+ # attached directly to accounts, or to roots and OUs to affect all
2374
+ # accounts in those hierarchies.
2375
+ #
2376
+ # @!attribute [rw] policy_summary
2377
+ # A structure that contains additional details about the policy.
2378
+ # @return [Types::PolicySummary]
2379
+ #
2380
+ # @!attribute [rw] content
2381
+ # The text content of the policy.
2382
+ # @return [String]
2383
+ #
2384
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/Policy AWS API Documentation
2385
+ #
2386
+ class Policy < Struct.new(
2387
+ :policy_summary,
2388
+ :content)
2389
+ include Aws::Structure
2390
+ end
2391
+
2392
+ # Contains information about a policy, but does not include the content.
2393
+ # To see the content of a policy, see DescribePolicy.
2394
+ #
2395
+ # @!attribute [rw] id
2396
+ # The unique identifier (ID) of the policy.
2397
+ #
2398
+ # The [regex pattern][1] for a policy ID string requires "p-"
2399
+ # followed by from 8 to 128 lower-case letters or digits.
2400
+ #
2401
+ #
2402
+ #
2403
+ # [1]: http://wikipedia.org/wiki/regex
2404
+ # @return [String]
2405
+ #
2406
+ # @!attribute [rw] arn
2407
+ # The Amazon Resource Name (ARN) of the policy.
2408
+ #
2409
+ # For more information about ARNs in Organizations, see [ARN Formats
2410
+ # Supported by Organizations][1] in the *AWS Organizations User
2411
+ # Guide*.
2412
+ #
2413
+ #
2414
+ #
2415
+ # [1]: http://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns
2416
+ # @return [String]
2417
+ #
2418
+ # @!attribute [rw] name
2419
+ # The friendly name of the policy.
2420
+ #
2421
+ # The [regex pattern][1] that is used to validate this parameter is a
2422
+ # string of any of the characters in the ASCII character range.
2423
+ #
2424
+ #
2425
+ #
2426
+ # [1]: http://wikipedia.org/wiki/regex
2427
+ # @return [String]
2428
+ #
2429
+ # @!attribute [rw] description
2430
+ # The description of the policy.
2431
+ # @return [String]
2432
+ #
2433
+ # @!attribute [rw] type
2434
+ # The type of policy.
2435
+ # @return [String]
2436
+ #
2437
+ # @!attribute [rw] aws_managed
2438
+ # A boolean value that indicates whether the specified policy is an
2439
+ # AWS managed policy. If true, then you can attach the policy to
2440
+ # roots, OUs, or accounts, but you cannot edit it.
2441
+ # @return [Boolean]
2442
+ #
2443
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/PolicySummary AWS API Documentation
2444
+ #
2445
+ class PolicySummary < Struct.new(
2446
+ :id,
2447
+ :arn,
2448
+ :name,
2449
+ :description,
2450
+ :type,
2451
+ :aws_managed)
2452
+ include Aws::Structure
2453
+ end
2454
+
2455
+ # Contains information about a root, OU, or account that a policy is
2456
+ # attached to.
2457
+ #
2458
+ # @!attribute [rw] target_id
2459
+ # The unique identifier (ID) of the policy target.
2460
+ #
2461
+ # The [regex pattern][1] for a target ID string requires one of the
2462
+ # following:
2463
+ #
2464
+ # * Root: a string that begins with "r-" followed by from 4 to 32
2465
+ # lower-case letters or digits.
2466
+ #
2467
+ # * Account: a string that consists of exactly 12 digits.
2468
+ #
2469
+ # * Organizational unit (OU): a string that begins with "ou-"
2470
+ # followed by from 4 to 32 lower-case letters or digits (the ID of
2471
+ # the root that the OU is in) followed by a second "-" dash and
2472
+ # from 8 to 32 additional lower-case letters or digits.
2473
+ #
2474
+ #
2475
+ #
2476
+ # [1]: http://wikipedia.org/wiki/regex
2477
+ # @return [String]
2478
+ #
2479
+ # @!attribute [rw] arn
2480
+ # The Amazon Resource Name (ARN) of the policy target.
2481
+ #
2482
+ # For more information about ARNs in Organizations, see [ARN Formats
2483
+ # Supported by Organizations][1] in the *AWS Organizations User
2484
+ # Guide*.
2485
+ #
2486
+ #
2487
+ #
2488
+ # [1]: http://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns
2489
+ # @return [String]
2490
+ #
2491
+ # @!attribute [rw] name
2492
+ # The friendly name of the policy target.
2493
+ #
2494
+ # The [regex pattern][1] that is used to validate this parameter is a
2495
+ # string of any of the characters in the ASCII character range.
2496
+ #
2497
+ #
2498
+ #
2499
+ # [1]: http://wikipedia.org/wiki/regex
2500
+ # @return [String]
2501
+ #
2502
+ # @!attribute [rw] type
2503
+ # The type of the policy target.
2504
+ # @return [String]
2505
+ #
2506
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/PolicyTargetSummary AWS API Documentation
2507
+ #
2508
+ class PolicyTargetSummary < Struct.new(
2509
+ :target_id,
2510
+ :arn,
2511
+ :name,
2512
+ :type)
2513
+ include Aws::Structure
2514
+ end
2515
+
2516
+ # Contains information about a policy type and its status in the
2517
+ # associated root.
2518
+ #
2519
+ # @!attribute [rw] type
2520
+ # The name of the policy type.
2521
+ # @return [String]
2522
+ #
2523
+ # @!attribute [rw] status
2524
+ # The status of the policy type as it relates to the associated root.
2525
+ # To attach a policy of the specified type to a root or to an OU or
2526
+ # account in that root, it must be available in the organization and
2527
+ # enabled for that root.
2528
+ # @return [String]
2529
+ #
2530
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/PolicyTypeSummary AWS API Documentation
2531
+ #
2532
+ class PolicyTypeSummary < Struct.new(
2533
+ :type,
2534
+ :status)
2535
+ include Aws::Structure
2536
+ end
2537
+
2538
+ # @note When making an API call, you may pass RemoveAccountFromOrganizationRequest
2539
+ # data as a hash:
2540
+ #
2541
+ # {
2542
+ # account_id: "AccountId", # required
2543
+ # }
2544
+ #
2545
+ # @!attribute [rw] account_id
2546
+ # The unique identifier (ID) of the member account that you want to
2547
+ # remove from the organization.
2548
+ #
2549
+ # The [regex pattern][1] for an account ID string requires exactly 12
2550
+ # digits.
2551
+ #
2552
+ #
2553
+ #
2554
+ # [1]: http://wikipedia.org/wiki/regex
2555
+ # @return [String]
2556
+ #
2557
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/RemoveAccountFromOrganizationRequest AWS API Documentation
2558
+ #
2559
+ class RemoveAccountFromOrganizationRequest < Struct.new(
2560
+ :account_id)
2561
+ include Aws::Structure
2562
+ end
2563
+
2564
+ # Contains details about a root. A root is a top-level parent node in
2565
+ # the hierarchy of an organization that can contain organizational units
2566
+ # (OUs) and accounts. Every root contains every AWS account in the
2567
+ # organization. Each root enables the accounts to be organized in a
2568
+ # different way and to have different policy types enabled for use in
2569
+ # that root.
2570
+ #
2571
+ # @!attribute [rw] id
2572
+ # The unique identifier (ID) for the root.
2573
+ #
2574
+ # The [regex pattern][1] for a root ID string requires "r-" followed
2575
+ # by from 4 to 32 lower-case letters or digits.
2576
+ #
2577
+ #
2578
+ #
2579
+ # [1]: http://wikipedia.org/wiki/regex
2580
+ # @return [String]
2581
+ #
2582
+ # @!attribute [rw] arn
2583
+ # The Amazon Resource Name (ARN) of the root.
2584
+ #
2585
+ # For more information about ARNs in Organizations, see [ARN Formats
2586
+ # Supported by Organizations][1] in the *AWS Organizations User
2587
+ # Guide*.
2588
+ #
2589
+ #
2590
+ #
2591
+ # [1]: http://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns
2592
+ # @return [String]
2593
+ #
2594
+ # @!attribute [rw] name
2595
+ # The friendly name of the root.
2596
+ #
2597
+ # The [regex pattern][1] that is used to validate this parameter is a
2598
+ # string of any of the characters in the ASCII character range.
2599
+ #
2600
+ #
2601
+ #
2602
+ # [1]: http://wikipedia.org/wiki/regex
2603
+ # @return [String]
2604
+ #
2605
+ # @!attribute [rw] policy_types
2606
+ # The types of policies that are currently enabled for the root and
2607
+ # therefore can be attached to the root or to its OUs or accounts.
2608
+ # @return [Array<Types::PolicyTypeSummary>]
2609
+ #
2610
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/Root AWS API Documentation
2611
+ #
2612
+ class Root < Struct.new(
2613
+ :id,
2614
+ :arn,
2615
+ :name,
2616
+ :policy_types)
2617
+ include Aws::Structure
2618
+ end
2619
+
2620
+ # @note When making an API call, you may pass UpdateOrganizationalUnitRequest
2621
+ # data as a hash:
2622
+ #
2623
+ # {
2624
+ # organizational_unit_id: "OrganizationalUnitId", # required
2625
+ # name: "OrganizationalUnitName",
2626
+ # }
2627
+ #
2628
+ # @!attribute [rw] organizational_unit_id
2629
+ # The unique identifier (ID) of the OU that you want to rename. You
2630
+ # can get the ID from the ListOrganizationalUnitsForParent operation.
2631
+ #
2632
+ # The [regex pattern][1] for an organizational unit ID string requires
2633
+ # "ou-" followed by from 4 to 32 lower-case letters or digits (the
2634
+ # ID of the root that contains the OU) followed by a second "-" dash
2635
+ # and from 8 to 32 additional lower-case letters or digits.
2636
+ #
2637
+ #
2638
+ #
2639
+ # [1]: http://wikipedia.org/wiki/regex
2640
+ # @return [String]
2641
+ #
2642
+ # @!attribute [rw] name
2643
+ # The new name that you want to assign to the OU.
2644
+ #
2645
+ # The [regex pattern][1] that is used to validate this parameter is a
2646
+ # string of any of the characters in the ASCII character range.
2647
+ #
2648
+ #
2649
+ #
2650
+ # [1]: http://wikipedia.org/wiki/regex
2651
+ # @return [String]
2652
+ #
2653
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/UpdateOrganizationalUnitRequest AWS API Documentation
2654
+ #
2655
+ class UpdateOrganizationalUnitRequest < Struct.new(
2656
+ :organizational_unit_id,
2657
+ :name)
2658
+ include Aws::Structure
2659
+ end
2660
+
2661
+ # @!attribute [rw] organizational_unit
2662
+ # A structure that contains the details about the specified OU,
2663
+ # including its new name.
2664
+ # @return [Types::OrganizationalUnit]
2665
+ #
2666
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/UpdateOrganizationalUnitResponse AWS API Documentation
2667
+ #
2668
+ class UpdateOrganizationalUnitResponse < Struct.new(
2669
+ :organizational_unit)
2670
+ include Aws::Structure
2671
+ end
2672
+
2673
+ # @note When making an API call, you may pass UpdatePolicyRequest
2674
+ # data as a hash:
2675
+ #
2676
+ # {
2677
+ # policy_id: "PolicyId", # required
2678
+ # name: "PolicyName",
2679
+ # description: "PolicyDescription",
2680
+ # content: "PolicyContent",
2681
+ # }
2682
+ #
2683
+ # @!attribute [rw] policy_id
2684
+ # The unique identifier (ID) of the policy that you want to update.
2685
+ #
2686
+ # The [regex pattern][1] for a policy ID string requires "p-"
2687
+ # followed by from 8 to 128 lower-case letters or digits.
2688
+ #
2689
+ #
2690
+ #
2691
+ # [1]: http://wikipedia.org/wiki/regex
2692
+ # @return [String]
2693
+ #
2694
+ # @!attribute [rw] name
2695
+ # If provided, the new name for the policy.
2696
+ #
2697
+ # The [regex pattern][1] that is used to validate this parameter is a
2698
+ # string of any of the characters in the ASCII character range.
2699
+ #
2700
+ #
2701
+ #
2702
+ # [1]: http://wikipedia.org/wiki/regex
2703
+ # @return [String]
2704
+ #
2705
+ # @!attribute [rw] description
2706
+ # If provided, the new description for the policy.
2707
+ # @return [String]
2708
+ #
2709
+ # @!attribute [rw] content
2710
+ # If provided, the new content for the policy. The text must be
2711
+ # correctly formatted JSON that complies with the syntax for the
2712
+ # policy's type. For more information, see [Service Control Policy
2713
+ # Syntax][1] in the *AWS Organizations User Guide*.
2714
+ #
2715
+ #
2716
+ #
2717
+ # [1]: http://docs.aws.amazon.com/organizations/latest/userguide/orgs_reference_scp-syntax.html
2718
+ # @return [String]
2719
+ #
2720
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/UpdatePolicyRequest AWS API Documentation
2721
+ #
2722
+ class UpdatePolicyRequest < Struct.new(
2723
+ :policy_id,
2724
+ :name,
2725
+ :description,
2726
+ :content)
2727
+ include Aws::Structure
2728
+ end
2729
+
2730
+ # @!attribute [rw] policy
2731
+ # A structure that contains details about the updated policy, showing
2732
+ # the requested changes.
2733
+ # @return [Types::Policy]
2734
+ #
2735
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/UpdatePolicyResponse AWS API Documentation
2736
+ #
2737
+ class UpdatePolicyResponse < Struct.new(
2738
+ :policy)
2739
+ include Aws::Structure
2740
+ end
2741
+
2742
+ end
2743
+ end