AWS Service Catalog

2022/11/18 - AWS Service Catalog - 14 updated api methods

Changes  This release 1. adds support for Principal Name Sharing with Service Catalog portfolio sharing. 2. Introduces repo sourced products which are created and managed with existing SC APIs. These products are synced to external repos and auto create new product versions based on changes in the repo.

AssociatePrincipalWithPortfolio (updated) Link ¶
Changes (request)
{'PrincipalType': {'IAM_PATTERN'}}

Associates the specified principal ARN with the specified portfolio.

If you share the portfolio with principal name sharing enabled, the PrincipalARN association is included in the share.

The PortfolioID, PrincipalARN, and PrincipalType parameters are required.

You can associate a maximum of 10 Principals with a portfolio using PrincipalType as IAM_PATTERN

See also: AWS API Documentation

Request Syntax

client.associate_principal_with_portfolio(
    AcceptLanguage='string',
    PortfolioId='string',
    PrincipalARN='string',
    PrincipalType='IAM'|'IAM_PATTERN'
)
type AcceptLanguage:

string

param AcceptLanguage:

The language code.

  • en - English (default)

  • jp - Japanese

  • zh - Chinese

type PortfolioId:

string

param PortfolioId:

[REQUIRED]

The portfolio identifier.

type PrincipalARN:

string

param PrincipalARN:

[REQUIRED]

The ARN of the principal (IAM user, role, or group). This field allows an ARN with no accountID if PrincipalType is IAM_PATTERN.

You can associate multiple IAM patterns even if the account has no principal with that name. This is useful in Principal Name Sharing if you want to share a principal without creating it in the account that owns the portfolio.

type PrincipalType:

string

param PrincipalType:

[REQUIRED]

The principal type. The supported value is IAM if you use a fully defined ARN, or IAM_PATTERN if you use an ARN with no accountID.

rtype:

dict

returns:

Response Syntax

{}

Response Structure

  • (dict) --

CreatePortfolioShare (updated) Link ¶
Changes (request)
{'SharePrincipals': 'boolean'}

Shares the specified portfolio with the specified account or organization node. Shares to an organization node can only be created by the management account of an organization or by a delegated administrator. You can share portfolios to an organization, an organizational unit, or a specific account.

Note that if a delegated admin is de-registered, they can no longer create portfolio shares.

AWSOrganizationsAccess must be enabled in order to create a portfolio share to an organization node.

You can't share a shared resource, including portfolios that contain a shared product.

If the portfolio share with the specified account or organization node already exists, this action will have no effect and will not return an error. To update an existing share, you must use the UpdatePortfolioShare API instead.

See also: AWS API Documentation

Request Syntax

client.create_portfolio_share(
    AcceptLanguage='string',
    PortfolioId='string',
    AccountId='string',
    OrganizationNode={
        'Type': 'ORGANIZATION'|'ORGANIZATIONAL_UNIT'|'ACCOUNT',
        'Value': 'string'
    },
    ShareTagOptions=True|False,
    SharePrincipals=True|False
)
type AcceptLanguage:

string

param AcceptLanguage:

The language code.

  • en - English (default)

  • jp - Japanese

  • zh - Chinese

type PortfolioId:

string

param PortfolioId:

[REQUIRED]

The portfolio identifier.

type AccountId:

string

param AccountId:

The Amazon Web Services account ID. For example, 123456789012.

type OrganizationNode:

dict

param OrganizationNode:

The organization node to whom you are going to share. When you pass OrganizationNode, it creates PortfolioShare for all of the Amazon Web Services accounts that are associated to the OrganizationNode. The output returns a PortfolioShareToken, which enables the administrator to monitor the status of the PortfolioShare creation process.

  • Type (string) --

    The organization node type.

  • Value (string) --

    The identifier of the organization node.

type ShareTagOptions:

boolean

param ShareTagOptions:

Enables or disables TagOptions sharing when creating the portfolio share. If this flag is not provided, TagOptions sharing is disabled.

type SharePrincipals:

boolean

param SharePrincipals:

Enables or disables Principal sharing when creating the portfolio share. If this flag is not provided, principal sharing is disabled.

When you enable Principal Name Sharing for a portfolio share, the share recipient account end users with a principal that matches any of the associated IAM patterns can provision products from the portfolio. Once shared, the share recipient can view associations of PrincipalType: IAM_PATTERN on their portfolio. You can create the principals in the recipient account before or after creating the share.

rtype:

dict

returns:

Response Syntax

{
    'PortfolioShareToken': 'string'
}

Response Structure

  • (dict) --

    • PortfolioShareToken (string) --

      The portfolio shares a unique identifier that only returns if the portfolio is shared to an organization node.

CreateProduct (updated) Link ¶
Changes (request, response)
Request
{'SourceConnection': {'ConnectionParameters': {'CodeStar': {'ArtifactPath': 'string',
                                                            'Branch': 'string',
                                                            'ConnectionArn': 'string',
                                                            'Repository': 'string'}},
                      'Type': 'CODESTAR'}}
Response
{'ProductViewDetail': {'SourceConnection': {'ConnectionParameters': {'CodeStar': {'ArtifactPath': 'string',
                                                                                  'Branch': 'string',
                                                                                  'ConnectionArn': 'string',
                                                                                  'Repository': 'string'}},
                                            'LastSync': {'LastSuccessfulSyncProvisioningArtifactId': 'string',
                                                         'LastSuccessfulSyncTime': 'timestamp',
                                                         'LastSyncStatus': 'SUCCEEDED '
                                                                           '| '
                                                                           'FAILED',
                                                         'LastSyncStatusMessage': 'string',
                                                         'LastSyncTime': 'timestamp'},
                                            'Type': 'CODESTAR'}},
 'ProvisioningArtifactDetail': {'SourceRevision': 'string'}}

