AWS Well-Architected Tool

2021/03/03 - AWS Well-Architected Tool - 3 new4 updated api methods

Changes  Update wellarchitected client to latest version

ListTagsForResource (new) Link ¶

List the tags for a resource.

See also: AWS API Documentation

Request Syntax

client.list_tags_for_resource(
    WorkloadArn='string'
)
type WorkloadArn:

string

param WorkloadArn:

[REQUIRED]

The ARN for the workload.

rtype:

dict

returns:

Response Syntax

{
    'Tags': {
        'string': 'string'
    }
}

Response Structure

  • (dict) --

    • Tags (dict) --

      The tags for the resource.

      • (string) --

        • (string) --

UntagResource (new) Link ¶

Deletes specified tags from a resource.

See also: AWS API Documentation

Request Syntax

client.untag_resource(
    WorkloadArn='string',
    TagKeys=[
        'string',
    ]
)
type WorkloadArn:

string

param WorkloadArn:

[REQUIRED]

The ARN for the workload.

type TagKeys:

list

param TagKeys:

[REQUIRED]

The keys of the tags to be removed.

  • (string) --

rtype:

dict

returns:

Response Syntax

{}

Response Structure

  • (dict) --

TagResource (new) Link ¶

Adds one or more tags to the specified resource.

See also: AWS API Documentation

Request Syntax

client.tag_resource(
    WorkloadArn='string',
    Tags={
        'string': 'string'
    }
)
type WorkloadArn:

string

param WorkloadArn:

[REQUIRED]

The ARN for the workload.

type Tags:

dict

param Tags:

[REQUIRED]

The tags for the resource.

  • (string) --

    • (string) --

rtype:

dict

returns:

Response Syntax

{}

Response Structure

  • (dict) --

CreateWorkload (updated) Link ¶
Changes (request)
{'Tags': {'string': 'string'}}

Create a new workload.

The owner of a workload can share the workload with other AWS accounts and IAM users in the same AWS Region. Only the owner of a workload can delete it.

For more information, see Defining a Workload in the AWS Well-Architected Tool User Guide.

See also: AWS API Documentation

Request Syntax

client.create_workload(
    WorkloadName='string',
    Description='string',
    Environment='PRODUCTION'|'PREPRODUCTION',
    AccountIds=[
        'string',
    ],
    AwsRegions=[
        'string',
    ],
    NonAwsRegions=[
        'string',
    ],
    PillarPriorities=[
        'string',
    ],
    ArchitecturalDesign='string',
    ReviewOwner='string',
    IndustryType='string',
    Industry='string',
    Lenses=[
        'string',
    ],
    Notes='string',
    ClientRequestToken='string',
    Tags={
        'string': 'string'
    }
)
type WorkloadName:

string

param WorkloadName:

[REQUIRED]

The name of the workload.

The name must be unique within an account within a Region. Spaces and capitalization are ignored when checking for uniqueness.

type Description:

string

param Description:

[REQUIRED]

The description for the workload.

type Environment:

string

param Environment:

[REQUIRED]

The environment for the workload.

type AccountIds:

list

param AccountIds:

The list of AWS account IDs associated with the workload.

  • (string) --

    An AWS account ID.

type AwsRegions:

list

param AwsRegions:

The list of AWS Regions associated with the workload, for example, us-east-2, or ca-central-1.

  • (string) --

    An AWS Region, for example, us-west-2 or ap-northeast-1.

type NonAwsRegions:

list

param NonAwsRegions:

The list of non-AWS Regions associated with the workload.

  • (string) --

type PillarPriorities:

list

param PillarPriorities:

The priorities of the pillars, which are used to order items in the improvement plan. Each pillar is represented by its PillarReviewSummary$PillarId.

  • (string) --

    The ID used to identify a pillar, for example, security.

    A pillar is identified by its PillarReviewSummary$PillarId.

type ArchitecturalDesign:

string

param ArchitecturalDesign:

The URL of the architectural design for the workload.

type ReviewOwner:

string

param ReviewOwner:

[REQUIRED]

The review owner of the workload. The name, email address, or identifier for the primary group or individual that owns the workload review process.

type IndustryType:

string

param IndustryType:

The industry type for the workload.

