AWS Service Catalog

2017/12/05 - AWS Service Catalog - 5 updated api methods

Changes  ServiceCatalog has two distinct personas for its use, an "admin" persona (who creates sets of products with different versions and prescribes who has access to them) and an "end-user" persona (who can launch cloud resources based on the configuration data their admins have given them access to). This API update will allow admin users to deactivate/activate product versions, end-user will only be able to access and launch active product versions.

CreateProduct (updated) Link ¶
Changes (response)
{'ProvisioningArtifactDetail': {'Active': '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'
    },
    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

The tags to associate with the product.

  • (dict) --

    Information about a tag. A tag is a key-value pair. Tags are entirely discretionary and 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

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 timestamp 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 timestamp 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 entirely discretionary and 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 (response)
{'ProvisioningArtifactDetail': {'Active': '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'
    },
    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

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 timestamp 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.

DescribeProvisioningArtifact (updated) Link ¶
Changes (response)
{'ProvisioningArtifactDetail': {'Active': 'boolean'}}

Gets information about the specified provisioning artifact (also known as a version) for the specified product.

See also: AWS API Documentation

Request Syntax

client.describe_provisioning_artifact(
    AcceptLanguage='string',
    ProvisioningArtifactId='string',
    ProductId='string',
    Verbose=True|False
)
type AcceptLanguage

string

param AcceptLanguage

The language code.

  • en - English (default)

  • jp - Japanese

  • zh - Chinese

type ProvisioningArtifactId

string

param ProvisioningArtifactId

[REQUIRED]

The identifier of the provisioning artifact.

type ProductId

string

param ProductId

[REQUIRED]

The product identifier.

type Verbose

boolean

param Verbose

Indicates whether a verbose level of detail is enabled.

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

      • Active (boolean) --

        Indicates whether the product version is active.

    • Info (dict) --

      The URL of the CloudFormation template in Amazon S3.

      • (string) --

        • (string) --

    • Status (string) --

      The status of the current request.

ListProvisioningArtifacts (updated) Link ¶
Changes (response)
{'ProvisioningArtifactDetails': {'Active': 'boolean'}}

Lists all provisioning artifacts (also known as versions) for the specified product.

See also: AWS API Documentation

Request Syntax

client.list_provisioning_artifacts(
    AcceptLanguage='string',
    ProductId='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.

rtype

dict

returns

Response Syntax

{
    'ProvisioningArtifactDetails': [
        {
            'Id': 'string',
            'Name': 'string',
            'Description': 'string',
            'Type': 'CLOUD_FORMATION_TEMPLATE'|'MARKETPLACE_AMI'|'MARKETPLACE_CAR',
            'CreatedTime': datetime(2015, 1, 1),
            'Active': True|False
        },
    ],
    'NextPageToken': 'string'
}

Response Structure

  • (dict) --

    • ProvisioningArtifactDetails (list) --

      Information about the provisioning artifacts.

      • (dict) --

        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.

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

        • Active (boolean) --

          Indicates whether the product version is active.

    • NextPageToken (string) --

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

UpdateProvisioningArtifact (updated) Link ¶
Changes (request, response)
Request
{'Active': 'boolean'}
Response
{'ProvisioningArtifactDetail': {'Active': 'boolean'}}

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

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

See also: AWS API Documentation

Request Syntax

client.update_provisioning_artifact(
    AcceptLanguage='string',
    ProductId='string',
    ProvisioningArtifactId='string',
    Name='string',
    Description='string',
    Active=True|False
)
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 ProvisioningArtifactId

string

param ProvisioningArtifactId

[REQUIRED]

The identifier of the provisioning artifact.

type Name

string

param Name

The updated name of the provisioning artifact.

type Description

string

param Description

The updated description of the provisioning artifact.

type Active

boolean

param Active

Indicates whether the product version is active.

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

      • Active (boolean) --

        Indicates whether the product version is active.

    • Info (dict) --

      The URL of the CloudFormation template in Amazon S3.

      • (string) --

        • (string) --

    • Status (string) --

      The status of the current request.