Creates a product.

A delegated admin is authorized to invoke this command.

The user or role that performs this operation must have the cloudformation:GetTemplate IAM policy permission. This policy permission is required when using the ImportFromPhysicalId template source in the information data section.

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',
    SourceConnection={
        'Type': 'CODESTAR',
        'ConnectionParameters': {
            'CodeStar': {
                'ConnectionArn': 'string',
                'Repository': 'string',
                'Branch': 'string',
                'ArtifactPath': '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.

``^https?:/// ``/ is the pattern used to validate SupportUrl.

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:

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) --

    Specify the template source with one of the following options, but not both. Keys accepted: [ LoadTemplateFromURL, ImportFromPhysicalId ]

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

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

    ImportFromPhysicalId: The physical id of the resource that contains the template. Currently only supports CloudFormation stack arn. Specify the physical id in JSON format as follows: ImportFromPhysicalId: “arn:aws:cloudformation:[us-east-1]:[accountId]:stack/[StackName]/[resourceId]

    • (string) --

      • (string) --

  • Type (string) --

    The type of provisioning artifact.

    • CLOUD_FORMATION_TEMPLATE - CloudFormation template

    • MARKETPLACE_AMI - Amazon Web Services Marketplace AMI

    • MARKETPLACE_CAR - Amazon Web Services Marketplace Clusters and Amazon Web Services Resources

  • DisableTemplateValidation (boolean) --

    If set to true, 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.

type SourceConnection:

dict

param SourceConnection:

Specifies connection details for the created product and syncs the product to the connection source artifact. This automatically manages the product's artifacts based on changes to the source. The SourceConnection parameter consists of the following sub-fields.

  • Type

  • ConnectionParamters

  • Type (string) --

    The only supported SourceConnection type is Codestar.

  • ConnectionParameters (dict) -- [REQUIRED]

    The connection details based on the connection Type.

    • CodeStar (dict) --

      Provides ConnectionType details.

      • ConnectionArn (string) -- [REQUIRED]

        The CodeStar ARN, which is the connection between Service Catalog and the external repository.

      • Repository (string) -- [REQUIRED]

        The specific repository where the product’s artifact-to-be-synced resides, formatted as "Account/Repo."

      • Branch (string) -- [REQUIRED]

        The specific branch where the artifact resides.

      • ArtifactPath (string) -- [REQUIRED]

        The absolute path wehre the artifact resides within the repo and branch, formatted as "folder/file.json."

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),
        'SourceConnection': {
            'Type': 'CODESTAR',
            'ConnectionParameters': {
                'CodeStar': {
                    'ConnectionArn': 'string',
                    'Repository': 'string',
                    'Branch': 'string',
                    'ArtifactPath': 'string'
                }
            },
            'LastSync': {
                'LastSyncTime': datetime(2015, 1, 1),
                'LastSyncStatus': 'SUCCEEDED'|'FAILED',
                'LastSyncStatusMessage': 'string',
                'LastSuccessfulSyncTime': datetime(2015, 1, 1),
                'LastSuccessfulSyncProvisioningArtifactId': 'string'
            }
        }
    },
    'ProvisioningArtifactDetail': {
        'Id': 'string',
        'Name': 'string',
        'Description': 'string',
        'Type': 'CLOUD_FORMATION_TEMPLATE'|'MARKETPLACE_AMI'|'MARKETPLACE_CAR',
        'CreatedTime': datetime(2015, 1, 1),
        'Active': True|False,
        'Guidance': 'DEFAULT'|'DEPRECATED',
        'SourceRevision': 'string'
    },
    '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 Amazon Web Services 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.

      • SourceConnection (dict) --

        A top level ProductViewDetail response containing details about the product’s connection. Service Catalog returns this field for the CreateProduct, UpdateProduct, DescribeProductAsAdmin, and SearchProductAsAdmin APIs. This response contains the same fields as the ConnectionParameters request, with the addition of the LastSync response.

        • Type (string) --

          The only supported SourceConnection type is Codestar.

        • ConnectionParameters (dict) --

          The connection details based on the connection Type.

          • CodeStar (dict) --

            Provides ConnectionType details.

            • ConnectionArn (string) --

              The CodeStar ARN, which is the connection between Service Catalog and the external repository.

            • Repository (string) --

              The specific repository where the product’s artifact-to-be-synced resides, formatted as "Account/Repo."

            • Branch (string) --

              The specific branch where the artifact resides.

            • ArtifactPath (string) --

              The absolute path wehre the artifact resides within the repo and branch, formatted as "folder/file.json."

        • LastSync (dict) --

          Provides details about the product's connection sync and contains the following sub-fields.

          • LastSyncTime

          • LastSyncStatus

          • LastSyncStatusMessage

          • LastSuccessfulSyncTime

          • LastSuccessfulSyncProvisioningArtifactID

          • LastSyncTime (datetime) --

            The time of the last attempted sync from the repository to the Service Catalog product.

          • LastSyncStatus (string) --

            The current status of the sync. Responses include SUCCEEDED or FAILED.

          • LastSyncStatusMessage (string) --

            The sync's status message.

          • LastSuccessfulSyncTime (datetime) --

            The time of the latest successful sync from the source repo artifact to the Service Catalog product.

          • LastSuccessfulSyncProvisioningArtifactId (string) --

            The ProvisioningArtifactID of the ProvisioningArtifact created from the latest successful sync.

    • 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 - CloudFormation template

        • MARKETPLACE_AMI - Amazon Web Services Marketplace AMI

        • MARKETPLACE_CAR - Amazon Web Services Marketplace Clusters and Amazon Web Services Resources

      • CreatedTime (datetime) --

        The UTC time stamp of the creation time.

      • Active (boolean) --

        Indicates whether the product version is active.

      • Guidance (string) --

        Information set by the administrator to provide guidance to end users about which provisioning artifacts to use.

      • SourceRevision (string) --

        Specifies the revision of the external artifact that was used to automatically sync the Service Catalog product and create the provisioning artifact. Service Catalog includes this response parameter as a high level field to the existing ProvisioningArtifactDetail type, which is returned as part of the response for CreateProduct, UpdateProduct, DescribeProductAsAdmin, DescribeProvisioningArtifact, ListProvisioningArtifact, and UpdateProvisioningArticat APIs.

        This field only exists for Repo-Synced products.

    • 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 (response)
{'ProvisioningArtifactDetail': {'SourceRevision': 'string'}}

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.