If specified, must be one of the following:

  • Agriculture

  • Automobile

  • Defense

  • Design and Engineering

  • Digital Advertising

  • Education

  • Environmental Protection

  • Financial Services

  • Gaming

  • General Public Services

  • Healthcare

  • Hospitality

  • InfoTech

  • Justice and Public Safety

  • Life Sciences

  • Manufacturing

  • Media & Entertainment

  • Mining & Resources

  • Oil & Gas

  • Power & Utilities

  • Professional Services

  • Real Estate & Construction

  • Retail & Wholesale

  • Social Protection

  • Telecommunications

  • Travel, Transportation & Logistics

  • Other

type Industry:

string

param Industry:

The industry for the workload.

type Lenses:

list

param Lenses:

[REQUIRED]

The list of lenses associated with the workload. Each lens is identified by its LensSummary$LensAlias.

  • (string) --

    The alias of the lens, for example, serverless.

    Each lens is identified by its LensSummary$LensAlias.

type Notes:

string

param Notes:

The notes associated with the workload.

type ClientRequestToken:

string

param ClientRequestToken:

[REQUIRED]

A unique case-sensitive string used to ensure that this request is idempotent (executes only once).

You should not reuse the same token for other requests. If you retry a request with the same client request token and the same parameters after it has completed successfully, the result of the original request is returned.

This field is autopopulated if not provided.

type Tags:

dict

param Tags:

The tags to be associated with the workload.

  • (string) --

    • (string) --

rtype:

dict

returns:

Response Syntax

{
    'WorkloadId': 'string',
    'WorkloadArn': 'string'
}

Response Structure

  • (dict) --

    Output of a create workload call.

    • WorkloadId (string) --

      The ID assigned to the workload. This ID is unique within an AWS Region.

    • WorkloadArn (string) --

      The ARN for the workload.

GetMilestone (updated) Link ¶
Changes (response)
{'Milestone': {'Workload': {'Tags': {'string': 'string'}}}}

Get a milestone for an existing workload.

See also: AWS API Documentation

Request Syntax

client.get_milestone(
    WorkloadId='string',
    MilestoneNumber=123
)
type WorkloadId:

string

param WorkloadId:

[REQUIRED]

The ID assigned to the workload. This ID is unique within an AWS Region.

type MilestoneNumber:

integer

param MilestoneNumber:

[REQUIRED]

The milestone number.

A workload can have a maximum of 100 milestones.

rtype:

dict

returns:

Response Syntax

{
    'WorkloadId': 'string',
    'Milestone': {
        'MilestoneNumber': 123,
        'MilestoneName': 'string',
        'RecordedAt': datetime(2015, 1, 1),
        'Workload': {
            'WorkloadId': 'string',
            'WorkloadArn': 'string',
            'WorkloadName': 'string',
            'Description': 'string',
            'Environment': 'PRODUCTION'|'PREPRODUCTION',
            'UpdatedAt': datetime(2015, 1, 1),
            'AccountIds': [
                'string',
            ],
            'AwsRegions': [
                'string',
            ],
            'NonAwsRegions': [
                'string',
            ],
            'ArchitecturalDesign': 'string',
            'ReviewOwner': 'string',
            'ReviewRestrictionDate': datetime(2015, 1, 1),
            'IsReviewOwnerUpdateAcknowledged': True|False,
            'IndustryType': 'string',
            'Industry': 'string',
            'Notes': 'string',
            'ImprovementStatus': 'NOT_APPLICABLE'|'NOT_STARTED'|'IN_PROGRESS'|'COMPLETE'|'RISK_ACKNOWLEDGED',
            'RiskCounts': {
                'string': 123
            },
            'PillarPriorities': [
                'string',
            ],
            'Lenses': [
                'string',
            ],
            'Owner': 'string',
            'ShareInvitationId': 'string',
            'Tags': {
                'string': 'string'
            }
        }
    }
}

