AWS Service Catalog

2017/06/27 - AWS Service Catalog - 7 new 3 updated api methods

Changes  Proper tagging of resources is critical to post-launch operations such as billing, cost allocation, and resource management. By using Service Catalog's TagOption Library, administrators can define a library of re-usable TagOptions that conform to company standards, and associate these with Service Catalog portfolios and products. Learn how to move your current tags to the new library, create new TagOptions, and view and associate your library items with portfolios and products. Understand how to ensure that the right tags are created on products launched through Service Catalog and how to provide users with defined selectable tags.

DescribeTagOption (new) Link ¶

Describes a TagOption.

See also: AWS API Documentation

Request Syntax

client.describe_tag_option(
    Id='string'
)
type Id

string

param Id

[REQUIRED]

The identifier of the TagOption.

rtype

dict

returns

Response Syntax

{
    'TagOptionDetail': {
        'Key': 'string',
        'Value': 'string',
        'Active': True|False,
        'Id': 'string'
    }
}

Response Structure

  • (dict) --

    • TagOptionDetail (dict) --

      The resulting detailed TagOption information.

      • Key (string) --

        The TagOptionDetail key.

      • Value (string) --

        The TagOptionDetail value.

      • Active (boolean) --

        The TagOptionDetail active state.

      • Id (string) --

        The TagOptionDetail identifier.

CreateTagOption (new) Link ¶

Create a new TagOption.

See also: AWS API Documentation

Request Syntax

client.create_tag_option(
    Key='string',
    Value='string'
)
type Key

string

param Key

[REQUIRED]

The TagOption key.

type Value

string

param Value

[REQUIRED]

The TagOption value.

rtype

dict

returns

Response Syntax

{
    'TagOptionDetail': {
        'Key': 'string',
        'Value': 'string',
        'Active': True|False,
        'Id': 'string'
    }
}

Response Structure

  • (dict) --

    • TagOptionDetail (dict) --

      The resulting detailed TagOption information.

      • Key (string) --

        The TagOptionDetail key.

      • Value (string) --

        The TagOptionDetail value.

      • Active (boolean) --

        The TagOptionDetail active state.

      • Id (string) --

        The TagOptionDetail identifier.

UpdateTagOption (new) Link ¶

Updates an existing TagOption.

See also: AWS API Documentation

Request Syntax

client.update_tag_option(
    Id='string',
    Value='string',
    Active=True|False
)
type Id

string

param Id

[REQUIRED]

The identifier of the constraint to update.

type Value

string

param Value

The updated value.

type Active

boolean

param Active

The updated active state.

rtype

dict

returns

Response Syntax

{
    'TagOptionDetail': {
        'Key': 'string',
        'Value': 'string',
        'Active': True|False,
        'Id': 'string'
    }
}

Response Structure

  • (dict) --

    • TagOptionDetail (dict) --

      The resulting detailed TagOption information.

      • Key (string) --

        The TagOptionDetail key.

      • Value (string) --

        The TagOptionDetail value.

      • Active (boolean) --

        The TagOptionDetail active state.

      • Id (string) --

        The TagOptionDetail identifier.

ListResourcesForTagOption (new) Link ¶

Lists resources associated with a TagOption.

See also: AWS API Documentation

Request Syntax

client.list_resources_for_tag_option(
    TagOptionId='string',
    ResourceType='string',
    PageSize=123,
    PageToken='string'
)
type TagOptionId

string

param TagOptionId

[REQUIRED]

Identifier of the TagOption.

type ResourceType

string

param ResourceType

Resource type.

type PageSize

integer

param PageSize

The maximum number of items to return in the results. If more results exist than fit in the specified PageSize , the value of NextPageToken in the response is non-null.

type PageToken

string

param PageToken

The page token of the first page retrieved. If null, this retrieves the first page of size PageSize .

rtype

dict

returns

Response Syntax

{
    'ResourceDetails': [
        {
            'Id': 'string',
            'ARN': 'string',
            'Name': 'string',
            'Description': 'string',
            'CreatedTime': datetime(2015, 1, 1)
        },
    ],
    'PageToken': 'string'
}

Response Structure

  • (dict) --

    • ResourceDetails (list) --

      The resulting detailed resource information.

      • (dict) --

        Detailed resource information.

        • Id (string) --

          Identifier of the resource.

        • ARN (string) --

          ARN of the resource.

        • Name (string) --

          Name of the resource.

        • Description (string) --

          Description of the resource.

        • CreatedTime (datetime) --

          Creation time of the resource.

    • PageToken (string) --

      The page token of the first page retrieved. If null, this retrieves the first page of size PageSize .