The user or role that performs this operation must have the cloudformation:GetTemplate IAM policy permission. This policy permission is required when using the ImportFromPhysicalId template source in the information data section.

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) --

    Specify the template source with one of the following options, but not both. Keys accepted: [ LoadTemplateFromURL, ImportFromPhysicalId ]

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

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

    ImportFromPhysicalId: The physical id of the resource that contains the template. Currently only supports CloudFormation stack arn. Specify the physical id in JSON format as follows: ImportFromPhysicalId: “arn:aws:cloudformation:[us-east-1]:[accountId]:stack/[StackName]/[resourceId]

    • (string) --

      • (string) --

  • Type (string) --

    The type of provisioning artifact.

    • CLOUD_FORMATION_TEMPLATE - CloudFormation template

    • MARKETPLACE_AMI - Amazon Web Services Marketplace AMI

    • MARKETPLACE_CAR - Amazon Web Services Marketplace Clusters and Amazon Web Services Resources

  • DisableTemplateValidation (boolean) --

    If set to true, 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,
        'Guidance': 'DEFAULT'|'DEPRECATED',
        'SourceRevision': 'string'
    },
    '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 - CloudFormation template

        • MARKETPLACE_AMI - Amazon Web Services Marketplace AMI

        • MARKETPLACE_CAR - Amazon Web Services Marketplace Clusters and Amazon Web Services Resources

      • CreatedTime (datetime) --

        The UTC time stamp of the creation time.

      • Active (boolean) --

        Indicates whether the product version is active.

      • Guidance (string) --

        Information set by the administrator to provide guidance to end users about which provisioning artifacts to use.

      • SourceRevision (string) --

        Specifies the revision of the external artifact that was used to automatically sync the Service Catalog product and create the provisioning artifact. Service Catalog includes this response parameter as a high level field to the existing ProvisioningArtifactDetail type, which is returned as part of the response for CreateProduct, UpdateProduct, DescribeProductAsAdmin, DescribeProvisioningArtifact, ListProvisioningArtifact, and UpdateProvisioningArticat APIs.

        This field only exists for Repo-Synced products.

    • Info (dict) --

      Specify the template source with one of the following options, but not both. Keys accepted: [ LoadTemplateFromURL, ImportFromPhysicalId ].

      Use the URL of the CloudFormation template in Amazon S3 or GitHub in JSON format.

      LoadTemplateFromURL

      Use the URL of the CloudFormation template in Amazon S3 or GitHub in JSON format.

      ImportFromPhysicalId

      Use the physical id of the resource that contains the template; currently supports CloudFormation stack ARN.

      • (string) --

        • (string) --

    • Status (string) --

      The status of the current request.

DescribePortfolioShares (updated) Link ¶
Changes (response)
{'PortfolioShareDetails': {'SharePrincipals': 'boolean'}}

Returns a summary of each of the portfolio shares that were created for the specified portfolio.

You can use this API to determine which accounts or organizational nodes this portfolio have been shared, whether the recipient entity has imported the share, and whether TagOptions are included with the share.

The PortfolioId and Type parameters are both required.

See also: AWS API Documentation

Request Syntax

client.describe_portfolio_shares(
    PortfolioId='string',
    Type='ACCOUNT'|'ORGANIZATION'|'ORGANIZATIONAL_UNIT'|'ORGANIZATION_MEMBER_ACCOUNT',
    PageToken='string',
    PageSize=123
)
type PortfolioId:

string

param PortfolioId:

[REQUIRED]

The unique identifier of the portfolio for which shares will be retrieved.

type Type:

string

param Type:

[REQUIRED]

The type of portfolio share to summarize. This field acts as a filter on the type of portfolio share, which can be one of the following:

  1. ACCOUNT - Represents an external account to account share.

  2. ORGANIZATION - Represents a share to an organization. This share is available to every account in the organization.

  3. ORGANIZATIONAL_UNIT - Represents a share to an organizational unit.

  4. ORGANIZATION_MEMBER_ACCOUNT - Represents a share to an account in the organization.

type PageToken:

string

param PageToken:

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

type PageSize:

integer

