@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api AWS Organizations
@version 2016-11-28
@auth AWS SigV4
@endpoints 55
@hint download_for_search
@toc root(55)

@endpoint POST /
@required {HandshakeId: str}
@returns(200) {Handshake: Handshake?{Id: str?, Arn: str?, Parties: [HandshakeParty]?, State: str?, RequestedTimestamp: str(timestamp)?, ExpirationTimestamp: str(timestamp)?, Action: str?, Resources: [HandshakeResource]?}}

@endpoint POST /
@required {PolicyId: str, TargetId: str}

@endpoint POST /
@required {HandshakeId: str}
@returns(200) {Handshake: Handshake?{Id: str?, Arn: str?, Parties: [HandshakeParty]?, State: str?, RequestedTimestamp: str(timestamp)?, ExpirationTimestamp: str(timestamp)?, Action: str?, Resources: [HandshakeResource]?}}

@endpoint POST /
@required {AccountId: str}

@endpoint POST /
@required {Email: str, AccountName: str}
@optional {RoleName: str, IamUserAccessToBilling: str, Tags: [Tag]}
@returns(200) {CreateAccountStatus: CreateAccountStatus?{Id: str?, AccountName: str?, State: str?, RequestedTimestamp: str(timestamp)?, CompletedTimestamp: str(timestamp)?, AccountId: str?, GovCloudAccountId: str?, FailureReason: str?}}

@endpoint POST /
@required {Email: str, AccountName: str}
@optional {RoleName: str, IamUserAccessToBilling: str, Tags: [Tag]}
@returns(200) {CreateAccountStatus: CreateAccountStatus?{Id: str?, AccountName: str?, State: str?, RequestedTimestamp: str(timestamp)?, CompletedTimestamp: str(timestamp)?, AccountId: str?, GovCloudAccountId: str?, FailureReason: str?}}

@endpoint POST /
@optional {FeatureSet: str}
@returns(200) {Organization: Organization?{Id: str?, Arn: str?, FeatureSet: str?, MasterAccountArn: str?, MasterAccountId: str?, MasterAccountEmail: str?, AvailablePolicyTypes: [PolicyTypeSummary]?}}

@endpoint POST /
@required {ParentId: str, Name: str}
@optional {Tags: [Tag]}
@returns(200) {OrganizationalUnit: OrganizationalUnit?{Id: str?, Arn: str?, Name: str?}}

@endpoint POST /
@required {Content: str, Description: str, Name: str, Type: str}
@optional {Tags: [Tag]}
@returns(200) {Policy: Policy?{PolicySummary: PolicySummary?{Id: str?, Arn: str?, Name: str?, Description: str?, Type: str?, AwsManaged: bool?}, Content: str?}}

@endpoint POST /
@required {HandshakeId: str}
@returns(200) {Handshake: Handshake?{Id: str?, Arn: str?, Parties: [HandshakeParty]?, State: str?, RequestedTimestamp: str(timestamp)?, ExpirationTimestamp: str(timestamp)?, Action: str?, Resources: [HandshakeResource]?}}

@endpoint POST /

@endpoint POST /
@required {OrganizationalUnitId: str}

@endpoint POST /
@required {PolicyId: str}

@endpoint POST /

@endpoint POST /
@required {AccountId: str, ServicePrincipal: str}

@endpoint POST /
@required {AccountId: str}
@returns(200) {Account: Account?{Id: str?, Arn: str?, Email: str?, Name: str?, Status: str?, JoinedMethod: str?, JoinedTimestamp: str(timestamp)?}}

@endpoint POST /
@required {CreateAccountRequestId: str}
@returns(200) {CreateAccountStatus: CreateAccountStatus?{Id: str?, AccountName: str?, State: str?, RequestedTimestamp: str(timestamp)?, CompletedTimestamp: str(timestamp)?, AccountId: str?, GovCloudAccountId: str?, FailureReason: str?}}

@endpoint POST /
@required {PolicyType: str}
@optional {TargetId: str}
@returns(200) {EffectivePolicy: EffectivePolicy?{PolicyContent: str?, LastUpdatedTimestamp: str(timestamp)?, TargetId: str?, PolicyType: str?}}

@endpoint POST /
@required {HandshakeId: str}
@returns(200) {Handshake: Handshake?{Id: str?, Arn: str?, Parties: [HandshakeParty]?, State: str?, RequestedTimestamp: str(timestamp)?, ExpirationTimestamp: str(timestamp)?, Action: str?, Resources: [HandshakeResource]?}}

@endpoint POST /
@returns(200) {Organization: Organization?{Id: str?, Arn: str?, FeatureSet: str?, MasterAccountArn: str?, MasterAccountId: str?, MasterAccountEmail: str?, AvailablePolicyTypes: [PolicyTypeSummary]?}}

@endpoint POST /
@required {OrganizationalUnitId: str}
@returns(200) {OrganizationalUnit: OrganizationalUnit?{Id: str?, Arn: str?, Name: str?}}

@endpoint POST /
@required {PolicyId: str}
@returns(200) {Policy: Policy?{PolicySummary: PolicySummary?{Id: str?, Arn: str?, Name: str?, Description: str?, Type: str?, AwsManaged: bool?}, Content: str?}}

@endpoint POST /
@returns(200) {ResourcePolicy: ResourcePolicy?{ResourcePolicySummary: ResourcePolicySummary?{Id: str?, Arn: str?}, Content: str?}}