Response Structure

  • (dict) --

    Output of a get milestone call.

    • WorkloadId (string) --

      The ID assigned to the workload. This ID is unique within an AWS Region.

    • Milestone (dict) --

      A milestone return object.

      • MilestoneNumber (integer) --

        The milestone number.

        A workload can have a maximum of 100 milestones.

      • MilestoneName (string) --

        The name of the milestone in a workload.

        Milestone names must be unique within a workload.

      • RecordedAt (datetime) --

        The date and time recorded.

      • Workload (dict) --

        A workload return object.

        • WorkloadId (string) --

          The ID assigned to the workload. This ID is unique within an AWS Region.

        • WorkloadArn (string) --

          The ARN for the workload.

        • WorkloadName (string) --

          The name of the workload.

          The name must be unique within an account within a Region. Spaces and capitalization are ignored when checking for uniqueness.

        • Description (string) --

          The description for the workload.

        • Environment (string) --

          The environment for the workload.

        • UpdatedAt (datetime) --

          The date and time recorded.

        • AccountIds (list) --

          The list of AWS account IDs associated with the workload.

          • (string) --

            An AWS account ID.

        • AwsRegions (list) --

          The list of AWS Regions associated with the workload, for example, us-east-2, or ca-central-1.

          • (string) --

            An AWS Region, for example, us-west-2 or ap-northeast-1.

        • NonAwsRegions (list) --

          The list of non-AWS Regions associated with the workload.

          • (string) --

        • ArchitecturalDesign (string) --

          The URL of the architectural design for the workload.

        • ReviewOwner (string) --

          The review owner of the workload. The name, email address, or identifier for the primary group or individual that owns the workload review process.

        • ReviewRestrictionDate (datetime) --

          The date and time recorded.

        • IsReviewOwnerUpdateAcknowledged (boolean) --

          Flag indicating whether the workload owner has acknowledged that the Review owner field is required.

          If a Review owner is not added to the workload within 60 days of acknowledgement, access to the workload is restricted until an owner is added.

        • IndustryType (string) --

          The industry type for the workload.

          If specified, must be one of the following:

          • Agriculture

          • Automobile

          • Defense

          • Design and Engineering

          • Digital Advertising

          • Education

          • Environmental Protection

          • Financial Services

          • Gaming

          • General Public Services

          • Healthcare

          • Hospitality

          • InfoTech

          • Justice and Public Safety

          • Life Sciences

          • Manufacturing

          • Media & Entertainment

          • Mining & Resources

          • Oil & Gas

          • Power & Utilities

          • Professional Services

          • Real Estate & Construction

          • Retail & Wholesale

          • Social Protection

          • Telecommunications

          • Travel, Transportation & Logistics

          • Other

        • Industry (string) --

          The industry for the workload.

        • Notes (string) --

          The notes associated with the workload.

        • ImprovementStatus (string) --

          The improvement status for a workload.

        • RiskCounts (dict) --

          A map from risk names to the count of how questions have that rating.

          • (string) --

            The risk for a given workload, lens review, pillar, or question.

            • (integer) --

              A non-negative integer that denotes how many.

        • PillarPriorities (list) --

          The priorities of the pillars, which are used to order items in the improvement plan. Each pillar is represented by its PillarReviewSummary$PillarId.

          • (string) --

            The ID used to identify a pillar, for example, security.

            A pillar is identified by its PillarReviewSummary$PillarId.

        • Lenses (list) --

          The list of lenses associated with the workload. Each lens is identified by its LensSummary$LensAlias.

          • (string) --

            The alias of the lens, for example, serverless.

            Each lens is identified by its LensSummary$LensAlias.

        • Owner (string) --

          An AWS account ID.

        • ShareInvitationId (string) --

          The ID assigned to the share invitation.

        • Tags (dict) --

          The tags associated with the workload.

          • (string) --

            • (string) --

GetWorkload (updated) Link ¶
Changes (response)
{'Workload': {'Tags': {'string': 'string'}}}

Get an existing workload.

See also: AWS API Documentation

Request Syntax

client.get_workload(
    WorkloadId='string'
)
type WorkloadId:

string

param WorkloadId:

[REQUIRED]

The ID assigned to the workload. This ID is unique within an AWS Region.

rtype:

dict

returns:

Response Syntax