param PageSize:

The maximum number of items to return with this call.

rtype:

dict

returns:

Response Syntax

{
    'NextPageToken': 'string',
    'PortfolioShareDetails': [
        {
            'PrincipalId': 'string',
            'Type': 'ACCOUNT'|'ORGANIZATION'|'ORGANIZATIONAL_UNIT'|'ORGANIZATION_MEMBER_ACCOUNT',
            'Accepted': True|False,
            'ShareTagOptions': True|False,
            'SharePrincipals': True|False
        },
    ]
}

Response Structure

  • (dict) --

    • NextPageToken (string) --

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

    • PortfolioShareDetails (list) --

      Summaries about each of the portfolio shares.

      • (dict) --

        Information about the portfolio share.

        • PrincipalId (string) --

          The identifier of the recipient entity that received the portfolio share. The recipient entity can be one of the following:

          1. An external account.

          2. An organziation member account.

          3. An organzational unit (OU).

          4. The organization itself. (This shares with every account in the organization).

        • Type (string) --

          The type of the portfolio share.

        • Accepted (boolean) --

          Indicates whether the shared portfolio is imported by the recipient account. If the recipient is in an organization node, the share is automatically imported, and the field is always set to true.

        • ShareTagOptions (boolean) --

          Indicates whether TagOptions sharing is enabled or disabled for the portfolio share.

        • SharePrincipals (boolean) --

          Indicates if Principal sharing is enabled or disabled for the portfolio share.

DescribeProductAsAdmin (updated) Link ¶
Changes (response)
{'ProductViewDetail': {'SourceConnection': {'ConnectionParameters': {'CodeStar': {'ArtifactPath': 'string',
                                                                                  'Branch': 'string',
                                                                                  'ConnectionArn': 'string',
                                                                                  'Repository': 'string'}},
                                            'LastSync': {'LastSuccessfulSyncProvisioningArtifactId': 'string',
                                                         'LastSuccessfulSyncTime': 'timestamp',
                                                         'LastSyncStatus': 'SUCCEEDED '
                                                                           '| '
                                                                           'FAILED',
                                                         'LastSyncStatusMessage': 'string',
                                                         'LastSyncTime': 'timestamp'},
                                            'Type': 'CODESTAR'}}}

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',
    Name='string',
    SourcePortfolioId='string'
)
type AcceptLanguage:

string

param AcceptLanguage:

The language code.

  • en - English (default)

  • jp - Japanese

  • zh - Chinese

type Id:

string

param Id:

The product identifier.

type Name:

string

param Name:

The product name.

type SourcePortfolioId:

string

param SourcePortfolioId:

The unique identifier of the shared portfolio that the specified product is associated with.

You can provide this parameter to retrieve the shared TagOptions associated with the product. If this parameter is provided and if TagOptions sharing is enabled in the portfolio share, the API returns both local and shared TagOptions associated with the product. Otherwise only local TagOptions will be returned.

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),
        'SourceConnection': {
            'Type': 'CODESTAR',
            'ConnectionParameters': {
                'CodeStar': {
                    'ConnectionArn': 'string',
                    'Repository': 'string',
                    'Branch': 'string',
                    'ArtifactPath': 'string'
                }
            },
            'LastSync': {
                'LastSyncTime': datetime(2015, 1, 1),
                'LastSyncStatus': 'SUCCEEDED'|'FAILED',
                'LastSyncStatusMessage': 'string',
                'LastSuccessfulSyncTime': datetime(2015, 1, 1),
                'LastSuccessfulSyncProvisioningArtifactId': 'string'
            }
        }
    },
    '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',
            'Owner': '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 Amazon Web Services 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.

      • SourceConnection (dict) --

        A top level ProductViewDetail response containing details about the product’s connection. Service Catalog returns this field for the CreateProduct, UpdateProduct, DescribeProductAsAdmin, and SearchProductAsAdmin APIs. This response contains the same fields as the ConnectionParameters request, with the addition of the LastSync response.

        • Type (string) --

          The only supported SourceConnection type is Codestar.

        • ConnectionParameters (dict) --

          The connection details based on the connection Type.

          • CodeStar (dict) --

            Provides ConnectionType details.

            • ConnectionArn (string) --

              The CodeStar ARN, which is the connection between Service Catalog and the external repository.

            • Repository (string) --

              The specific repository where the product’s artifact-to-be-synced resides, formatted as "Account/Repo."

            • Branch (string) --

              The specific branch where the artifact resides.

            • ArtifactPath (string) --

              The absolute path wehre the artifact resides within the repo and branch, formatted as "folder/file.json."

        • LastSync (dict) --

          Provides details about the product's connection sync and contains the following sub-fields.

          • LastSyncTime

          • LastSyncStatus

          • LastSyncStatusMessage

          • LastSuccessfulSyncTime

          • LastSuccessfulSyncProvisioningArtifactID

          • LastSyncTime (datetime) --

            The time of the last attempted sync from the repository to the Service Catalog product.

          • LastSyncStatus (string) --

            The current status of the sync. Responses include SUCCEEDED or FAILED.

          • LastSyncStatusMessage (string) --

            The sync's status message.

          • LastSuccessfulSyncTime (datetime) --

            The time of the latest successful sync from the source repo artifact to the Service Catalog product.

          • LastSuccessfulSyncProvisioningArtifactId (string) --

            The ProvisioningArtifactID of the ProvisioningArtifact created from the latest successful sync.

    • 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 Amazon Web Services 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.

        • Owner (string) --

          The Amazon Web Services account Id of the owner account that created the TagOption.

    • Budgets (list) --

      Information about the associated budgets.

      • (dict) --

        Information about a budget.

        • BudgetName (string) --

          Name of the associated budget.

