AWS Service Catalog

2019/04/30 - AWS Service Catalog - 3 new 5 updated api methods

Changes  Admin users can now associate/disassociate aws budgets with a portfolio or product in Service Catalog. End users can see the association by listing it or as part of the describe portfolio/product output. A new optional boolean parameter, "DisableTemplateValidation", is added to ProvisioningArtifactProperties data type. The purpose of the parameter is to enable or disable the CloudFormation template validtion when creating a product or a provisioning artifact.

DisassociateBudgetFromResource (new) Link ¶

Disassociates the specified budget from the specified resource.

See also: AWS API Documentation

Request Syntax

client.disassociate_budget_from_resource(
    BudgetName='string',
    ResourceId='string'
)
type BudgetName

string

param BudgetName

[REQUIRED]

The name of the budget you want to disassociate.

type ResourceId

string

param ResourceId

[REQUIRED]

The resource identifier you want to disassociate from. Either a portfolio-id or a product-id.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

ListBudgetsForResource (new) Link ¶

Lists all the budgets associated to the specified resource.

See also: AWS API Documentation

Request Syntax

client.list_budgets_for_resource(
    AcceptLanguage='string',
    ResourceId='string',
    PageSize=123,
    PageToken='string'
)
type AcceptLanguage

string

param AcceptLanguage

The language code.

  • en - English (default)

  • jp - Japanese

  • zh - Chinese

type ResourceId

string

param ResourceId

[REQUIRED]

The resource identifier.

type PageSize

integer

param PageSize

The maximum number of items to return with this call.

type PageToken

string

param PageToken

The page token for the next set of results. To retrieve the first set of results, use null.

rtype

dict

returns

Response Syntax

{
    'Budgets': [
        {
            'BudgetName': 'string'
        },
    ],
    'NextPageToken': 'string'
}

Response Structure

  • (dict) --

    • Budgets (list) --

      Information about the associated budgets.

      • (dict) --

        Information about a budget.

        • BudgetName (string) --

          Name of the associated budget.

    • NextPageToken (string) --

      The page token to use to retrieve the next set of results. If there are no additional results, this value is null.

AssociateBudgetWithResource (new) Link ¶

Associates the specified budget with the specified resource.

See also: AWS API Documentation

Request Syntax

client.associate_budget_with_resource(
    BudgetName='string',
    ResourceId='string'
)
type BudgetName

string

param BudgetName

[REQUIRED]

The name of the budget you want to associate.

type ResourceId

string

param ResourceId

[REQUIRED]

The resource identifier. Either a portfolio-id or a product-id.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

CreateProduct (updated) Link ¶
Changes (request)
{'ProvisioningArtifactParameters': {'DisableTemplateValidation': 'boolean'}}

Creates a product.

See also: AWS API Documentation

Request Syntax

client.create_product(
    AcceptLanguage='string',
    Name='string',
    Owner='string',
    Description='string',
    Distributor='string',
    SupportDescription='string',
    SupportEmail='string',
    SupportUrl='string',
    ProductType='CLOUD_FORMATION_TEMPLATE'|'MARKETPLACE',
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    ProvisioningArtifactParameters={
        'Name': 'string',
        'Description': 'string',
        'Info': {
            'string': 'string'
        },
        'Type': 'CLOUD_FORMATION_TEMPLATE'|'MARKETPLACE_AMI'|'MARKETPLACE_CAR',
        'DisableTemplateValidation': True|False
    },
    IdempotencyToken='string'
)
type AcceptLanguage

string

param AcceptLanguage

The language code.

  • en - English (default)

  • jp - Japanese

  • zh - Chinese

type Name

string

param Name

[REQUIRED]

The name of the product.

type Owner

string

param Owner

[REQUIRED]

The owner of the product.

type Description

string

param Description

The description of the product.

type Distributor

string

param Distributor

The distributor of the product.

type SupportDescription

string

param SupportDescription

The support information about the product.

type SupportEmail

string

param SupportEmail

The contact email for product support.

type SupportUrl

string

param SupportUrl

The contact URL for product support.

