AWS Marketplace Catalog Service

2023/10/06 - AWS Marketplace Catalog Service - 3 updated api methods

Changes  This release adds support for Document type as an alternative for stringified JSON for StartChangeSet, DescribeChangeSet and DescribeEntity APIs

DescribeChangeSet (updated) Link ¶
Changes (response)
{'ChangeSet': {'DetailsDocument': {}}}

Provides information about a given change set.

See also: AWS API Documentation

Request Syntax

client.describe_change_set(
    Catalog='string',
    ChangeSetId='string'
)
type Catalog:

string

param Catalog:

[REQUIRED]

Required. The catalog related to the request. Fixed value: AWSMarketplace

type ChangeSetId:

string

param ChangeSetId:

[REQUIRED]

Required. The unique identifier for the StartChangeSet request that you want to describe the details for.

rtype:

dict

returns:

Response Syntax

{
    'ChangeSetId': 'string',
    'ChangeSetArn': 'string',
    'ChangeSetName': 'string',
    'StartTime': 'string',
    'EndTime': 'string',
    'Status': 'PREPARING'|'APPLYING'|'SUCCEEDED'|'CANCELLED'|'FAILED',
    'FailureCode': 'CLIENT_ERROR'|'SERVER_FAULT',
    'FailureDescription': 'string',
    'ChangeSet': [
        {
            'ChangeType': 'string',
            'Entity': {
                'Type': 'string',
                'Identifier': 'string'
            },
            'Details': 'string',
            'DetailsDocument': {...}|[...]|123|123.4|'string'|True|None,
            'ErrorDetailList': [
                {
                    'ErrorCode': 'string',
                    'ErrorMessage': 'string'
                },
            ],
            'ChangeName': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • ChangeSetId (string) --

      Required. The unique identifier for the change set referenced in this request.

    • ChangeSetArn (string) --

      The ARN associated with the unique identifier for the change set referenced in this request.

    • ChangeSetName (string) --

      The optional name provided in the StartChangeSet request. If you do not provide a name, one is set by default.

    • StartTime (string) --

      The date and time, in ISO 8601 format (2018-02-27T13:45:22Z), the request started.

    • EndTime (string) --

      The date and time, in ISO 8601 format (2018-02-27T13:45:22Z), the request transitioned to a terminal state. The change cannot transition to a different state. Null if the request is not in a terminal state.

    • Status (string) --

      The status of the change request.

    • FailureCode (string) --

      Returned if the change set is in FAILED status. Can be either CLIENT_ERROR, which means that there are issues with the request (see the ErrorDetailList), or SERVER_FAULT, which means that there is a problem in the system, and you should retry your request.

    • FailureDescription (string) --

      Returned if there is a failure on the change set, but that failure is not related to any of the changes in the request.

    • ChangeSet (list) --

      An array of ChangeSummary objects.

      • (dict) --

        This object is a container for common summary information about the change. The summary doesn't contain the whole change structure.

        • ChangeType (string) --

          The type of the change.

        • Entity (dict) --

          The entity to be changed.

          • Type (string) --

            The type of entity.

          • Identifier (string) --

            The identifier for the entity.

        • Details (string) --

          This object contains details specific to the change type of the requested change.

        • DetailsDocument (:ref:`document<document>`) --

          The JSON value of the details specific to the change type of the requested change.

        • ErrorDetailList (list) --

          An array of ErrorDetail objects associated with the change.

          • (dict) --

            Details about the error.

            • ErrorCode (string) --

              The error code that identifies the type of error.

            • ErrorMessage (string) --

              The message for the error.

        • ChangeName (string) --

          Optional name for the change.

DescribeEntity (updated) Link ¶
Changes (response)
{'DetailsDocument': {}}

Returns the metadata and content of the entity.

See also: AWS API Documentation

Request Syntax

client.describe_entity(
    Catalog='string',
    EntityId='string'
)
type Catalog:

string

param Catalog:

[REQUIRED]

Required. The catalog related to the request. Fixed value: AWSMarketplace

type EntityId:

string

param EntityId:

[REQUIRED]

Required. The unique ID of the entity to describe.

rtype:

dict

returns:

Response Syntax

{
    'EntityType': 'string',
    'EntityIdentifier': 'string',
    'EntityArn': 'string',
    'LastModifiedDate': 'string',
    'Details': 'string',
    'DetailsDocument': {...}|[...]|123|123.4|'string'|True|None
}

Response Structure

  • (dict) --

    • EntityType (string) --

      The named type of the entity, in the format of EntityType@Version.

    • EntityIdentifier (string) --

      The identifier of the entity, in the format of EntityId@RevisionId.

    • EntityArn (string) --

      The ARN associated to the unique identifier for the entity referenced in this request.

    • LastModifiedDate (string) --

      The last modified date of the entity, in ISO 8601 format (2018-02-27T13:45:22Z).

    • Details (string) --

      This stringified JSON object includes the details of the entity.

    • DetailsDocument (:ref:`document<document>`) --

      The JSON value of the details specific to the entity.

StartChangeSet (updated) Link ¶
Changes (request)
{'ChangeSet': {'DetailsDocument': {}}}

Allows you to request changes for your entities. Within a single ChangeSet, you can't start the same change type against the same entity multiple times. Additionally, when a ChangeSet is running, all the entities targeted by the different changes are locked until the change set has completed (either succeeded, cancelled, or failed). If you try to start a change set containing a change against an entity that is already locked, you will receive a ResourceInUseException error.

For example, you can't start the ChangeSet described in the example later in this topic because it contains two changes to run the same change type ( AddRevisions) against the same entity ( entity-id@1).

For more information about working with change sets, see Working with change sets. For information about change types for single-AMI products, see Working with single-AMI products. Also, for more information about change types available for container-based products, see Working with container products.

See also: AWS API Documentation

Request Syntax

client.start_change_set(
    Catalog='string',
    ChangeSet=[
        {
            'ChangeType': 'string',
            'Entity': {
                'Type': 'string',
                'Identifier': 'string'
            },
            'EntityTags': [
                {
                    'Key': 'string',
                    'Value': 'string'
                },
            ],
            'Details': 'string',
            'DetailsDocument': {...}|[...]|123|123.4|'string'|True|None,
            'ChangeName': 'string'
        },
    ],
    ChangeSetName='string',
    ClientRequestToken='string',
    ChangeSetTags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
type Catalog:

string

param Catalog:

[REQUIRED]

The catalog related to the request. Fixed value: AWSMarketplace

type ChangeSet:

list

param ChangeSet:

[REQUIRED]

Array of change object.

  • (dict) --

    An object that contains the ChangeType, Details, and Entity.

    • ChangeType (string) -- [REQUIRED]

      Change types are single string values that describe your intention for the change. Each change type is unique for each EntityType provided in the change's scope. For more information on change types available for single-AMI products, see Working with single-AMI products. Also, for more information about change types available for container-based products, see Working with container products.

    • Entity (dict) -- [REQUIRED]

      The entity to be changed.

      • Type (string) -- [REQUIRED]

        The type of entity.

      • Identifier (string) --

        The identifier for the entity.

    • EntityTags (list) --

      The tags associated with the change.

      • (dict) --

        A list of objects specifying each key name and value.

        • Key (string) -- [REQUIRED]

          The key associated with the tag.

        • Value (string) -- [REQUIRED]

          The value associated with the tag.

    • Details (string) --

      This object contains details specific to the change type of the requested change. For more information about change types available for single-AMI products, see Working with single-AMI products. Also, for more information about change types available for container-based products, see Working with container products.

    • DetailsDocument (:ref:`document<document>`) --

      Alternative field that accepts a JSON value instead of a string for ChangeType details. You can use either Details or DetailsDocument, but not both.

    • ChangeName (string) --

      Optional name for the change.

type ChangeSetName:

string

param ChangeSetName:

Optional case sensitive string of up to 100 ASCII characters. The change set name can be used to filter the list of change sets.

type ClientRequestToken:

string

param ClientRequestToken:

A unique token to identify the request to ensure idempotency.

This field is autopopulated if not provided.

type ChangeSetTags:

list

param ChangeSetTags:

A list of objects specifying each key name and value for the ChangeSetTags property.

  • (dict) --

    A list of objects specifying each key name and value.

    • Key (string) -- [REQUIRED]

      The key associated with the tag.

    • Value (string) -- [REQUIRED]

      The value associated with the tag.

rtype:

dict

returns:

Response Syntax

{
    'ChangeSetId': 'string',
    'ChangeSetArn': 'string'
}

Response Structure

  • (dict) --

    • ChangeSetId (string) --

      Unique identifier generated for the request.

    • ChangeSetArn (string) --

      The ARN associated to the unique identifier generated for the request.