DescribeProvisioningArtifact (updated) Link ¶
Changes (response)
{'ProvisioningArtifactDetail': {'SourceRevision': 'string'}}

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',
    ProvisioningArtifactName='string',
    ProductName='string',
    Verbose=True|False
)
type AcceptLanguage:

string

param AcceptLanguage:

The language code.

  • en - English (default)

  • jp - Japanese

  • zh - Chinese

type ProvisioningArtifactId:

string

param ProvisioningArtifactId:

The identifier of the provisioning artifact.

type ProductId:

string

param ProductId:

The product identifier.

type ProvisioningArtifactName:

string

param ProvisioningArtifactName:

The provisioning artifact name.

type ProductName:

string

param ProductName:

The product name.

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,
        'Guidance': 'DEFAULT'|'DEPRECATED',
        'SourceRevision': 'string'
    },
    '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 - CloudFormation template

        • MARKETPLACE_AMI - Amazon Web Services Marketplace AMI

        • MARKETPLACE_CAR - Amazon Web Services Marketplace Clusters and Amazon Web Services Resources

      • CreatedTime (datetime) --

        The UTC time stamp of the creation time.

      • Active (boolean) --

        Indicates whether the product version is active.

      • Guidance (string) --

        Information set by the administrator to provide guidance to end users about which provisioning artifacts to use.

      • SourceRevision (string) --

        Specifies the revision of the external artifact that was used to automatically sync the Service Catalog product and create the provisioning artifact. Service Catalog includes this response parameter as a high level field to the existing ProvisioningArtifactDetail type, which is returned as part of the response for CreateProduct, UpdateProduct, DescribeProductAsAdmin, DescribeProvisioningArtifact, ListProvisioningArtifact, and UpdateProvisioningArticat APIs.

        This field only exists for Repo-Synced products.

    • Info (dict) --

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

      • (string) --

        • (string) --

    • Status (string) --

      The status of the current request.

DisassociatePrincipalFromPortfolio (updated) Link ¶
Changes (request)
{'PrincipalType': 'IAM | IAM_PATTERN'}

Disassociates a previously associated principal ARN from a specified portfolio.

The PrincipalType and PrincipalARN must match the AssociatePrincipalWithPortfolio call request details. For example, to disassociate an association created with a PrincipalARN of PrincipalType IAM you must use the PrincipalType IAM when calling DisassociatePrincipalFromPortfolio.

For portfolios that have been shared with principal name sharing enabled: after disassociating a principal, share recipient accounts will no longer be able to provision products in this portfolio using a role matching the name of the associated principal.

See also: AWS API Documentation

Request Syntax

client.disassociate_principal_from_portfolio(
    AcceptLanguage='string',
    PortfolioId='string',
    PrincipalARN='string',
    PrincipalType='IAM'|'IAM_PATTERN'
)
type AcceptLanguage:

string

param AcceptLanguage:

The language code.

  • en - English (default)

  • jp - Japanese

  • zh - Chinese

type PortfolioId:

string

param PortfolioId:

[REQUIRED]

The portfolio identifier.

type PrincipalARN:

string

param PrincipalARN:

[REQUIRED]

The ARN of the principal (IAM user, role, or group). This field allows an ARN with no accountID if PrincipalType is IAM_PATTERN.

type PrincipalType:

string

param PrincipalType:

The supported value is IAM if you use a fully defined ARN, or IAM_PATTERN if you use no accountID.

rtype:

dict

returns:

Response Syntax

{}

Response Structure

  • (dict) --

ListPrincipalsForPortfolio (updated) Link ¶
Changes (response)
{'Principals': {'PrincipalType': {'IAM_PATTERN'}}}

Lists all ``PrincipalARN``s and corresponding ``PrincipalType``s associated with the specified portfolio.

See also: AWS API Documentation

Request Syntax

client.list_principals_for_portfolio(
    AcceptLanguage='string',
    PortfolioId='string',
    PageSize=123,
    PageToken='string'
)
type AcceptLanguage:

string

param AcceptLanguage:

The language code.

  • en - English (default)

  • jp - Japanese

  • zh - Chinese

type PortfolioId:

string

param PortfolioId:

[REQUIRED]

The portfolio 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

{
    'Principals': [
        {
            'PrincipalARN': 'string',
            'PrincipalType': 'IAM'|'IAM_PATTERN'
        },
    ],
    'NextPageToken': 'string'
}

Response Structure

  • (dict) --

    • Principals (list) --

      The ``PrincipalARN``s and corresponding ``PrincipalType``s associated with the portfolio.

      • (dict) --

        Information about a principal.

        • PrincipalARN (string) --

          The ARN of the principal (IAM user, role, or group). This field allows for an ARN with no accountID if the PrincipalType is an IAM_PATTERN.

        • PrincipalType (string) --

          The principal type. The supported value is IAM if you use a fully defined ARN, or IAM_PATTERN if you use an ARN with no accountID.

    • NextPageToken (string) --

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

