AWS Control Tower

2023/11/27 - AWS Control Tower - 7 new api methods

Changes  Add APIs to create and manage a landing zone.

ResetLandingZone (new) Link ¶

This API call resets a landing zone. It starts an asynchronous operation that resets the landing zone to the parameters specified in its original configuration.

See also: AWS API Documentation

Request Syntax

client.reset_landing_zone(
    landingZoneIdentifier='string'
)
type landingZoneIdentifier:

string

param landingZoneIdentifier:

[REQUIRED]

The unique identifier of the landing zone.

rtype:

dict

returns:

Response Syntax

{
    'operationIdentifier': 'string'
}

Response Structure

  • (dict) --

    • operationIdentifier (string) --

      A unique identifier assigned to a ResetLandingZone operation. You can use this identifier as an input of GetLandingZoneOperation to check the operation's status.

DeleteLandingZone (new) Link ¶

This decommissions a landing zone. This starts an asynchronous operation that deletes Amazon Web Services Control Tower resources deployed in Amazon Web Services Control Tower managed accounts.

See also: AWS API Documentation

Request Syntax

client.delete_landing_zone(
    landingZoneIdentifier='string'
)
type landingZoneIdentifier:

string

param landingZoneIdentifier:

[REQUIRED]

The unique identifier of the landing zone.

rtype:

dict

returns:

Response Syntax

{
    'operationIdentifier': 'string'
}

Response Structure

  • (dict) --

    • operationIdentifier (string) --

      A unique identifier assigned to a DeleteLandingZone operation. You can use this identifier as an input of GetLandingZoneOperation to check the operation's status.

GetLandingZone (new) Link ¶

Returns details about the landing zone. Displays a message in case of error.

See also: AWS API Documentation

Request Syntax

client.get_landing_zone(
    landingZoneIdentifier='string'
)
type landingZoneIdentifier:

string

param landingZoneIdentifier:

[REQUIRED]

The unique identifier of the landing zone.

rtype:

dict

returns:

Response Syntax

{
    'landingZone': {
        'arn': 'string',
        'driftStatus': {
            'status': 'DRIFTED'|'IN_SYNC'
        },
        'latestAvailableVersion': 'string',
        'manifest': {...}|[...]|123|123.4|'string'|True|None,
        'status': 'ACTIVE'|'PROCESSING'|'FAILED',
        'version': 'string'
    }
}

Response Structure

  • (dict) --

    • landingZone (dict) --

      Information about the landing zone.

      • arn (string) --

        The ARN of the landing zone.

      • driftStatus (dict) --

        The drift status of the landing zone.

        • status (string) --

          The drift status of the landing zone.

          Valid values:

          • DRIFTED: The landing zone deployed in this configuration does not match the configuration that Amazon Web Services Control Tower expected.

          • IN_SYNC: The landing zone deployed in this configuration matches the configuration that Amazon Web Services Control Tower expected.

      • latestAvailableVersion (string) --

        The latest available version of the landing zone.

      • manifest (:ref:`document<document>`) --

        The landing zone manifest.yaml text file that specifies the landing zone configurations.

      • status (string) --

        The landing zone deployment status.

        Valid values:

        • ACTIVE: The landing zone is actively deployed.

        • PROCESSING: The landing zone is processing deployment.

        • FAILED: The landing zone failed deployment.

      • version (string) --

        The landing zone's current deployed version.

ListLandingZones (new) Link ¶

Returns the landing zone ARN for the landing zone deployed in your managed account. This API also creates an ARN for existing accounts that do not yet have a landing zone ARN.

The return limit is one landing zone ARN.

See also: AWS API Documentation

Request Syntax

client.list_landing_zones(
    maxResults=123,
    nextToken='string'
)
type maxResults:

integer

param maxResults:

The maximum number of returned landing zone ARNs.

type nextToken:

string

param nextToken:

The token to continue the list from a previous API call with the same parameters.

rtype:

dict

returns:

Response Syntax