AssociateTagOptionWithResource (new) Link ¶

Associate a TagOption identifier with a resource identifier.

See also: AWS API Documentation

Request Syntax

client.associate_tag_option_with_resource(
    ResourceId='string',
    TagOptionId='string'
)
type ResourceId

string

param ResourceId

[REQUIRED]

The resource identifier.

type TagOptionId

string

param TagOptionId

[REQUIRED]

The TagOption identifier.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

ListTagOptions (new) Link ¶

Lists detailed TagOptions information.

See also: AWS API Documentation

Request Syntax

client.list_tag_options(
    Filters={
        'Key': 'string',
        'Value': 'string',
        'Active': True|False
    },
    PageSize=123,
    PageToken='string'
)
type Filters

dict

param Filters

The list of filters with which to limit search results. If no search filters are specified, the output is all TagOptions.

  • Key (string) --

    The ListTagOptionsFilters key.

  • Value (string) --

    The ListTagOptionsFilters value.

  • Active (boolean) --

    The ListTagOptionsFilters active state.

type PageSize

integer

param PageSize

The maximum number of items to return in the results. If more results exist than fit in the specified PageSize , the value of NextPageToken in the response is non-null.

type PageToken

string

param PageToken

The page token of the first page retrieved. If null, this retrieves the first page of size PageSize .

rtype

dict

returns

Response Syntax

{
    'TagOptionDetails': [
        {
            'Key': 'string',
            'Value': 'string',
            'Active': True|False,
            'Id': 'string'
        },
    ],
    'PageToken': 'string'
}

Response Structure

  • (dict) --

    • TagOptionDetails (list) --

      The resulting detailed TagOption information.

      • (dict) --

        The TagOption details.

        • Key (string) --

          The TagOptionDetail key.

        • Value (string) --

          The TagOptionDetail value.

        • Active (boolean) --

          The TagOptionDetail active state.

        • Id (string) --

          The TagOptionDetail identifier.

    • PageToken (string) --

      The page token of the first page retrieved. If null, this retrieves the first page of size PageSize .

DisassociateTagOptionFromResource (new) Link ¶

Disassociates a TagOption from a resource.

See also: AWS API Documentation

Request Syntax

client.disassociate_tag_option_from_resource(
    ResourceId='string',
    TagOptionId='string'
)
type ResourceId

string

param ResourceId

[REQUIRED]

Identifier of the resource from which to disassociate the TagOption.

type TagOptionId

string

param TagOptionId

[REQUIRED]

Identifier of the TagOption to disassociate from the resource.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

DescribePortfolio (updated) Link ¶
Changes (response)
{'TagOptions': [{'Active': 'boolean',
                 'Id': 'string',
                 'Key': 'string',
                 'Value': 'string'}]}

Retrieves detailed information and any tags associated with the specified portfolio.

See also: AWS API Documentation

Request Syntax

client.describe_portfolio(
    AcceptLanguage='string',
    Id='string'
)
type AcceptLanguage

string

param AcceptLanguage

The language code to use for this operation. Supported language codes are as follows:

"en" (English)

"jp" (Japanese)

"zh" (Chinese)

If no code is specified, "en" is used as the default.

type Id

string

param Id

[REQUIRED]

The identifier of the portfolio for which to retrieve information.

rtype

dict

returns

Response Syntax