{
    'Workload': {
        'WorkloadId': 'string',
        'WorkloadArn': 'string',
        'WorkloadName': 'string',
        'Description': 'string',
        'Environment': 'PRODUCTION'|'PREPRODUCTION',
        'UpdatedAt': datetime(2015, 1, 1),
        'AccountIds': [
            'string',
        ],
        'AwsRegions': [
            'string',
        ],
        'NonAwsRegions': [
            'string',
        ],
        'ArchitecturalDesign': 'string',
        'ReviewOwner': 'string',
        'ReviewRestrictionDate': datetime(2015, 1, 1),
        'IsReviewOwnerUpdateAcknowledged': True|False,
        'IndustryType': 'string',
        'Industry': 'string',
        'Notes': 'string',
        'ImprovementStatus': 'NOT_APPLICABLE'|'NOT_STARTED'|'IN_PROGRESS'|'COMPLETE'|'RISK_ACKNOWLEDGED',
        'RiskCounts': {
            'string': 123
        },
        'PillarPriorities': [
            'string',
        ],
        'Lenses': [
            'string',
        ],
        'Owner': 'string',
        'ShareInvitationId': 'string',
        'Tags': {
            'string': 'string'
        }
    }
}

Response Structure

  • (dict) --

    Output of a get workload call.

    • Workload (dict) --

      A workload return object.

      • WorkloadId (string) --

        The ID assigned to the workload. This ID is unique within an AWS Region.

      • WorkloadArn (string) --

        The ARN for the workload.

      • WorkloadName (string) --

        The name of the workload.

        The name must be unique within an account within a Region. Spaces and capitalization are ignored when checking for uniqueness.

      • Description (string) --

        The description for the workload.

      • Environment (string) --

        The environment for the workload.

      • UpdatedAt (datetime) --

        The date and time recorded.

      • AccountIds (list) --

        The list of AWS account IDs associated with the workload.

        • (string) --

          An AWS account ID.

      • AwsRegions (list) --

        The list of AWS Regions associated with the workload, for example, us-east-2, or ca-central-1.

        • (string) --

          An AWS Region, for example, us-west-2 or ap-northeast-1.

      • NonAwsRegions (list) --

        The list of non-AWS Regions associated with the workload.

        • (string) --

      • ArchitecturalDesign (string) --

        The URL of the architectural design for the workload.

      • ReviewOwner (string) --

        The review owner of the workload. The name, email address, or identifier for the primary group or individual that owns the workload review process.

      • ReviewRestrictionDate (datetime) --

        The date and time recorded.

      • IsReviewOwnerUpdateAcknowledged (boolean) --

        Flag indicating whether the workload owner has acknowledged that the Review owner field is required.

        If a Review owner is not added to the workload within 60 days of acknowledgement, access to the workload is restricted until an owner is added.

      • IndustryType (string) --

        The industry type for the workload.

        If specified, must be one of the following:

        • Agriculture

        • Automobile

        • Defense

        • Design and Engineering

        • Digital Advertising

        • Education

        • Environmental Protection

        • Financial Services

        • Gaming

        • General Public Services

        • Healthcare

        • Hospitality

        • InfoTech

        • Justice and Public Safety

        • Life Sciences

        • Manufacturing

        • Media & Entertainment

        • Mining & Resources

        • Oil & Gas

        • Power & Utilities

        • Professional Services

        • Real Estate & Construction

        • Retail & Wholesale

        • Social Protection

        • Telecommunications

        • Travel, Transportation & Logistics

        • Other

      • Industry (string) --

        The industry for the workload.

      • Notes (string) --

        The notes associated with the workload.

      • ImprovementStatus (string) --

        The improvement status for a workload.

      • RiskCounts (dict) --

        A map from risk names to the count of how questions have that rating.

        • (string) --

          The risk for a given workload, lens review, pillar, or question.

          • (integer) --

            A non-negative integer that denotes how many.

      • PillarPriorities (list) --

        The priorities of the pillars, which are used to order items in the improvement plan. Each pillar is represented by its PillarReviewSummary$PillarId.

        • (string) --

          The ID used to identify a pillar, for example, security.

          A pillar is identified by its PillarReviewSummary$PillarId.

      • Lenses (list) --

        The list of lenses associated with the workload. Each lens is identified by its LensSummary$LensAlias.

        • (string) --

          The alias of the lens, for example, serverless.

          Each lens is identified by its LensSummary$LensAlias.

      • Owner (string) --

        An AWS account ID.

      • ShareInvitationId (string) --

        The ID assigned to the share invitation.

      • Tags (dict) --

        The tags associated with the workload.

        • (string) --

          • (string) --