ListProvisioningArtifacts (updated) Link ¶
Changes (response)
{'ProvisioningArtifactDetails': {'SourceRevision': 'string'}}

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,
            'Guidance': 'DEFAULT'|'DEPRECATED',
            'SourceRevision': 'string'
        },
    ],
    '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 - CloudFormation template

          • MARKETPLACE_AMI - Amazon Web Services Marketplace AMI

          • MARKETPLACE_CAR - Amazon Web Services Marketplace Clusters and Amazon Web Services Resources

        • CreatedTime (datetime) --

          The UTC time stamp of the creation time.

        • Active (boolean) --

          Indicates whether the product version is active.

        • Guidance (string) --

          Information set by the administrator to provide guidance to end users about which provisioning artifacts to use.

        • SourceRevision (string) --

          Specifies the revision of the external artifact that was used to automatically sync the Service Catalog product and create the provisioning artifact. Service Catalog includes this response parameter as a high level field to the existing ProvisioningArtifactDetail type, which is returned as part of the response for CreateProduct, UpdateProduct, DescribeProductAsAdmin, DescribeProvisioningArtifact, ListProvisioningArtifact, and UpdateProvisioningArticat APIs.

          This field only exists for Repo-Synced products.

    • NextPageToken (string) --

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

SearchProductsAsAdmin (updated) Link ¶
Changes (response)
{'ProductViewDetails': {'SourceConnection': {'ConnectionParameters': {'CodeStar': {'ArtifactPath': 'string',
                                                                                   'Branch': 'string',
                                                                                   'ConnectionArn': 'string',
                                                                                   'Repository': 'string'}},
                                             'LastSync': {'LastSuccessfulSyncProvisioningArtifactId': 'string',
                                                          'LastSuccessfulSyncTime': 'timestamp',
                                                          'LastSyncStatus': 'SUCCEEDED '
                                                                            '| '
                                                                            'FAILED',
                                                          'LastSyncStatusMessage': 'string',
                                                          'LastSyncTime': 'timestamp'},
                                             'Type': 'CODESTAR'}}}

Gets information about the products for the specified portfolio or all products.

See also: AWS API Documentation

Request Syntax

client.search_products_as_admin(
    AcceptLanguage='string',
    PortfolioId='string',
    Filters={
        'string': [
            'string',
        ]
    },
    SortBy='Title'|'VersionCount'|'CreationDate',
    SortOrder='ASCENDING'|'DESCENDING',
    PageToken='string',
    PageSize=123,
    ProductSource='ACCOUNT'
)
type AcceptLanguage:

string

param AcceptLanguage:

The language code.

  • en - English (default)

  • jp - Japanese

  • zh - Chinese

type PortfolioId:

string

param PortfolioId:

The portfolio identifier.

type Filters:

dict

param Filters:

The search filters. If no search filters are specified, the output includes all products to which the administrator has access.

  • (string) --

    • (list) --

      • (string) --

type SortBy:

string

param SortBy:

The sort field. If no value is specified, the results are not sorted.

type SortOrder:

string

param SortOrder:

The sort order. If no value is specified, the results are not sorted.

type PageToken:

string

param PageToken:

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

type PageSize:

integer

param PageSize:

The maximum number of items to return with this call.

type ProductSource:

string

param ProductSource:

Access level of the source of the product.

rtype:

dict

returns:

Response Syntax

{
    'ProductViewDetails': [
        {
            '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),
            'SourceConnection': {
                'Type': 'CODESTAR',
                'ConnectionParameters': {
                    'CodeStar': {
                        'ConnectionArn': 'string',
                        'Repository': 'string',
                        'Branch': 'string',
                        'ArtifactPath': 'string'
                    }
                },
                'LastSync': {
                    'LastSyncTime': datetime(2015, 1, 1),
                    'LastSyncStatus': 'SUCCEEDED'|'FAILED',
                    'LastSyncStatusMessage': 'string',
                    'LastSuccessfulSyncTime': datetime(2015, 1, 1),
                    'LastSuccessfulSyncProvisioningArtifactId': 'string'
                }
            }
        },
    ],
    'NextPageToken': 'string'
}

Response Structure

  • (dict) --

    • ProductViewDetails (list) --

      Information about the product views.

      • (dict) --

        Information about a 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 Amazon Web Services 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.

        • SourceConnection (dict) --

          A top level ProductViewDetail response containing details about the product’s connection. Service Catalog returns this field for the CreateProduct, UpdateProduct, DescribeProductAsAdmin, and SearchProductAsAdmin APIs. This response contains the same fields as the ConnectionParameters request, with the addition of the LastSync response.

          • Type (string) --

            The only supported SourceConnection type is Codestar.

          • ConnectionParameters (dict) --

            The connection details based on the connection Type.

            • CodeStar (dict) --

              Provides ConnectionType details.

              • ConnectionArn (string) --

                The CodeStar ARN, which is the connection between Service Catalog and the external repository.

              • Repository (string) --

                The specific repository where the product’s artifact-to-be-synced resides, formatted as "Account/Repo."

              • Branch (string) --

                The specific branch where the artifact resides.

              • ArtifactPath (string) --

                The absolute path wehre the artifact resides within the repo and branch, formatted as "folder/file.json."

          • LastSync (dict) --

            Provides details about the product's connection sync and contains the following sub-fields.

            • LastSyncTime

            • LastSyncStatus

            • LastSyncStatusMessage

            • LastSuccessfulSyncTime

            • LastSuccessfulSyncProvisioningArtifactID

            • LastSyncTime (datetime) --

              The time of the last attempted sync from the repository to the Service Catalog product.

            • LastSyncStatus (string) --

              The current status of the sync. Responses include SUCCEEDED or FAILED.

            • LastSyncStatusMessage (string) --

              The sync's status message.

            • LastSuccessfulSyncTime (datetime) --

              The time of the latest successful sync from the source repo artifact to the Service Catalog product.

            • LastSuccessfulSyncProvisioningArtifactId (string) --

              The ProvisioningArtifactID of the ProvisioningArtifact created from the latest successful sync.

    • NextPageToken (string) --

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