@endpoint POST /
@required {PolicyId: str, TargetId: str}

@endpoint POST /
@required {ServicePrincipal: str}

@endpoint POST /
@required {RootId: str, PolicyType: str}
@returns(200) {Root: Root?{Id: str?, Arn: str?, Name: str?, PolicyTypes: [PolicyTypeSummary]?}}

@endpoint POST /
@required {ServicePrincipal: str}

@endpoint POST /
@returns(200) {Handshake: Handshake?{Id: str?, Arn: str?, Parties: [HandshakeParty]?, State: str?, RequestedTimestamp: str(timestamp)?, ExpirationTimestamp: str(timestamp)?, Action: str?, Resources: [HandshakeResource]?}}

@endpoint POST /
@required {RootId: str, PolicyType: str}
@returns(200) {Root: Root?{Id: str?, Arn: str?, Name: str?, PolicyTypes: [PolicyTypeSummary]?}}

@endpoint POST /
@required {Target: HandshakeParty}
@optional {Notes: str, Tags: [Tag]}
@returns(200) {Handshake: Handshake?{Id: str?, Arn: str?, Parties: [HandshakeParty]?, State: str?, RequestedTimestamp: str(timestamp)?, ExpirationTimestamp: str(timestamp)?, Action: str?, Resources: [HandshakeResource]?}}

@endpoint POST /

@endpoint POST /
@optional {NextToken: str, MaxResults: int}
@returns(200) {EnabledServicePrincipals: [EnabledServicePrincipal]?, NextToken: str?}

@endpoint POST /
@optional {NextToken: str, MaxResults: int}
@returns(200) {Accounts: [Account]?, NextToken: str?}

@endpoint POST /
@required {ParentId: str}
@optional {NextToken: str, MaxResults: int}
@returns(200) {Accounts: [Account]?, NextToken: str?}

@endpoint POST /
@required {ParentId: str, ChildType: str}
@optional {NextToken: str, MaxResults: int}
@returns(200) {Children: [Child]?, NextToken: str?}

@endpoint POST /
@optional {States: [str], NextToken: str, MaxResults: int}
@returns(200) {CreateAccountStatuses: [CreateAccountStatus]?, NextToken: str?}

@endpoint POST /
@optional {ServicePrincipal: str, NextToken: str, MaxResults: int}
@returns(200) {DelegatedAdministrators: [DelegatedAdministrator]?, NextToken: str?}

@endpoint POST /
@required {AccountId: str}
@optional {NextToken: str, MaxResults: int}
@returns(200) {DelegatedServices: [DelegatedService]?, NextToken: str?}

@endpoint POST /
@optional {Filter: HandshakeFilter, NextToken: str, MaxResults: int}
@returns(200) {Handshakes: [Handshake]?, NextToken: str?}

@endpoint POST /
@optional {Filter: HandshakeFilter, NextToken: str, MaxResults: int}
@returns(200) {Handshakes: [Handshake]?, NextToken: str?}

@endpoint POST /
@required {ParentId: str}
@optional {NextToken: str, MaxResults: int}
@returns(200) {OrganizationalUnits: [OrganizationalUnit]?, NextToken: str?}

@endpoint POST /
@required {ChildId: str}
@optional {NextToken: str, MaxResults: int}
@returns(200) {Parents: [Parent]?, NextToken: str?}

@endpoint POST /
@required {Filter: str}
@optional {NextToken: str, MaxResults: int}
@returns(200) {Policies: [PolicySummary]?, NextToken: str?}

@endpoint POST /
@required {TargetId: str, Filter: str}
@optional {NextToken: str, MaxResults: int}
@returns(200) {Policies: [PolicySummary]?, NextToken: str?}

@endpoint POST /
@optional {NextToken: str, MaxResults: int}
@returns(200) {Roots: [Root]?, NextToken: str?}

@endpoint POST /
@required {ResourceId: str}
@optional {NextToken: str}
@returns(200) {Tags: [Tag]?, NextToken: str?}

@endpoint POST /
@required {PolicyId: str}
@optional {NextToken: str, MaxResults: int}
@returns(200) {Targets: [PolicyTargetSummary]?, NextToken: str?}

@endpoint POST /
@required {AccountId: str, SourceParentId: str, DestinationParentId: str}

@endpoint POST /
@required {Content: str}
@optional {Tags: [Tag]}
@returns(200) {ResourcePolicy: ResourcePolicy?{ResourcePolicySummary: ResourcePolicySummary?{Id: str?, Arn: str?}, Content: str?}}

@endpoint POST /
@required {AccountId: str, ServicePrincipal: str}

@endpoint POST /
@required {AccountId: str}

@endpoint POST /
@required {ResourceId: str, Tags: [Tag]}

@endpoint POST /
@required {ResourceId: str, TagKeys: [str]}

@endpoint POST /
@required {OrganizationalUnitId: str}
@optional {Name: str}
@returns(200) {OrganizationalUnit: OrganizationalUnit?{Id: str?, Arn: str?, Name: str?}}

@endpoint POST /
@required {PolicyId: str}
@optional {Name: str, Description: str, Content: str}
@returns(200) {Policy: Policy?{PolicySummary: PolicySummary?{Id: str?, Arn: str?, Name: str?, Description: str?, Type: str?, AwsManaged: bool?}, Content: str?}}

@end
