1. Packages
  2. AWS Classic
  3. API Docs
  4. organizations
  5. getOrganizationalUnits

Try AWS Native preview for resources not in the classic version.

AWS Classic v6.32.0 published on Friday, Apr 19, 2024 by Pulumi

aws.organizations.getOrganizationalUnits

Explore with Pulumi AI

aws logo

Try AWS Native preview for resources not in the classic version.

AWS Classic v6.32.0 published on Friday, Apr 19, 2024 by Pulumi

    Get all direct child organizational units under a parent organizational unit. This only provides immediate children, not all children.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const org = aws.organizations.getOrganization({});
    const ou = org.then(org => aws.organizations.getOrganizationalUnits({
        parentId: org.roots?.[0]?.id,
    }));
    
    import pulumi
    import pulumi_aws as aws
    
    org = aws.organizations.get_organization()
    ou = aws.organizations.get_organizational_units(parent_id=org.roots[0].id)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/organizations"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		org, err := organizations.LookupOrganization(ctx, nil, nil)
    		if err != nil {
    			return err
    		}
    		_, err = organizations.GetOrganizationalUnits(ctx, &organizations.GetOrganizationalUnitsArgs{
    			ParentId: org.Roots[0].Id,
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var org = Aws.Organizations.GetOrganization.Invoke();
    
        var ou = Aws.Organizations.GetOrganizationalUnits.Invoke(new()
        {
            ParentId = org.Apply(getOrganizationResult => getOrganizationResult.Roots[0]?.Id),
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.organizations.OrganizationsFunctions;
    import com.pulumi.aws.organizations.inputs.GetOrganizationalUnitsArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            final var org = OrganizationsFunctions.getOrganization();
    
            final var ou = OrganizationsFunctions.getOrganizationalUnits(GetOrganizationalUnitsArgs.builder()
                .parentId(org.applyValue(getOrganizationResult -> getOrganizationResult.roots()[0].id()))
                .build());
    
        }
    }
    
    variables:
      org:
        fn::invoke:
          Function: aws:organizations:getOrganization
          Arguments: {}
      ou:
        fn::invoke:
          Function: aws:organizations:getOrganizationalUnits
          Arguments:
            parentId: ${org.roots[0].id}
    

    Using getOrganizationalUnits

    Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

    function getOrganizationalUnits(args: GetOrganizationalUnitsArgs, opts?: InvokeOptions): Promise<GetOrganizationalUnitsResult>
    function getOrganizationalUnitsOutput(args: GetOrganizationalUnitsOutputArgs, opts?: InvokeOptions): Output<GetOrganizationalUnitsResult>
    def get_organizational_units(parent_id: Optional[str] = None,
                                 opts: Optional[InvokeOptions] = None) -> GetOrganizationalUnitsResult
    def get_organizational_units_output(parent_id: Optional[pulumi.Input[str]] = None,
                                 opts: Optional[InvokeOptions] = None) -> Output[GetOrganizationalUnitsResult]
    func GetOrganizationalUnits(ctx *Context, args *GetOrganizationalUnitsArgs, opts ...InvokeOption) (*GetOrganizationalUnitsResult, error)
    func GetOrganizationalUnitsOutput(ctx *Context, args *GetOrganizationalUnitsOutputArgs, opts ...InvokeOption) GetOrganizationalUnitsResultOutput

    > Note: This function is named GetOrganizationalUnits in the Go SDK.

    public static class GetOrganizationalUnits 
    {
        public static Task<GetOrganizationalUnitsResult> InvokeAsync(GetOrganizationalUnitsArgs args, InvokeOptions? opts = null)
        public static Output<GetOrganizationalUnitsResult> Invoke(GetOrganizationalUnitsInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetOrganizationalUnitsResult> getOrganizationalUnits(GetOrganizationalUnitsArgs args, InvokeOptions options)
    // Output-based functions aren't available in Java yet
    
    fn::invoke:
      function: aws:organizations/getOrganizationalUnits:getOrganizationalUnits
      arguments:
        # arguments dictionary

    The following arguments are supported:

    ParentId string
    Parent ID of the organizational unit.
    ParentId string
    Parent ID of the organizational unit.
    parentId String
    Parent ID of the organizational unit.
    parentId string
    Parent ID of the organizational unit.
    parent_id str
    Parent ID of the organizational unit.
    parentId String
    Parent ID of the organizational unit.

    getOrganizationalUnits Result

    The following output properties are available:

    Children List<GetOrganizationalUnitsChild>
    List of child organizational units, which have the following attributes:
    Id string
    The provider-assigned unique ID for this managed resource.
    ParentId string
    Children []GetOrganizationalUnitsChild
    List of child organizational units, which have the following attributes:
    Id string
    The provider-assigned unique ID for this managed resource.
    ParentId string
    children List<GetOrganizationalUnitsChild>
    List of child organizational units, which have the following attributes:
    id String
    The provider-assigned unique ID for this managed resource.
    parentId String
    children GetOrganizationalUnitsChild[]
    List of child organizational units, which have the following attributes:
    id string
    The provider-assigned unique ID for this managed resource.
    parentId string
    children Sequence[GetOrganizationalUnitsChild]
    List of child organizational units, which have the following attributes:
    id str
    The provider-assigned unique ID for this managed resource.
    parent_id str
    children List<Property Map>
    List of child organizational units, which have the following attributes:
    id String
    The provider-assigned unique ID for this managed resource.
    parentId String

    Supporting Types

    GetOrganizationalUnitsChild

    Arn string
    ARN of the organizational unit
    Id string
    Parent identifier of the organizational units.
    Name string
    Name of the organizational unit
    Arn string
    ARN of the organizational unit
    Id string
    Parent identifier of the organizational units.
    Name string
    Name of the organizational unit
    arn String
    ARN of the organizational unit
    id String
    Parent identifier of the organizational units.
    name String
    Name of the organizational unit
    arn string
    ARN of the organizational unit
    id string
    Parent identifier of the organizational units.
    name string
    Name of the organizational unit
    arn str
    ARN of the organizational unit
    id str
    Parent identifier of the organizational units.
    name str
    Name of the organizational unit
    arn String
    ARN of the organizational unit
    id String
    Parent identifier of the organizational units.
    name String
    Name of the organizational unit

    Package Details

    Repository
    AWS Classic pulumi/pulumi-aws
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the aws Terraform Provider.
    aws logo

    Try AWS Native preview for resources not in the classic version.

    AWS Classic v6.32.0 published on Friday, Apr 19, 2024 by Pulumi