UpdatePortfolioShare (updated) Link ¶
Changes (request)
{'SharePrincipals': 'boolean'}

Updates the specified portfolio share. You can use this API to enable or disable TagOptions sharing or Principal sharing for an existing portfolio share.

The portfolio share cannot be updated if the CreatePortfolioShare operation is IN_PROGRESS, as the share is not available to recipient entities. In this case, you must wait for the portfolio share to be COMPLETED.

You must provide the accountId or organization node in the input, but not both.

If the portfolio is shared to both an external account and an organization node, and both shares need to be updated, you must invoke UpdatePortfolioShare separately for each share type.

This API cannot be used for removing the portfolio share. You must use DeletePortfolioShare API for that action.

See also: AWS API Documentation

Request Syntax

client.update_portfolio_share(
    AcceptLanguage='string',
    PortfolioId='string',
    AccountId='string',
    OrganizationNode={
        'Type': 'ORGANIZATION'|'ORGANIZATIONAL_UNIT'|'ACCOUNT',
        'Value': 'string'
    },
    ShareTagOptions=True|False,
    SharePrincipals=True|False
)
type AcceptLanguage:

string

param AcceptLanguage:

The language code.

  • en - English (default)

  • jp - Japanese

  • zh - Chinese

type PortfolioId:

string

param PortfolioId:

[REQUIRED]

The unique identifier of the portfolio for which the share will be updated.

type AccountId:

string

param AccountId:

The Amazon Web Services account Id of the recipient account. This field is required when updating an external account to account type share.

type OrganizationNode:

dict

param OrganizationNode:

Information about the organization node.

  • Type (string) --

    The organization node type.

  • Value (string) --

    The identifier of the organization node.

type ShareTagOptions:

boolean

param ShareTagOptions:

Enables or disables TagOptions sharing for the portfolio share. If this field is not provided, the current state of TagOptions sharing on the portfolio share will not be modified.

type SharePrincipals:

boolean

param SharePrincipals:

A flag to enables or disables Principals sharing in the portfolio. If this field is not provided, the current state of the Principals sharing on the portfolio share will not be modified.

rtype:

dict

returns:

Response Syntax

{
    'PortfolioShareToken': 'string',
    'Status': 'NOT_STARTED'|'IN_PROGRESS'|'COMPLETED'|'COMPLETED_WITH_ERRORS'|'ERROR'
}

Response Structure

  • (dict) --

    • PortfolioShareToken (string) --

      The token that tracks the status of the UpdatePortfolioShare operation for external account to account or organizational type sharing.

    • Status (string) --

      The status of UpdatePortfolioShare operation. You can also obtain the operation status using DescribePortfolioShareStatus API.

UpdateProduct (updated) Link ¶
Changes (request, response)
Request
{'SourceConnection': {'ConnectionParameters': {'CodeStar': {'ArtifactPath': 'string',
                                                            'Branch': 'string',
                                                            'ConnectionArn': 'string',
                                                            'Repository': 'string'}},
                      'Type': 'CODESTAR'}}
Response
{'ProductViewDetail': {'SourceConnection': {'ConnectionParameters': {'CodeStar': {'ArtifactPath': 'string',
                                                                                  'Branch': 'string',
                                                                                  'ConnectionArn': 'string',
                                                                                  'Repository': 'string'}},
                                            'LastSync': {'LastSuccessfulSyncProvisioningArtifactId': 'string',
                                                         'LastSuccessfulSyncTime': 'timestamp',
                                                         'LastSyncStatus': 'SUCCEEDED '
                                                                           '| '
                                                                           'FAILED',
                                                         'LastSyncStatusMessage': 'string',
                                                         'LastSyncTime': 'timestamp'},
                                            'Type': 'CODESTAR'}}}

Updates the specified product.

See also: AWS API Documentation

Request Syntax