UpdateWorkload (updated) Link ¶
Changes (response)
{'Workload': {'Tags': {'string': 'string'}}}

Update an existing workload.

See also: AWS API Documentation

Request Syntax

client.update_workload(
    WorkloadId='string',
    WorkloadName='string',
    Description='string',
    Environment='PRODUCTION'|'PREPRODUCTION',
    AccountIds=[
        'string',
    ],
    AwsRegions=[
        'string',
    ],
    NonAwsRegions=[
        'string',
    ],
    PillarPriorities=[
        'string',
    ],
    ArchitecturalDesign='string',
    ReviewOwner='string',
    IsReviewOwnerUpdateAcknowledged=True|False,
    IndustryType='string',
    Industry='string',
    Notes='string',
    ImprovementStatus='NOT_APPLICABLE'|'NOT_STARTED'|'IN_PROGRESS'|'COMPLETE'|'RISK_ACKNOWLEDGED'
)
type WorkloadId:

string

param WorkloadId:

[REQUIRED]

The ID assigned to the workload. This ID is unique within an AWS Region.

type WorkloadName:

string

param WorkloadName:

The name of the workload.

The name must be unique within an account within a Region. Spaces and capitalization are ignored when checking for uniqueness.

type Description:

string

param Description:

The description for the workload.

type Environment:

string

param Environment:

The environment for the workload.

type AccountIds:

list

param AccountIds:

The list of AWS account IDs associated with the workload.

  • (string) --

    An AWS account ID.

type AwsRegions:

list

param AwsRegions:

The list of AWS Regions associated with the workload, for example, us-east-2, or ca-central-1.

  • (string) --

    An AWS Region, for example, us-west-2 or ap-northeast-1.

type NonAwsRegions:

list

param NonAwsRegions:

The list of non-AWS Regions associated with the workload.

  • (string) --

type PillarPriorities:

list

param PillarPriorities:

The priorities of the pillars, which are used to order items in the improvement plan. Each pillar is represented by its PillarReviewSummary$PillarId.

  • (string) --

    The ID used to identify a pillar, for example, security.

    A pillar is identified by its PillarReviewSummary$PillarId.

type ArchitecturalDesign:

string

param ArchitecturalDesign:

The URL of the architectural design for the workload.

type ReviewOwner:

string

param ReviewOwner:

The review owner of the workload. The name, email address, or identifier for the primary group or individual that owns the workload review process.

type IsReviewOwnerUpdateAcknowledged:

boolean

param IsReviewOwnerUpdateAcknowledged:

Flag indicating whether the workload owner has acknowledged that the Review owner field is required.

If a Review owner is not added to the workload within 60 days of acknowledgement, access to the workload is restricted until an owner is added.

type IndustryType:

string

param IndustryType:

The industry type for the workload.

If specified, must be one of the following:

  • Agriculture

  • Automobile

  • Defense

  • Design and Engineering

  • Digital Advertising

  • Education

  • Environmental Protection

  • Financial Services

  • Gaming

  • General Public Services

  • Healthcare

  • Hospitality

  • InfoTech

  • Justice and Public Safety

  • Life Sciences

  • Manufacturing

  • Media & Entertainment

  • Mining & Resources

  • Oil & Gas

  • Power & Utilities

  • Professional Services

  • Real Estate & Construction

  • Retail & Wholesale

  • Social Protection

  • Telecommunications

  • Travel, Transportation & Logistics

  • Other

type Industry:

string

param Industry:

The industry for the workload.

type Notes:

string

param Notes:

The notes associated with the workload.

type ImprovementStatus:

string

param ImprovementStatus:

The improvement status for a workload.

rtype:

dict

returns:

Response Syntax