{
    'PortfolioDetail': {
        'Id': 'string',
        'ARN': 'string',
        'DisplayName': 'string',
        'Description': 'string',
        'CreatedTime': datetime(2015, 1, 1),
        'ProviderName': 'string'
    },
    'Tags': [
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    'TagOptions': [
        {
            'Key': 'string',
            'Value': 'string',
            'Active': True|False,
            'Id': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • PortfolioDetail (dict) --

      Detailed portfolio information.

      • Id (string) --

        The identifier for the portfolio.

      • ARN (string) --

        The ARN assigned to the portfolio.

      • DisplayName (string) --

        The name to use for display purposes.

      • Description (string) --

        The text description of the portfolio.

      • CreatedTime (datetime) --

        The UTC timestamp of the creation time.

      • ProviderName (string) --

        The name of the portfolio provider.

    • Tags (list) --

      Tags associated with the portfolio.

      • (dict) --

        Key-value pairs to associate with this provisioning. These tags are entirely discretionary and are propagated to the resources created in the provisioning.

        • Key (string) --

          The ProvisioningArtifactParameter.TagKey parameter from DescribeProvisioningParameters.

        • Value (string) --

          The desired value for this key.

    • TagOptions (list) --

      TagOptions associated with the portfolio.

      • (dict) --

        The TagOption details.

        • Key (string) --

          The TagOptionDetail key.

        • Value (string) --

          The TagOptionDetail value.

        • Active (boolean) --

          The TagOptionDetail active state.

        • Id (string) --

          The TagOptionDetail identifier.

DescribeProductAsAdmin (updated) Link ¶
Changes (response)
{'TagOptions': [{'Active': 'boolean',
                 'Id': 'string',
                 'Key': 'string',
                 'Value': 'string'}]}

Retrieves information about a specified product, run with administrator access.

See also: AWS API Documentation

Request Syntax

client.describe_product_as_admin(
    AcceptLanguage='string',
    Id='string'
)
type AcceptLanguage

string

param AcceptLanguage

The language code to use for this operation. Supported language codes are as follows:

"en" (English)

"jp" (Japanese)

"zh" (Chinese)

If no code is specified, "en" is used as the default.

type Id

string

param Id

[REQUIRED]

The identifier of the product for which to retrieve information.

rtype

dict

returns

Response Syntax

{
    'ProductViewDetail': {
        'ProductViewSummary': {
            'Id': 'string',
            'ProductId': 'string',
            'Name': 'string',
            'Owner': 'string',
            'ShortDescription': 'string',
            'Type': 'CLOUD_FORMATION_TEMPLATE'|'MARKETPLACE',
            'Distributor': 'string',
            'HasDefaultPath': True|False,
            'SupportEmail': 'string',
            'SupportDescription': 'string',
            'SupportUrl': 'string'
        },
        'Status': 'AVAILABLE'|'CREATING'|'FAILED',
        'ProductARN': 'string',
        'CreatedTime': datetime(2015, 1, 1)
    },
    'ProvisioningArtifactSummaries': [
        {
            'Id': 'string',
            'Name': 'string',
            'Description': 'string',
            'CreatedTime': datetime(2015, 1, 1),
            'ProvisioningArtifactMetadata': {
                'string': 'string'
            }
        },
    ],
    'Tags': [
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    'TagOptions': [
        {
            'Key': 'string',
            'Value': 'string',
            'Active': True|False,
            'Id': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • ProductViewDetail (dict) --

      Detailed product view information.

      • ProductViewSummary (dict) --

        The summary metadata about the specified product view.

        • Id (string) --

          The product view identifier.

        • ProductId (string) --

          The product identifier.

        • Name (string) --

          The name of the product.

        • Owner (string) --

          The owner of the product. Contact the product administrator for the significance of this value.

        • ShortDescription (string) --

          Short description of the product.

        • Type (string) --

          The product type. Contact the product administrator for the significance of this value. If this value is MARKETPLACE , the product was created by AWS Marketplace.

        • Distributor (string) --

          The distributor of the product. Contact the product administrator for the significance of this value.

        • HasDefaultPath (boolean) --

          A value of false indicates that the product does not have a default path, while a value of true indicates that it does. If it's false, call ListLaunchPaths to disambiguate between paths. If true, ListLaunchPaths is not required, and the output of the ProductViewSummary operation can be used directly with DescribeProvisioningParameters.

        • SupportEmail (string) --

          The email contact information to obtain support for this Product.

        • SupportDescription (string) --

          The description of the support for this Product.

        • SupportUrl (string) --

          The URL information to obtain support for this Product.

      • Status (string) --

        Current status of the product.

        AVAILABLE - Product is available for use.

        CREATING - Creation of product started, not ready for use.

        FAILED - Action on product failed.

      • ProductARN (string) --

        The ARN associated with the product.

      • CreatedTime (datetime) --

        The UTC timestamp of the creation time.

    • ProvisioningArtifactSummaries (list) --

      A list of provisioning artifact summaries for the product.

      • (dict) --

        Stores summary information about a provisioning artifact.

        • Id (string) --

          The identifier of the provisioning artifact.

        • Name (string) --

          The name of the provisioning artifact.

        • Description (string) --

          The description of the provisioning artifact.

        • CreatedTime (datetime) --

          The UTC timestamp of the creation time.

        • ProvisioningArtifactMetadata (dict) --

          The provisioning artifact metadata. This data is used with products created by AWS Marketplace.

          • (string) --

            • (string) --

    • Tags (list) --

      Tags associated with the product.

      • (dict) --

        Key-value pairs to associate with this provisioning. These tags are entirely discretionary and are propagated to the resources created in the provisioning.

        • Key (string) --

          The ProvisioningArtifactParameter.TagKey parameter from DescribeProvisioningParameters.

        • Value (string) --

          The desired value for this key.

    • TagOptions (list) --

      List of TagOptions associated with the product.

      • (dict) --

        The TagOption details.

        • Key (string) --

          The TagOptionDetail key.

        • Value (string) --

          The TagOptionDetail value.

        • Active (boolean) --

          The TagOptionDetail active state.

        • Id (string) --

          The TagOptionDetail identifier.

DescribeProvisioningParameters (updated) Link ¶
Changes (response)
{'TagOptions': [{'Key': 'string', 'Values': ['string']}]}

Provides information about parameters required to provision a specified product in a specified manner. Use this operation to obtain the list of ProvisioningArtifactParameters parameters available to call the ProvisionProduct operation for the specified product.

If the output contains a TagOption key with an empty list of values, there is a TagOption conflict for that key. The end user cannot take action to fix the conflict, and launch is not blocked. In subsequent calls to the ProvisionProduct operation, do not include conflicted TagOption keys as tags. Calls to ProvisionProduct with empty TagOption values cause the error "Parameter validation failed: Missing required parameter in Tags[N ]:Value ". Calls to ProvisionProduct with conflicted TagOption keys automatically tag the provisioned product with the conflicted keys with the value " sc-tagoption-conflict-portfolioId-productId ".

See also: AWS API Documentation

Request Syntax

client.describe_provisioning_parameters(
    AcceptLanguage='string',
    ProductId='string',
    ProvisioningArtifactId='string',
    PathId='string'
)
type AcceptLanguage

string

param AcceptLanguage

The language code to use for this operation. Supported language codes are as follows:

"en" (English)

"jp" (Japanese)

"zh" (Chinese)

If no code is specified, "en" is used as the default.

type ProductId

string

param ProductId

[REQUIRED]

The product identifier.

type ProvisioningArtifactId

string

param ProvisioningArtifactId

[REQUIRED]

The provisioning artifact identifier for this product. This is sometimes referred to as the product version.

type PathId

string

param PathId

The identifier of the path for this product's provisioning. This value is optional if the product has a default path, and is required if there is more than one path for the specified product.

rtype

dict

returns

Response Syntax

{
    'ProvisioningArtifactParameters': [
        {
            'ParameterKey': 'string',
            'DefaultValue': 'string',
            'ParameterType': 'string',
            'IsNoEcho': True|False,
            'Description': 'string',
            'ParameterConstraints': {
                'AllowedValues': [
                    'string',
                ]
            }
        },
    ],
    'ConstraintSummaries': [
        {
            'Type': 'string',
            'Description': 'string'
        },
    ],
    'UsageInstructions': [
        {
            'Type': 'string',
            'Value': 'string'
        },
    ],
    'TagOptions': [
        {
            'Key': 'string',
            'Values': [
                'string',
            ]
        },
    ]
}

Response Structure

  • (dict) --

    • ProvisioningArtifactParameters (list) --

      The list of parameters used to successfully provision the product. Each parameter includes a list of allowable values and additional metadata about each parameter.

      • (dict) --

        A parameter used to successfully provision the product. This value includes a list of allowable values and additional metadata.

        • ParameterKey (string) --

          The parameter key.

        • DefaultValue (string) --

          The default value for this parameter.

        • ParameterType (string) --

          The parameter type.

        • IsNoEcho (boolean) --

          If this value is true, the value for this parameter is obfuscated from view when the parameter is retrieved. This parameter is used to hide sensitive information.

        • Description (string) --

          The text description of the parameter.

        • ParameterConstraints (dict) --

          The list of constraints that the administrator has put on the parameter.

          • AllowedValues (list) --

            The values that the administrator has allowed for the parameter.

            • (string) --

    • ConstraintSummaries (list) --

      The list of constraint summaries that apply to provisioning this product.

      • (dict) --

        An administrator-specified constraint to apply when provisioning a product.

        • Type (string) --

          The type of the constraint.

        • Description (string) --

          The text description of the constraint.

    • UsageInstructions (list) --

      Any additional metadata specifically related to the provisioning of the product. For example, see the Version field of the CloudFormation template.

      • (dict) --

        Additional information provided by the administrator.

        • Type (string) --

          The usage instruction type for the value.

        • Value (string) --

          The usage instruction value for this type.

    • TagOptions (list) --

      List of TagOptions associated with the provisioned provisioning parameters.

      • (dict) --

        The TagOption summary key-value pair.

        • Key (string) --

          The TagOptionSummary key.

        • Values (list) --

          The TagOptionSummary value.

          • (string) --