client.update_product(
    AcceptLanguage='string',
    Id='string',
    Name='string',
    Owner='string',
    Description='string',
    Distributor='string',
    SupportDescription='string',
    SupportEmail='string',
    SupportUrl='string',
    AddTags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    RemoveTags=[
        'string',
    ],
    SourceConnection={
        'Type': 'CODESTAR',
        'ConnectionParameters': {
            'CodeStar': {
                'ConnectionArn': 'string',
                'Repository': 'string',
                'Branch': 'string',
                'ArtifactPath': '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.

type Name:

string

param Name:

The updated product name.

type Owner:

string

param Owner:

The updated owner of the product.

type Description:

string

param Description:

The updated description of the product.

type Distributor:

string

param Distributor:

The updated distributor of the product.

type SupportDescription:

string

param SupportDescription:

The updated support description for the product.

type SupportEmail:

string

param SupportEmail:

The updated support email for the product.

type SupportUrl:

string

param SupportUrl:

The updated support URL for the product.

type AddTags:

list

param AddTags:

The tags to add to 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) -- [REQUIRED]

      The tag key.

    • Value (string) -- [REQUIRED]

      The value for this key.

type RemoveTags:

list

param RemoveTags:

The tags to remove from the product.

  • (string) --

type SourceConnection:

dict

param SourceConnection:

Specifies connection details for the updated product and syncs the product to the connection source artifact. This automatically manages the product's artifacts based on changes to the source. The SourceConnection parameter consists of the following sub-fields.

  • Type

  • ConnectionParamters

  • Type (string) --

    The only supported SourceConnection type is Codestar.

  • ConnectionParameters (dict) -- [REQUIRED]

    The connection details based on the connection Type.

    • CodeStar (dict) --

      Provides ConnectionType details.

      • ConnectionArn (string) -- [REQUIRED]

        The CodeStar ARN, which is the connection between Service Catalog and the external repository.

      • Repository (string) -- [REQUIRED]

        The specific repository where the product’s artifact-to-be-synced resides, formatted as "Account/Repo."

      • Branch (string) -- [REQUIRED]

        The specific branch where the artifact resides.

      • ArtifactPath (string) -- [REQUIRED]

        The absolute path wehre the artifact resides within the repo and branch, formatted as "folder/file.json."

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),
        'SourceConnection': {
            'Type': 'CODESTAR',
            'ConnectionParameters': {
                'CodeStar': {
                    'ConnectionArn': 'string',
                    'Repository': 'string',
                    'Branch': 'string',
                    'ArtifactPath': 'string'
                }
            },
            'LastSync': {
                'LastSyncTime': datetime(2015, 1, 1),
                'LastSyncStatus': 'SUCCEEDED'|'FAILED',
                'LastSyncStatusMessage': 'string',
                'LastSuccessfulSyncTime': datetime(2015, 1, 1),
                'LastSuccessfulSyncProvisioningArtifactId': 'string'
            }
        }
    },
    '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 Amazon Web Services 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.

      • SourceConnection (dict) --

        A top level ProductViewDetail response containing details about the product’s connection. Service Catalog returns this field for the CreateProduct, UpdateProduct, DescribeProductAsAdmin, and SearchProductAsAdmin APIs. This response contains the same fields as the ConnectionParameters request, with the addition of the LastSync response.

        • Type (string) --

          The only supported SourceConnection type is Codestar.

        • ConnectionParameters (dict) --

          The connection details based on the connection Type.

          • CodeStar (dict) --

            Provides ConnectionType details.

            • ConnectionArn (string) --

              The CodeStar ARN, which is the connection between Service Catalog and the external repository.

            • Repository (string) --

              The specific repository where the product’s artifact-to-be-synced resides, formatted as "Account/Repo."

            • Branch (string) --

              The specific branch where the artifact resides.

            • ArtifactPath (string) --

              The absolute path wehre the artifact resides within the repo and branch, formatted as "folder/file.json."

        • LastSync (dict) --

          Provides details about the product's connection sync and contains the following sub-fields.

          • LastSyncTime

          • LastSyncStatus

          • LastSyncStatusMessage

          • LastSuccessfulSyncTime

          • LastSuccessfulSyncProvisioningArtifactID

          • LastSyncTime (datetime) --

            The time of the last attempted sync from the repository to the Service Catalog product.

          • LastSyncStatus (string) --

            The current status of the sync. Responses include SUCCEEDED or FAILED.

          • LastSyncStatusMessage (string) --

            The sync's status message.

          • LastSuccessfulSyncTime (datetime) --

            The time of the latest successful sync from the source repo artifact to the Service Catalog product.

          • LastSuccessfulSyncProvisioningArtifactId (string) --

            The ProvisioningArtifactID of the ProvisioningArtifact created from the latest successful sync.

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

UpdateProvisioningArtifact (updated) Link ¶
Changes (response)
{'ProvisioningArtifactDetail': {'SourceRevision': 'string'}}

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,
    Guidance='DEFAULT'|'DEPRECATED'
)
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.

Inactive provisioning artifacts are invisible to end users. End users cannot launch or update a provisioned product from an inactive provisioning artifact.

type Guidance:

string

param Guidance:

Information set by the administrator to provide guidance to end users about which provisioning artifacts to use.

The DEFAULT value indicates that the product version is active.

The administrator can set the guidance to DEPRECATED to inform users that the product version is deprecated. Users are able to make updates to a provisioned product of a deprecated version but cannot launch new provisioned products using a deprecated version.

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,
        'Guidance': 'DEFAULT'|'DEPRECATED',
        'SourceRevision': 'string'
    },
    '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 - CloudFormation template

        • MARKETPLACE_AMI - Amazon Web Services Marketplace AMI

        • MARKETPLACE_CAR - Amazon Web Services Marketplace Clusters and Amazon Web Services Resources

      • CreatedTime (datetime) --

        The UTC time stamp of the creation time.

      • Active (boolean) --

        Indicates whether the product version is active.

      • Guidance (string) --

        Information set by the administrator to provide guidance to end users about which provisioning artifacts to use.

      • SourceRevision (string) --

        Specifies the revision of the external artifact that was used to automatically sync the Service Catalog product and create the provisioning artifact. Service Catalog includes this response parameter as a high level field to the existing ProvisioningArtifactDetail type, which is returned as part of the response for CreateProduct, UpdateProduct, DescribeProductAsAdmin, DescribeProvisioningArtifact, ListProvisioningArtifact, and UpdateProvisioningArticat APIs.

        This field only exists for Repo-Synced products.

    • Info (dict) --

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

      • (string) --

        • (string) --

    • Status (string) --

      The status of the current request.