type ProductType

string

param ProductType

[REQUIRED]

The type of product.

type Tags

list

param Tags

One or more tags.

  • (dict) --

    Information about a tag. A tag is a key-value pair. Tags are propagated to the resources created when provisioning a product.

    • Key (string) -- [REQUIRED]

      The tag key.

    • Value (string) -- [REQUIRED]

      The value for this key.

type ProvisioningArtifactParameters

dict

param ProvisioningArtifactParameters

[REQUIRED]

The configuration of the provisioning artifact.

  • Name (string) --

    The name of the provisioning artifact (for example, v1 v2beta). No spaces are allowed.

  • Description (string) --

    The description of the provisioning artifact, including how it differs from the previous provisioning artifact.

  • Info (dict) -- [REQUIRED]

    The URL of the CloudFormation template in Amazon S3. Specify the URL in JSON format as follows:

    "LoadTemplateFromURL": "https://s3.amazonaws.com/cf-templates-ozkq9d3hgiq2-us-east-1/..."

    • (string) --

      • (string) --

  • Type (string) --

    The type of provisioning artifact.

    • CLOUD_FORMATION_TEMPLATE - AWS CloudFormation template

    • MARKETPLACE_AMI - AWS Marketplace AMI

    • MARKETPLACE_CAR - AWS Marketplace Clusters and AWS Resources

  • DisableTemplateValidation (boolean) --

    If set to true, AWS Service Catalog stops validating the specified provisioning artifact even if it is invalid.

type IdempotencyToken

string

param IdempotencyToken

[REQUIRED]

A unique identifier that you provide to ensure idempotency. If multiple requests differ only by the idempotency token, the same response is returned for each repeated request.

This field is autopopulated if not provided.

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)
    },
    'ProvisioningArtifactDetail': {
        'Id': 'string',
        'Name': 'string',
        'Description': 'string',
        'Type': 'CLOUD_FORMATION_TEMPLATE'|'MARKETPLACE_AMI'|'MARKETPLACE_CAR',
        'CreatedTime': datetime(2015, 1, 1),
        'Active': True|False
    },
    'Tags': [
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • ProductViewDetail (dict) --

      Information about the product view.

      • ProductViewSummary (dict) --

        Summary information about the 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) --

          Indicates whether the product has a default path. If the product does not have a default path, call ListLaunchPaths to disambiguate between paths. Otherwise, ListLaunchPaths is not required, and the output of ProductViewSummary 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) --

        The status of the product.

        • AVAILABLE - The product is ready for use.

        • CREATING - Product creation has started; the product is not ready for use.

        • FAILED - An action failed.

      • ProductARN (string) --

        The ARN of the product.

      • CreatedTime (datetime) --

        The UTC time stamp of the creation time.

    • ProvisioningArtifactDetail (dict) --

      Information about the 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.

      • Type (string) --

        The type of provisioning artifact.

        • CLOUD_FORMATION_TEMPLATE - AWS CloudFormation template

        • MARKETPLACE_AMI - AWS Marketplace AMI

        • MARKETPLACE_CAR - AWS Marketplace Clusters and AWS Resources

      • CreatedTime (datetime) --

        The UTC time stamp of the creation time.

      • Active (boolean) --

        Indicates whether the product version is active.

    • Tags (list) --

      Information about the tags associated with the product.

      • (dict) --

        Information about a tag. A tag is a key-value pair. Tags are propagated to the resources created when provisioning a product.

        • Key (string) --

          The tag key.

        • Value (string) --

          The value for this key.

CreateProvisioningArtifact (updated) Link ¶
Changes (request)
{'Parameters': {'DisableTemplateValidation': 'boolean'}}

Creates a provisioning artifact (also known as a version) for the specified product.

You cannot create a provisioning artifact for a product that was shared with you.

See also: AWS API Documentation

Request Syntax