{
    'Workload': {
        'WorkloadId': 'string',
        'WorkloadArn': 'string',
        'WorkloadName': 'string',
        'Description': 'string',
        'Environment': 'PRODUCTION'|'PREPRODUCTION',
        'UpdatedAt': datetime(2015, 1, 1),
        'AccountIds': [
            'string',
        ],
        'AwsRegions': [
            'string',
        ],
        'NonAwsRegions': [
            'string',
        ],
        'ArchitecturalDesign': 'string',
        'ReviewOwner': 'string',
        'ReviewRestrictionDate': datetime(2015, 1, 1),
        'IsReviewOwnerUpdateAcknowledged': True|False,
        'IndustryType': 'string',
        'Industry': 'string',
        'Notes': 'string',
        'ImprovementStatus': 'NOT_APPLICABLE'|'NOT_STARTED'|'IN_PROGRESS'|'COMPLETE'|'RISK_ACKNOWLEDGED',
        'RiskCounts': {
            'string': 123
        },
        'PillarPriorities': [
            'string',
        ],
        'Lenses': [
            'string',
        ],
        'Owner': 'string',
        'ShareInvitationId': 'string',
        'Tags': {
            'string': 'string'
        }
    }
}

Response Structure

  • (dict) --

    Output of an update workload call.

    • Workload (dict) --

      A workload return object.

      • WorkloadId (string) --

        The ID assigned to the workload. This ID is unique within an AWS Region.

      • WorkloadArn (string) --

        The ARN for the workload.

      • WorkloadName (string) --

        The name of the workload.

        The name must be unique within an account within a Region. Spaces and capitalization are ignored when checking for uniqueness.

      • Description (string) --

        The description for the workload.

      • Environment (string) --

        The environment for the workload.

      • UpdatedAt (datetime) --

        The date and time recorded.

      • AccountIds (list) --

        The list of AWS account IDs associated with the workload.

        • (string) --

          An AWS account ID.

      • AwsRegions (list) --

        The list of AWS Regions associated with the workload, for example, us-east-2, or ca-central-1.

        • (string) --

          An AWS Region, for example, us-west-2 or ap-northeast-1.

      • NonAwsRegions (list) --

        The list of non-AWS Regions associated with the workload.

        • (string) --

      • ArchitecturalDesign (string) --

        The URL of the architectural design for the workload.

      • ReviewOwner (string) --

        The review owner of the workload. The name, email address, or identifier for the primary group or individual that owns the workload review process.

      • ReviewRestrictionDate (datetime) --

        The date and time recorded.

      • IsReviewOwnerUpdateAcknowledged (boolean) --

        Flag indicating whether the workload owner has acknowledged that the Review owner field is required.

        If a Review owner is not added to the workload within 60 days of acknowledgement, access to the workload is restricted until an owner is added.

      • IndustryType (string) --

        The industry type for the workload.

        If specified, must be one of the following:

        • Agriculture

        • Automobile

        • Defense

        • Design and Engineering

        • Digital Advertising

        • Education

        • Environmental Protection

        • Financial Services

        • Gaming

        • General Public Services

        • Healthcare

        • Hospitality

        • InfoTech

        • Justice and Public Safety

        • Life Sciences

        • Manufacturing

        • Media & Entertainment

        • Mining & Resources

        • Oil & Gas

        • Power & Utilities

        • Professional Services

        • Real Estate & Construction

        • Retail & Wholesale

        • Social Protection

        • Telecommunications

        • Travel, Transportation & Logistics

        • Other

      • Industry (string) --

        The industry for the workload.

      • Notes (string) --

        The notes associated with the workload.

      • ImprovementStatus (string) --

        The improvement status for a workload.

      • RiskCounts (dict) --

        A map from risk names to the count of how questions have that rating.

        • (string) --

          The risk for a given workload, lens review, pillar, or question.

          • (integer) --

            A non-negative integer that denotes how many.

      • PillarPriorities (list) --

        The priorities of the pillars, which are used to order items in the improvement plan. Each pillar is represented by its PillarReviewSummary$PillarId.

        • (string) --

          The ID used to identify a pillar, for example, security.

          A pillar is identified by its PillarReviewSummary$PillarId.

      • Lenses (list) --

        The list of lenses associated with the workload. Each lens is identified by its LensSummary$LensAlias.

        • (string) --

          The alias of the lens, for example, serverless.

          Each lens is identified by its LensSummary$LensAlias.

      • Owner (string) --

        An AWS account ID.

      • ShareInvitationId (string) --

        The ID assigned to the share invitation.

      • Tags (dict) --

        The tags associated with the workload.

        • (string) --

          • (string) --