{
    'landingZones': [
        {
            'arn': 'string'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • landingZones (list) --

      The ARN of the landing zone.

      • (dict) --

        Returns a summary of information about a landing zone.

        • arn (string) --

          The ARN of the landing zone.

    • nextToken (string) --

      Retrieves the next page of results. If the string is empty, the current response is the end of the results.

UpdateLandingZone (new) Link ¶

This API call updates the landing zone. It starts an asynchronous operation that updates the landing zone based on the new landing zone version or the updated parameters specified in the updated manifest file.

See also: AWS API Documentation

Request Syntax

client.update_landing_zone(
    landingZoneIdentifier='string',
    manifest={...}|[...]|123|123.4|'string'|True|None,
    version='string'
)
type landingZoneIdentifier:

string

param landingZoneIdentifier:

[REQUIRED]

The unique identifier of the landing zone.

type manifest:

:ref:`document<document>`

param manifest:

[REQUIRED]

The manifest.yaml file is a text file that describes your Amazon Web Services resources. For examples, review The manifest file

type version:

string

param version:

[REQUIRED]

The landing zone version.

rtype:

dict

returns:

Response Syntax

{
    'operationIdentifier': 'string'
}

Response Structure

  • (dict) --

    • operationIdentifier (string) --

      A unique identifier assigned to a UpdateLandingZone operation. You can use this identifier as an input of GetLandingZoneOperation to check the operation's status.

GetLandingZoneOperation (new) Link ¶

Returns the status of the specified landing zone operation. Details for an operation are available for X days.

See also: AWS API Documentation

Request Syntax

client.get_landing_zone_operation(
    operationIdentifier='string'
)
type operationIdentifier:

string

param operationIdentifier:

[REQUIRED]

A unique identifier assigned to a landing zone operation.

rtype:

dict

returns:

Response Syntax

{
    'operationDetails': {
        'endTime': datetime(2015, 1, 1),
        'operationType': 'DELETE'|'CREATE'|'UPDATE'|'RESET',
        'startTime': datetime(2015, 1, 1),
        'status': 'SUCCEEDED'|'FAILED'|'IN_PROGRESS',
        'statusMessage': 'string'
    }
}

Response Structure

  • (dict) --

    • operationDetails (dict) --

      The landing zone operation details.

      • endTime (datetime) --

        The landing zone operation end time.

      • operationType (string) --

        The landing zone operation type.

        Valid values:

        • DELETE: The DeleteLandingZone operation.

        • CREATE: The CreateLandingZone operation.

        • UPDATE: The UpdateLandingZone operation.

        • RESET: The ResetLandingZone operation.

      • startTime (datetime) --

        The landing zone operation start time.

      • status (string) --

        The landing zone operation status.

        Valid values:

        • SUCCEEDED: The landing zone operation succeeded.

        • IN_PROGRESS: The landing zone operation is in progress.

        • FAILED: The landing zone operation failed.

      • statusMessage (string) --

        If the operation result is FAILED, this string contains a message explaining why the operation failed.

CreateLandingZone (new) Link ¶

Creates a new landing zone. This starts an asynchronous operation that creates and configures a landing zone based on the parameters specified in the manifest JSON file.

See also: AWS API Documentation

Request Syntax

client.create_landing_zone(
    manifest={...}|[...]|123|123.4|'string'|True|None,
    tags={
        'string': 'string'
    },
    version='string'
)
type manifest:

:ref:`document<document>`

param manifest:

[REQUIRED]

The manifest.yaml file is a text file that describes your Amazon Web Services resources. For examples, review The manifest file.

type tags:

dict

param tags:

Tags to be applied to the landing zone.

  • (string) --

    • (string) --

type version:

string

param version:

[REQUIRED]

The landing zone version.

rtype:

dict

returns:

Response Syntax

{
    'arn': 'string',
    'operationIdentifier': 'string'
}

Response Structure

  • (dict) --

    • arn (string) --

      The ARN of the landing zone.

    • operationIdentifier (string) --

      A unique identifier assigned to a CreateLandingZone operation. You can use this identifier as an input of GetLandingZoneOperation to check the operation's status.