client.create_provisioning_artifact(
    AcceptLanguage='string',
    ProductId='string',
    Parameters={
        'Name': 'string',
        'Description': 'string',
        'Info': {
            'string': 'string'
        },
        'Type': 'CLOUD_FORMATION_TEMPLATE'|'MARKETPLACE_AMI'|'MARKETPLACE_CAR',
        'DisableTemplateValidation': True|False
    },
    IdempotencyToken='string'
)
type AcceptLanguage

string

param AcceptLanguage

The language code.

  • en - English (default)

  • jp - Japanese

  • zh - Chinese

type ProductId

string

param ProductId

[REQUIRED]

The product identifier.

type Parameters

dict

param Parameters

[REQUIRED]

The configuration for the provisioning artifact.

  • Name (string) --

    The name of the provisioning artifact (for example, v1 v2beta). No spaces are allowed.

  • Description (string) --

    The description of the provisioning artifact, including how it differs from the previous provisioning artifact.

  • Info (dict) -- [REQUIRED]

    The URL of the CloudFormation template in Amazon S3. Specify the URL in JSON format as follows:

    "LoadTemplateFromURL": "https://s3.amazonaws.com/cf-templates-ozkq9d3hgiq2-us-east-1/..."

    • (string) --

      • (string) --

  • Type (string) --

    The type of provisioning artifact.

    • CLOUD_FORMATION_TEMPLATE - AWS CloudFormation template

    • MARKETPLACE_AMI - AWS Marketplace AMI

    • MARKETPLACE_CAR - AWS Marketplace Clusters and AWS Resources

  • DisableTemplateValidation (boolean) --

    If set to true, AWS Service Catalog stops validating the specified provisioning artifact even if it is invalid.

type IdempotencyToken

string

param IdempotencyToken

[REQUIRED]

A unique identifier that you provide to ensure idempotency. If multiple requests differ only by the idempotency token, the same response is returned for each repeated request.

This field is autopopulated if not provided.

rtype

dict

returns

Response Syntax

{
    'ProvisioningArtifactDetail': {
        'Id': 'string',
        'Name': 'string',
        'Description': 'string',
        'Type': 'CLOUD_FORMATION_TEMPLATE'|'MARKETPLACE_AMI'|'MARKETPLACE_CAR',
        'CreatedTime': datetime(2015, 1, 1),
        'Active': True|False
    },
    'Info': {
        'string': 'string'
    },
    'Status': 'AVAILABLE'|'CREATING'|'FAILED'
}

Response Structure

  • (dict) --

    • ProvisioningArtifactDetail (dict) --

      Information about the 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.

      • Type (string) --

        The type of provisioning artifact.

        • CLOUD_FORMATION_TEMPLATE - AWS CloudFormation template

        • MARKETPLACE_AMI - AWS Marketplace AMI

        • MARKETPLACE_CAR - AWS Marketplace Clusters and AWS Resources

      • CreatedTime (datetime) --

        The UTC time stamp of the creation time.

      • Active (boolean) --

        Indicates whether the product version is active.

    • Info (dict) --

      The URL of the CloudFormation template in Amazon S3, in JSON format.

      • (string) --

        • (string) --

    • Status (string) --

      The status of the current request.

DescribePortfolio (updated) Link ¶
Changes (response)
{'Budgets': [{'BudgetName': 'string'}]}

Gets information about 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.

  • en - English (default)

  • jp - Japanese

  • zh - Chinese

type Id

string

param Id

[REQUIRED]

