AWS Service Catalog

2020/11/16 - AWS Service Catalog - 1 new 1 updated api methods

Changes  Support import of CloudFormation stacks into Service Catalog provisioned products.

ImportAsProvisionedProduct (new) Link ¶

Requests the import of a resource as a Service Catalog provisioned product that is associated to a Service Catalog product and provisioning artifact. Once imported all supported Service Catalog governance actions are supported on the provisioned product.

Resource import only supports CloudFormation stack ARNs. CloudFormation StackSets and non-root nested stacks are not supported.

The CloudFormation stack must have one of the following statuses to be imported: CREATE_COMPLETE, UPDATE_COMPLETE, UPDATE_ROLLBACK_COMPLETE, IMPORT_COMPLETE, IMPORT_ROLLBACK_COMPLETE.

Import of the resource requires that the CloudFormation stack template matches the associated Service Catalog product provisioning artifact.

See also: AWS API Documentation

Request Syntax

client.import_as_provisioned_product(
    AcceptLanguage='string',
    ProductId='string',
    ProvisioningArtifactId='string',
    ProvisionedProductName='string',
    PhysicalId='string',
    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 ProvisioningArtifactId

string

param ProvisioningArtifactId

[REQUIRED]

The identifier of the provisioning artifact.

type ProvisionedProductName

string

param ProvisionedProductName

[REQUIRED]

The user-friendly name of the provisioned product. The value must be unique for the AWS account. The name cannot be updated after the product is provisioned.

type PhysicalId

string

param PhysicalId

[REQUIRED]

The unique identifier of the resource to be imported. It only currently supports CloudFormation stack IDs.

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

{
    'RecordDetail': {
        'RecordId': 'string',
        'ProvisionedProductName': 'string',
        'Status': 'CREATED'|'IN_PROGRESS'|'IN_PROGRESS_IN_ERROR'|'SUCCEEDED'|'FAILED',
        'CreatedTime': datetime(2015, 1, 1),
        'UpdatedTime': datetime(2015, 1, 1),
        'ProvisionedProductType': 'string',
        'RecordType': 'string',
        'ProvisionedProductId': 'string',
        'ProductId': 'string',
        'ProvisioningArtifactId': 'string',
        'PathId': 'string',
        'RecordErrors': [
            {
                'Code': 'string',
                'Description': 'string'
            },
        ],
        'RecordTags': [
            {
                'Key': 'string',
                'Value': 'string'
            },
        ],
        'LaunchRoleArn': 'string'
    }
}

Response Structure

  • (dict) --

    • RecordDetail (dict) --

      Information about a request operation.

      • RecordId (string) --

        The identifier of the record.

      • ProvisionedProductName (string) --

        The user-friendly name of the provisioned product.

      • Status (string) --

        The status of the provisioned product.

        • CREATED - The request was created but the operation has not started.

        • IN_PROGRESS - The requested operation is in progress.

        • IN_PROGRESS_IN_ERROR - The provisioned product is under change but the requested operation failed and some remediation is occurring. For example, a rollback.

        • SUCCEEDED - The requested operation has successfully completed.

        • FAILED - The requested operation has unsuccessfully completed. Investigate using the error messages returned.

      • CreatedTime (datetime) --

        The UTC time stamp of the creation time.

      • UpdatedTime (datetime) --

        The time when the record was last updated.

      • ProvisionedProductType (string) --

        The type of provisioned product. The supported values are CFN_STACK and CFN_STACKSET .

      • RecordType (string) --

        The record type.

        • PROVISION_PRODUCT

        • UPDATE_PROVISIONED_PRODUCT

        • TERMINATE_PROVISIONED_PRODUCT

      • ProvisionedProductId (string) --

        The identifier of the provisioned product.

      • ProductId (string) --

        The product identifier.

      • ProvisioningArtifactId (string) --

        The identifier of the provisioning artifact.

      • PathId (string) --

        The path identifier.

      • RecordErrors (list) --

        The errors that occurred.

        • (dict) --

          The error code and description resulting from an operation.

          • Code (string) --

            The numeric value of the error.

          • Description (string) --

            The description of the error.

      • RecordTags (list) --

        One or more tags.

        • (dict) --

          Information about a tag, which is a key-value pair.

          • Key (string) --

            The key for this tag.

          • Value (string) --

            The value for this tag.

      • LaunchRoleArn (string) --

        The ARN of the launch role associated with the provisioned product.

TerminateProvisionedProduct (updated) Link ¶
Changes (request)
{'RetainPhysicalResources': 'boolean'}

Terminates the specified provisioned product.

This operation does not delete any records associated with the provisioned product.

You can check the status of this request using DescribeRecord .

See also: AWS API Documentation

Request Syntax

client.terminate_provisioned_product(
    ProvisionedProductName='string',
    ProvisionedProductId='string',
    TerminateToken='string',
    IgnoreErrors=True|False,
    AcceptLanguage='string',
    RetainPhysicalResources=True|False
)
type ProvisionedProductName

string

param ProvisionedProductName

The name of the provisioned product. You cannot specify both ProvisionedProductName and ProvisionedProductId .

type ProvisionedProductId

string

param ProvisionedProductId

The identifier of the provisioned product. You cannot specify both ProvisionedProductName and ProvisionedProductId .

type TerminateToken

string

param TerminateToken

[REQUIRED]

An idempotency token that uniquely identifies the termination request. This token is only valid during the termination process. After the provisioned product is terminated, subsequent requests to terminate the same provisioned product always return ResourceNotFound .

This field is autopopulated if not provided.

type IgnoreErrors

boolean

param IgnoreErrors

If set to true, AWS Service Catalog stops managing the specified provisioned product even if it cannot delete the underlying resources.

type AcceptLanguage

string

param AcceptLanguage

The language code.

  • en - English (default)

  • jp - Japanese

  • zh - Chinese

type RetainPhysicalResources

boolean

param RetainPhysicalResources

When this boolean parameter is set to true, the TerminateProvisionedProduct API deletes the Service Catalog provisioned product. However, it does not remove the CloudFormation stack, stack set, or the underlying resources of the deleted provisioned product. The default value is false.

rtype

dict

returns

Response Syntax

{
    'RecordDetail': {
        'RecordId': 'string',
        'ProvisionedProductName': 'string',
        'Status': 'CREATED'|'IN_PROGRESS'|'IN_PROGRESS_IN_ERROR'|'SUCCEEDED'|'FAILED',
        'CreatedTime': datetime(2015, 1, 1),
        'UpdatedTime': datetime(2015, 1, 1),
        'ProvisionedProductType': 'string',
        'RecordType': 'string',
        'ProvisionedProductId': 'string',
        'ProductId': 'string',
        'ProvisioningArtifactId': 'string',
        'PathId': 'string',
        'RecordErrors': [
            {
                'Code': 'string',
                'Description': 'string'
            },
        ],
        'RecordTags': [
            {
                'Key': 'string',
                'Value': 'string'
            },
        ],
        'LaunchRoleArn': 'string'
    }
}

Response Structure

  • (dict) --

    • RecordDetail (dict) --

      Information about the result of this request.

      • RecordId (string) --

        The identifier of the record.

      • ProvisionedProductName (string) --

        The user-friendly name of the provisioned product.

      • Status (string) --

        The status of the provisioned product.

        • CREATED - The request was created but the operation has not started.

        • IN_PROGRESS - The requested operation is in progress.

        • IN_PROGRESS_IN_ERROR - The provisioned product is under change but the requested operation failed and some remediation is occurring. For example, a rollback.

        • SUCCEEDED - The requested operation has successfully completed.

        • FAILED - The requested operation has unsuccessfully completed. Investigate using the error messages returned.

      • CreatedTime (datetime) --

        The UTC time stamp of the creation time.

      • UpdatedTime (datetime) --

        The time when the record was last updated.

      • ProvisionedProductType (string) --

        The type of provisioned product. The supported values are CFN_STACK and CFN_STACKSET .

      • RecordType (string) --

        The record type.

        • PROVISION_PRODUCT

        • UPDATE_PROVISIONED_PRODUCT

        • TERMINATE_PROVISIONED_PRODUCT

      • ProvisionedProductId (string) --

        The identifier of the provisioned product.

      • ProductId (string) --

        The product identifier.

      • ProvisioningArtifactId (string) --

        The identifier of the provisioning artifact.

      • PathId (string) --

        The path identifier.

      • RecordErrors (list) --

        The errors that occurred.

        • (dict) --

          The error code and description resulting from an operation.

          • Code (string) --

            The numeric value of the error.

          • Description (string) --

            The description of the error.

      • RecordTags (list) --

        One or more tags.

        • (dict) --

          Information about a tag, which is a key-value pair.

          • Key (string) --

            The key for this tag.

          • Value (string) --

            The value for this tag.

      • LaunchRoleArn (string) --

        The ARN of the launch role associated with the provisioned product.