The portfolio identifier.

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'
        },
    ],
    'Budgets': [
        {
            'BudgetName': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • PortfolioDetail (dict) --

      Information about the portfolio.

      • Id (string) --

        The portfolio identifier.

      • ARN (string) --

        The ARN assigned to the portfolio.

      • DisplayName (string) --

        The name to use for display purposes.

      • Description (string) --

        The description of the portfolio.

      • CreatedTime (datetime) --

        The UTC time stamp of the creation time.

      • ProviderName (string) --

        The name of the portfolio provider.

    • Tags (list) --

      Information about the tags associated with the portfolio.

      • (dict) --

        Information about a tag. A tag is a key-value pair. Tags are propagated to the resources created when provisioning a product.

        • Key (string) --

          The tag key.

        • Value (string) --

          The value for this key.

    • TagOptions (list) --

      Information about the TagOptions associated with the portfolio.

      • (dict) --

        Information about a TagOption.

        • Key (string) --

          The TagOption key.

        • Value (string) --

          The TagOption value.

        • Active (boolean) --

          The TagOption active state.

        • Id (string) --

          The TagOption identifier.

    • Budgets (list) --

      Information about the associated budgets.

      • (dict) --

        Information about a budget.

        • BudgetName (string) --

          Name of the associated budget.

DescribeProduct (updated) Link ¶
Changes (response)
{'Budgets': [{'BudgetName': 'string'}]}

Gets information about the specified product.

See also: AWS API Documentation

Request Syntax

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

string

param AcceptLanguage

The language code.

  • en - English (default)

  • jp - Japanese

  • zh - Chinese

type Id

string

param Id

[REQUIRED]

The product identifier.

rtype

dict

returns

Response Syntax

{
    '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'
    },
    'ProvisioningArtifacts': [
        {
            'Id': 'string',
            'Name': 'string',
            'Description': 'string',
            'CreatedTime': datetime(2015, 1, 1)
        },
    ],
    'Budgets': [
        {
            'BudgetName': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • ProductViewSummary (dict) --

      Summary information about the 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) --

        Indicates whether the product has a default path. If the product does not have a default path, call ListLaunchPaths to disambiguate between paths. Otherwise, ListLaunchPaths is not required, and the output of ProductViewSummary 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.

    • ProvisioningArtifacts (list) --

      Information about the provisioning artifacts for the specified product.

      • (dict) --

        Information about a provisioning artifact. A provisioning artifact is also known as a product version.

        • 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 time stamp of the creation time.

    • Budgets (list) --

      Information about the associated budgets.

      • (dict) --

        Information about a budget.

        • BudgetName (string) --

          Name of the associated budget.

DescribeProductAsAdmin (updated) Link ¶
Changes (response)
{'Budgets': [{'BudgetName': 'string'}]}

Gets information about the specified product. This operation is 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.

  • en - English (default)

  • jp - Japanese

  • zh - Chinese

type Id

string

param Id

[REQUIRED]

The product identifier.

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'
        },
    ],
    'Budgets': [
        {
            'BudgetName': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • ProductViewDetail (dict) --

      Information about the product view.

      • ProductViewSummary (dict) --

        Summary information about the 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) --

          Indicates whether the product has a default path. If the product does not have a default path, call ListLaunchPaths to disambiguate between paths. Otherwise, ListLaunchPaths is not required, and the output of ProductViewSummary 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) --

        The status of the product.

        • AVAILABLE - The product is ready for use.

        • CREATING - Product creation has started; the product is not ready for use.

        • FAILED - An action failed.

      • ProductARN (string) --

        The ARN of the product.

      • CreatedTime (datetime) --

        The UTC time stamp of the creation time.

    • ProvisioningArtifactSummaries (list) --

      Information about the provisioning artifacts (also known as versions) for the specified product.

      • (dict) --

        Summary information about a provisioning artifact (also known as a version) for a product.

        • 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 time stamp of the creation time.

        • ProvisioningArtifactMetadata (dict) --

          The metadata for the provisioning artifact. This is used with AWS Marketplace products.

          • (string) --

            • (string) --

    • Tags (list) --

      Information about the tags associated with the product.

      • (dict) --

        Information about a tag. A tag is a key-value pair. Tags are propagated to the resources created when provisioning a product.

        • Key (string) --

          The tag key.

        • Value (string) --

          The value for this key.

    • TagOptions (list) --

      Information about the TagOptions associated with the product.

      • (dict) --

        Information about a TagOption.

        • Key (string) --

          The TagOption key.

        • Value (string) --

          The TagOption value.

        • Active (boolean) --

          The TagOption active state.

        • Id (string) --

          The TagOption identifier.

    • Budgets (list) --

      Information about the associated budgets.

      • (dict) --

        Information about a budget.

        • BudgetName (string) --

          Name of the associated budget.