Amazon Simple Systems Manager (SSM)

2021/05/10 - Amazon Simple Systems Manager (SSM) - 3 new6 updated api methods

Changes  This release adds new APIs to associate, disassociate and list related items in SSM OpsCenter; and this release adds DisplayName as a version-level attribute for SSM Documents and introduces two new document types: ProblemAnalysis, ProblemAnalysisTemplate.

AssociateOpsItemRelatedItem (new) Link ¶

Associates a related resource to a Systems Manager OpsCenter OpsItem. For example, you can associate an Incident Manager incident or analysis with an OpsItem. Incident Manager is a capability of AWS Systems Manager.

See also: AWS API Documentation

Request Syntax

client.associate_ops_item_related_item(
    OpsItemId='string',
    AssociationType='string',
    ResourceType='string',
    ResourceUri='string'
)
type OpsItemId:

string

param OpsItemId:

[REQUIRED]

The ID of the OpsItem to which you want to associate a resource as a related item.

type AssociationType:

string

param AssociationType:

[REQUIRED]

The type of association that you want to create between an OpsItem and a resource. OpsCenter supports IsParentOf and RelatesTo association types.

type ResourceType:

string

param ResourceType:

[REQUIRED]

The type of resource that you want to associate with an OpsItem. OpsCenter supports the following types:

AWS::SSMIncidents::IncidentRecord: an Incident Manager incident. Incident Manager is a capability of AWS Systems Manager.

AWS::SSM::Document: a Systems Manager (SSM) document.

type ResourceUri:

string

param ResourceUri:

[REQUIRED]

The Amazon Resource Name (ARN) of the AWS resource that you want to associate with the OpsItem.

rtype:

dict

returns:

Response Syntax

{
    'AssociationId': 'string'
}

Response Structure

  • (dict) --

    • AssociationId (string) --

      The association ID.

DisassociateOpsItemRelatedItem (new) Link ¶

Deletes the association between an OpsItem and a related resource. For example, this API action can delete an Incident Manager incident from an OpsItem. Incident Manager is a capability of AWS Systems Manager.

See also: AWS API Documentation

Request Syntax

client.disassociate_ops_item_related_item(
    OpsItemId='string',
    AssociationId='string'
)
type OpsItemId:

string

param OpsItemId:

[REQUIRED]

The ID of the OpsItem for which you want to delete an association between the OpsItem and a related resource.

type AssociationId:

string

param AssociationId:

[REQUIRED]

The ID of the association for which you want to delete an association between the OpsItem and a related resource.

rtype:

dict

returns:

Response Syntax

{}

Response Structure

  • (dict) --

ListOpsItemRelatedItems (new) Link ¶

Lists all related-item resources associated with an OpsItem.

See also: AWS API Documentation

Request Syntax

client.list_ops_item_related_items(
    OpsItemId='string',
    Filters=[
        {
            'Key': 'ResourceType'|'AssociationId'|'ResourceUri',
            'Values': [
                'string',
            ],
            'Operator': 'Equal'
        },
    ],
    MaxResults=123,
    NextToken='string'
)
type OpsItemId:

string

param OpsItemId:

The ID of the OpsItem for which you want to list all related-item resources.

type Filters:

list

param Filters:

One or more OpsItem filters. Use a filter to return a more specific list of results.

  • (dict) --

    Describes a filter for a specific list of related-item resources.

    • Key (string) -- [REQUIRED]

      The name of the filter key. Supported values include ResourceUri, ResourceType, or AssociationId.

    • Values (list) -- [REQUIRED]

      The values for the filter.

      • (string) --

    • Operator (string) -- [REQUIRED]

      The operator used by the filter call. The only supported operator is EQUAL.

type MaxResults:

integer

param MaxResults:

The maximum number of items to return for this call. The call also returns a token that you can specify in a subsequent call to get the next set of results.

type NextToken:

string

param NextToken:

The token for the next set of items to return. (You received this token from a previous call.)

rtype:

dict

returns:

Response Syntax

{
    'NextToken': 'string',
    'Summaries': [
        {
            'OpsItemId': 'string',
            'AssociationId': 'string',
            'ResourceType': 'string',
            'AssociationType': 'string',
            'ResourceUri': 'string',
            'CreatedBy': {
                'Arn': 'string'
            },
            'CreatedTime': datetime(2015, 1, 1),
            'LastModifiedBy': {
                'Arn': 'string'
            },
            'LastModifiedTime': datetime(2015, 1, 1)
        },
    ]
}

Response Structure

  • (dict) --

    • NextToken (string) --

      The token for the next set of items to return. Use this token to get the next set of results.

    • Summaries (list) --

      A list of related-item resources for the specified OpsItem.

      • (dict) --

        Summary information about related-item resources for an OpsItem.

        • OpsItemId (string) --

          The OpsItem ID.

        • AssociationId (string) --

          The association ID.

        • ResourceType (string) --

          The resource type.

        • AssociationType (string) --

          The association type.

        • ResourceUri (string) --

          The Amazon Resource Name (ARN) of the related-item resource.

        • CreatedBy (dict) --

          Information about the user or resource that created an OpsItem event.

          • Arn (string) --

            The Amazon Resource Name (ARN) of the IAM entity that created the OpsItem event.

        • CreatedTime (datetime) --

          The time the related-item association was created.

        • LastModifiedBy (dict) --

          Information about the user or resource that created an OpsItem event.

          • Arn (string) --

            The Amazon Resource Name (ARN) of the IAM entity that created the OpsItem event.

        • LastModifiedTime (datetime) --

          The time the related-item association was last updated.

CreateDocument (updated) Link ¶
Changes (request, response)
Request
{'DisplayName': 'string',
 'DocumentType': {'ProblemAnalysisTemplate', 'ProblemAnalysis'}}
Response
{'DocumentDescription': {'DisplayName': 'string',
                         'DocumentType': {'ProblemAnalysis',
                                          'ProblemAnalysisTemplate'}}}

Creates a Systems Manager (SSM) document. An SSM document defines the actions that Systems Manager performs on your managed instances. For more information about SSM documents, including information about supported schemas, features, and syntax, see AWS Systems Manager Documents in the AWS Systems Manager User Guide.

See also: AWS API Documentation

Request Syntax

client.create_document(
    Content='string',
    Requires=[
        {
            'Name': 'string',
            'Version': 'string'
        },
    ],
    Attachments=[
        {
            'Key': 'SourceUrl'|'S3FileUrl'|'AttachmentReference',
            'Values': [
                'string',
            ],
            'Name': 'string'
        },
    ],
    Name='string',
    DisplayName='string',
    VersionName='string',
    DocumentType='Command'|'Policy'|'Automation'|'Session'|'Package'|'ApplicationConfiguration'|'ApplicationConfigurationSchema'|'DeploymentStrategy'|'ChangeCalendar'|'Automation.ChangeTemplate'|'ProblemAnalysis'|'ProblemAnalysisTemplate',
    DocumentFormat='YAML'|'JSON'|'TEXT',
    TargetType='string',
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
type Content:

string

param Content:

[REQUIRED]

The content for the new SSM document in JSON or YAML format. We recommend storing the contents for your new document in an external JSON or YAML file and referencing the file in a command.

For examples, see the following topics in the AWS Systems Manager User Guide.

type Requires:

list

param Requires:

A list of SSM documents required by a document. This parameter is used exclusively by AWS AppConfig. When a user creates an AppConfig configuration in an SSM document, the user must also specify a required document for validation purposes. In this case, an ApplicationConfiguration document requires an ApplicationConfigurationSchema document for validation purposes. For more information, see AWS AppConfig in the AWS Systems Manager User Guide.

  • (dict) --

    An SSM document required by the current document.

    • Name (string) -- [REQUIRED]

      The name of the required SSM document. The name can be an Amazon Resource Name (ARN).

    • Version (string) --

      The document version required by the current document.

type Attachments:

list

param Attachments:

A list of key and value pairs that describe attachments to a version of a document.

  • (dict) --

    Identifying information about a document attachment, including the file name and a key-value pair that identifies the location of an attachment to a document.

    • Key (string) --

      The key of a key-value pair that identifies the location of an attachment to a document.

    • Values (list) --

      The value of a key-value pair that identifies the location of an attachment to a document. The format for Value depends on the type of key you specify.

      • For the key SourceUrl, the value is an S3 bucket location. For example: "Values": [ "s3://doc-example-bucket/my-folder" ]

      • For the key S3FileUrl, the value is a file in an S3 bucket. For example: "Values": [ "s3://doc-example-bucket/my-folder/my-file.py" ]

      • For the key AttachmentReference, the value is constructed from the name of another SSM document in your account, a version number of that document, and a file attached to that document version that you want to reuse. For example: "Values": [ "MyOtherDocument/3/my-other-file.py" ] However, if the SSM document is shared with you from another account, the full SSM document ARN must be specified instead of the document name only. For example: "Values": [ "arn:aws:ssm:us-east-2:111122223333:document/OtherAccountDocument/3/their-file.py" ]

      • (string) --

    • Name (string) --

      The name of the document attachment file.

type Name:

string

param Name:

[REQUIRED]

A name for the Systems Manager document.

type DisplayName:

string

param DisplayName:

An optional field where you can specify a friendly name for the Systems Manager document. This value can differ for each version of the document. You can update this value at a later time using the UpdateDocument action.

type VersionName:

string

param VersionName:

An optional field specifying the version of the artifact you are creating with the document. For example, "Release 12, Update 6". This value is unique across all versions of a document, and cannot be changed.

type DocumentType:

string

param DocumentType:

The type of document to create.

type DocumentFormat:

string

param DocumentFormat:

Specify the document format for the request. The document format can be JSON, YAML, or TEXT. JSON is the default format.

type TargetType:

string

param TargetType:

Specify a target type to define the kinds of resources the document can run on. For example, to run a document on EC2 instances, specify the following value: /AWS::EC2::Instance. If you specify a value of '/' the document can run on all types of resources. If you don't specify a value, the document can't run on any resources. For a list of valid resource types, see AWS resource and property types reference in the AWS CloudFormation User Guide.

type Tags:

list

param Tags:

Optional metadata that you assign to a resource. Tags enable you to categorize a resource in different ways, such as by purpose, owner, or environment. For example, you might want to tag an SSM document to identify the types of targets or the environment where it will run. In this case, you could specify the following key name/value pairs:

  • Key=OS,Value=Windows

  • Key=Environment,Value=Production

  • (dict) --

    Metadata that you assign to your AWS resources. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment. In Systems Manager, you can apply tags to documents, managed instances, maintenance windows, Parameter Store parameters, and patch baselines.

    • Key (string) -- [REQUIRED]

      The name of the tag.

    • Value (string) -- [REQUIRED]

      The value of the tag.

rtype:

dict

returns:

Response Syntax

{
    'DocumentDescription': {
        'Sha1': 'string',
        'Hash': 'string',
        'HashType': 'Sha256'|'Sha1',
        'Name': 'string',
        'DisplayName': 'string',
        'VersionName': 'string',
        'Owner': 'string',
        'CreatedDate': datetime(2015, 1, 1),
        'Status': 'Creating'|'Active'|'Updating'|'Deleting'|'Failed',
        'StatusInformation': 'string',
        'DocumentVersion': 'string',
        'Description': 'string',
        'Parameters': [
            {
                'Name': 'string',
                'Type': 'String'|'StringList',
                'Description': 'string',
                'DefaultValue': 'string'
            },
        ],
        'PlatformTypes': [
            'Windows'|'Linux',
        ],
        'DocumentType': 'Command'|'Policy'|'Automation'|'Session'|'Package'|'ApplicationConfiguration'|'ApplicationConfigurationSchema'|'DeploymentStrategy'|'ChangeCalendar'|'Automation.ChangeTemplate'|'ProblemAnalysis'|'ProblemAnalysisTemplate',
        'SchemaVersion': 'string',
        'LatestVersion': 'string',
        'DefaultVersion': 'string',
        'DocumentFormat': 'YAML'|'JSON'|'TEXT',
        'TargetType': 'string',
        'Tags': [
            {
                'Key': 'string',
                'Value': 'string'
            },
        ],
        'AttachmentsInformation': [
            {
                'Name': 'string'
            },
        ],
        'Requires': [
            {
                'Name': 'string',
                'Version': 'string'
            },
        ],
        'Author': 'string',
        'ReviewInformation': [
            {
                'ReviewedTime': datetime(2015, 1, 1),
                'Status': 'APPROVED'|'NOT_REVIEWED'|'PENDING'|'REJECTED',
                'Reviewer': 'string'
            },
        ],
        'ApprovedVersion': 'string',
        'PendingReviewVersion': 'string',
        'ReviewStatus': 'APPROVED'|'NOT_REVIEWED'|'PENDING'|'REJECTED'
    }
}

Response Structure

  • (dict) --

    • DocumentDescription (dict) --

      Information about the Systems Manager document.

      • Sha1 (string) --

        The SHA1 hash of the document, which you can use for verification.

      • Hash (string) --

        The Sha256 or Sha1 hash created by the system when the document was created.

      • HashType (string) --

        The hash type of the document. Valid values include Sha256 or Sha1.

      • Name (string) --

        The name of the Systems Manager document.

      • DisplayName (string) --

        The friendly name of the Systems Manager document. This value can differ for each version of the document. If you want to update this value, see UpdateDocument.

      • VersionName (string) --

        The version of the artifact associated with the document.

      • Owner (string) --

        The AWS user account that created the document.

      • CreatedDate (datetime) --

        The date when the document was created.

      • Status (string) --

        The status of the Systems Manager document.

      • StatusInformation (string) --

        A message returned by AWS Systems Manager that explains the Status value. For example, a Failed status might be explained by the StatusInformation message, "The specified S3 bucket does not exist. Verify that the URL of the S3 bucket is correct."

      • DocumentVersion (string) --

        The document version.

      • Description (string) --

        A description of the document.

      • Parameters (list) --

        A description of the parameters for a document.

        • (dict) --

          Parameters specified in a System Manager document that run on the server when the command is run.

          • Name (string) --

            The name of the parameter.

          • Type (string) --

            The type of parameter. The type can be either String or StringList.

          • Description (string) --

            A description of what the parameter does, how to use it, the default value, and whether or not the parameter is optional.

          • DefaultValue (string) --

            If specified, the default values for the parameters. Parameters without a default value are required. Parameters with a default value are optional.

      • PlatformTypes (list) --

        The list of OS platforms compatible with this Systems Manager document.

        • (string) --

      • DocumentType (string) --

        The type of document.

      • SchemaVersion (string) --

        The schema version.

      • LatestVersion (string) --

        The latest version of the document.

      • DefaultVersion (string) --

        The default version.

      • DocumentFormat (string) --

        The document format, either JSON or YAML.

      • TargetType (string) --

        The target type which defines the kinds of resources the document can run on. For example, /AWS::EC2::Instance. For a list of valid resource types, see AWS resource and property types reference in the AWS CloudFormation User Guide.

      • Tags (list) --

        The tags, or metadata, that have been applied to the document.

        • (dict) --

          Metadata that you assign to your AWS resources. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment. In Systems Manager, you can apply tags to documents, managed instances, maintenance windows, Parameter Store parameters, and patch baselines.

          • Key (string) --

            The name of the tag.

          • Value (string) --

            The value of the tag.

      • AttachmentsInformation (list) --

        Details about the document attachments, including names, locations, sizes, and so on.

        • (dict) --

          An attribute of an attachment, such as the attachment name.

          • Name (string) --

            The name of the attachment.

      • Requires (list) --

        A list of SSM documents required by a document. For example, an ApplicationConfiguration document requires an ApplicationConfigurationSchema document.

        • (dict) --

          An SSM document required by the current document.

          • Name (string) --

            The name of the required SSM document. The name can be an Amazon Resource Name (ARN).

          • Version (string) --

            The document version required by the current document.

      • Author (string) --

        The user in your organization who created the document.

      • ReviewInformation (list) --

        Details about the review of a document.

        • (dict) --

          Information about the result of a document review request.

          • ReviewedTime (datetime) --

            The time that the reviewer took action on the document review request.

          • Status (string) --

            The current status of the document review request.

          • Reviewer (string) --

            The reviewer assigned to take action on the document review request.

      • ApprovedVersion (string) --

        The version of the document currently approved for use in the organization.

      • PendingReviewVersion (string) --

        The version of the document that is currently under review.

      • ReviewStatus (string) --

        The current status of the review.

DescribeDocument (updated) Link ¶
Changes (response)
{'Document': {'DisplayName': 'string',
              'DocumentType': {'ProblemAnalysisTemplate', 'ProblemAnalysis'}}}

Describes the specified Systems Manager document.

See also: AWS API Documentation

Request Syntax

client.describe_document(
    Name='string',
    DocumentVersion='string',
    VersionName='string'
)
type Name:

string

param Name:

[REQUIRED]

The name of the Systems Manager document.

type DocumentVersion:

string

param DocumentVersion:

The document version for which you want information. Can be a specific version or the default version.

type VersionName:

string

param VersionName:

An optional field specifying the version of the artifact associated with the document. For example, "Release 12, Update 6". This value is unique across all versions of a document, and cannot be changed.

rtype:

dict

returns:

Response Syntax

{
    'Document': {
        'Sha1': 'string',
        'Hash': 'string',
        'HashType': 'Sha256'|'Sha1',
        'Name': 'string',
        'DisplayName': 'string',
        'VersionName': 'string',
        'Owner': 'string',
        'CreatedDate': datetime(2015, 1, 1),
        'Status': 'Creating'|'Active'|'Updating'|'Deleting'|'Failed',
        'StatusInformation': 'string',
        'DocumentVersion': 'string',
        'Description': 'string',
        'Parameters': [
            {
                'Name': 'string',
                'Type': 'String'|'StringList',
                'Description': 'string',
                'DefaultValue': 'string'
            },
        ],
        'PlatformTypes': [
            'Windows'|'Linux',
        ],
        'DocumentType': 'Command'|'Policy'|'Automation'|'Session'|'Package'|'ApplicationConfiguration'|'ApplicationConfigurationSchema'|'DeploymentStrategy'|'ChangeCalendar'|'Automation.ChangeTemplate'|'ProblemAnalysis'|'ProblemAnalysisTemplate',
        'SchemaVersion': 'string',
        'LatestVersion': 'string',
        'DefaultVersion': 'string',
        'DocumentFormat': 'YAML'|'JSON'|'TEXT',
        'TargetType': 'string',
        'Tags': [
            {
                'Key': 'string',
                'Value': 'string'
            },
        ],
        'AttachmentsInformation': [
            {
                'Name': 'string'
            },
        ],
        'Requires': [
            {
                'Name': 'string',
                'Version': 'string'
            },
        ],
        'Author': 'string',
        'ReviewInformation': [
            {
                'ReviewedTime': datetime(2015, 1, 1),
                'Status': 'APPROVED'|'NOT_REVIEWED'|'PENDING'|'REJECTED',
                'Reviewer': 'string'
            },
        ],
        'ApprovedVersion': 'string',
        'PendingReviewVersion': 'string',
        'ReviewStatus': 'APPROVED'|'NOT_REVIEWED'|'PENDING'|'REJECTED'
    }
}

Response Structure

  • (dict) --

    • Document (dict) --

      Information about the Systems Manager document.

      • Sha1 (string) --

        The SHA1 hash of the document, which you can use for verification.

      • Hash (string) --

        The Sha256 or Sha1 hash created by the system when the document was created.

      • HashType (string) --

        The hash type of the document. Valid values include Sha256 or Sha1.

      • Name (string) --

        The name of the Systems Manager document.

      • DisplayName (string) --

        The friendly name of the Systems Manager document. This value can differ for each version of the document. If you want to update this value, see UpdateDocument.

      • VersionName (string) --

        The version of the artifact associated with the document.

      • Owner (string) --

        The AWS user account that created the document.

      • CreatedDate (datetime) --

        The date when the document was created.

      • Status (string) --

        The status of the Systems Manager document.

      • StatusInformation (string) --

        A message returned by AWS Systems Manager that explains the Status value. For example, a Failed status might be explained by the StatusInformation message, "The specified S3 bucket does not exist. Verify that the URL of the S3 bucket is correct."

      • DocumentVersion (string) --

        The document version.

      • Description (string) --

        A description of the document.

      • Parameters (list) --

        A description of the parameters for a document.

        • (dict) --

          Parameters specified in a System Manager document that run on the server when the command is run.

          • Name (string) --

            The name of the parameter.

          • Type (string) --

            The type of parameter. The type can be either String or StringList.

          • Description (string) --

            A description of what the parameter does, how to use it, the default value, and whether or not the parameter is optional.

          • DefaultValue (string) --

            If specified, the default values for the parameters. Parameters without a default value are required. Parameters with a default value are optional.

      • PlatformTypes (list) --

        The list of OS platforms compatible with this Systems Manager document.

        • (string) --

      • DocumentType (string) --

        The type of document.

      • SchemaVersion (string) --

        The schema version.

      • LatestVersion (string) --

        The latest version of the document.

      • DefaultVersion (string) --

        The default version.

      • DocumentFormat (string) --

        The document format, either JSON or YAML.

      • TargetType (string) --

        The target type which defines the kinds of resources the document can run on. For example, /AWS::EC2::Instance. For a list of valid resource types, see AWS resource and property types reference in the AWS CloudFormation User Guide.

      • Tags (list) --

        The tags, or metadata, that have been applied to the document.

        • (dict) --

          Metadata that you assign to your AWS resources. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment. In Systems Manager, you can apply tags to documents, managed instances, maintenance windows, Parameter Store parameters, and patch baselines.

          • Key (string) --

            The name of the tag.

          • Value (string) --

            The value of the tag.

      • AttachmentsInformation (list) --

        Details about the document attachments, including names, locations, sizes, and so on.

        • (dict) --

          An attribute of an attachment, such as the attachment name.

          • Name (string) --

            The name of the attachment.

      • Requires (list) --

        A list of SSM documents required by a document. For example, an ApplicationConfiguration document requires an ApplicationConfigurationSchema document.

        • (dict) --

          An SSM document required by the current document.

          • Name (string) --

            The name of the required SSM document. The name can be an Amazon Resource Name (ARN).

          • Version (string) --

            The document version required by the current document.

      • Author (string) --

        The user in your organization who created the document.

      • ReviewInformation (list) --

        Details about the review of a document.

        • (dict) --

          Information about the result of a document review request.

          • ReviewedTime (datetime) --

            The time that the reviewer took action on the document review request.

          • Status (string) --

            The current status of the document review request.

          • Reviewer (string) --

            The reviewer assigned to take action on the document review request.

      • ApprovedVersion (string) --

        The version of the document currently approved for use in the organization.

      • PendingReviewVersion (string) --

        The version of the document that is currently under review.

      • ReviewStatus (string) --

        The current status of the review.

GetDocument (updated) Link ¶
Changes (response)
{'CreatedDate': 'timestamp',
 'DisplayName': 'string',
 'DocumentType': {'ProblemAnalysisTemplate', 'ProblemAnalysis'}}

Gets the contents of the specified Systems Manager document.

See also: AWS API Documentation

Request Syntax

client.get_document(
    Name='string',
    VersionName='string',
    DocumentVersion='string',
    DocumentFormat='YAML'|'JSON'|'TEXT'
)
type Name:

string

param Name:

[REQUIRED]

The name of the Systems Manager document.

type VersionName:

string

param VersionName:

An optional field specifying the version of the artifact associated with the document. For example, "Release 12, Update 6". This value is unique across all versions of a document and can't be changed.

type DocumentVersion:

string

param DocumentVersion:

The document version for which you want information.

type DocumentFormat:

string

param DocumentFormat:

Returns the document in the specified format. The document format can be either JSON or YAML. JSON is the default format.

rtype:

dict

returns:

Response Syntax

{
    'Name': 'string',
    'CreatedDate': datetime(2015, 1, 1),
    'DisplayName': 'string',
    'VersionName': 'string',
    'DocumentVersion': 'string',
    'Status': 'Creating'|'Active'|'Updating'|'Deleting'|'Failed',
    'StatusInformation': 'string',
    'Content': 'string',
    'DocumentType': 'Command'|'Policy'|'Automation'|'Session'|'Package'|'ApplicationConfiguration'|'ApplicationConfigurationSchema'|'DeploymentStrategy'|'ChangeCalendar'|'Automation.ChangeTemplate'|'ProblemAnalysis'|'ProblemAnalysisTemplate',
    'DocumentFormat': 'YAML'|'JSON'|'TEXT',
    'Requires': [
        {
            'Name': 'string',
            'Version': 'string'
        },
    ],
    'AttachmentsContent': [
        {
            'Name': 'string',
            'Size': 123,
            'Hash': 'string',
            'HashType': 'Sha256',
            'Url': 'string'
        },
    ],
    'ReviewStatus': 'APPROVED'|'NOT_REVIEWED'|'PENDING'|'REJECTED'
}

Response Structure

  • (dict) --

    • Name (string) --

      The name of the Systems Manager document.

    • CreatedDate (datetime) --

      The date the Systems Manager document was created.

    • DisplayName (string) --

      The friendly name of the Systems Manager document. This value can differ for each version of the document. If you want to update this value, see UpdateDocument.

    • VersionName (string) --

      The version of the artifact associated with the document. For example, "Release 12, Update 6". This value is unique across all versions of a document, and cannot be changed.

    • DocumentVersion (string) --

      The document version.

    • Status (string) --

      The status of the Systems Manager document, such as Creating, Active, Updating, Failed, and Deleting.

    • StatusInformation (string) --

      A message returned by AWS Systems Manager that explains the Status value. For example, a Failed status might be explained by the StatusInformation message, "The specified S3 bucket does not exist. Verify that the URL of the S3 bucket is correct."

    • Content (string) --

      The contents of the Systems Manager document.

    • DocumentType (string) --

      The document type.

    • DocumentFormat (string) --

      The document format, either JSON or YAML.

    • Requires (list) --

      A list of SSM documents required by a document. For example, an ApplicationConfiguration document requires an ApplicationConfigurationSchema document.

      • (dict) --

        An SSM document required by the current document.

        • Name (string) --

          The name of the required SSM document. The name can be an Amazon Resource Name (ARN).

        • Version (string) --

          The document version required by the current document.

    • AttachmentsContent (list) --

      A description of the document attachments, including names, locations, sizes, and so on.

      • (dict) --

        A structure that includes attributes that describe a document attachment.

        • Name (string) --

          The name of an attachment.

        • Size (integer) --

          The size of an attachment in bytes.

        • Hash (string) --

          The cryptographic hash value of the document content.

        • HashType (string) --

          The hash algorithm used to calculate the hash value.

        • Url (string) --

          The URL location of the attachment content.

    • ReviewStatus (string) --

      The current review status of a new custom Systems Manager document (SSM document) created by a member of your organization, or of the latest version of an existing SSM document.

      Only one version of an SSM document can be in the APPROVED state at a time. When a new version is approved, the status of the previous version changes to REJECTED.

      Only one version of an SSM document can be in review, or PENDING, at a time.

ListDocumentVersions (updated) Link ¶
Changes (response)
{'DocumentVersions': {'DisplayName': 'string'}}

List all versions for a document.

See also: AWS API Documentation

Request Syntax

client.list_document_versions(
    Name='string',
    MaxResults=123,
    NextToken='string'
)
type Name:

string

param Name:

[REQUIRED]

The name of the document. You can specify an Amazon Resource Name (ARN).

type MaxResults:

integer

param MaxResults:

The maximum number of items to return for this call. The call also returns a token that you can specify in a subsequent call to get the next set of results.

type NextToken:

string

param NextToken:

The token for the next set of items to return. (You received this token from a previous call.)

rtype:

dict

returns:

Response Syntax

{
    'DocumentVersions': [
        {
            'Name': 'string',
            'DisplayName': 'string',
            'DocumentVersion': 'string',
            'VersionName': 'string',
            'CreatedDate': datetime(2015, 1, 1),
            'IsDefaultVersion': True|False,
            'DocumentFormat': 'YAML'|'JSON'|'TEXT',
            'Status': 'Creating'|'Active'|'Updating'|'Deleting'|'Failed',
            'StatusInformation': 'string',
            'ReviewStatus': 'APPROVED'|'NOT_REVIEWED'|'PENDING'|'REJECTED'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • DocumentVersions (list) --

      The document versions.

      • (dict) --

        Version information about the document.

        • Name (string) --

          The document name.

        • DisplayName (string) --

          The friendly name of the Systems Manager document. This value can differ for each version of the document. If you want to update this value, see UpdateDocument.

        • DocumentVersion (string) --

          The document version.

        • VersionName (string) --

          The version of the artifact associated with the document. For example, "Release 12, Update 6". This value is unique across all versions of a document, and cannot be changed.

        • CreatedDate (datetime) --

          The date the document was created.

        • IsDefaultVersion (boolean) --

          An identifier for the default version of the document.

        • DocumentFormat (string) --

          The document format, either JSON or YAML.

        • Status (string) --

          The status of the Systems Manager document, such as Creating, Active, Failed, and Deleting.

        • StatusInformation (string) --

          A message returned by AWS Systems Manager that explains the Status value. For example, a Failed status might be explained by the StatusInformation message, "The specified S3 bucket does not exist. Verify that the URL of the S3 bucket is correct."

        • ReviewStatus (string) --

          The current status of the approval review for the latest version of the document.

    • NextToken (string) --

      The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

ListDocuments (updated) Link ¶
Changes (response)
{'DocumentIdentifiers': {'CreatedDate': 'timestamp',
                         'DisplayName': 'string',
                         'DocumentType': {'ProblemAnalysis',
                                          'ProblemAnalysisTemplate'}}}

Returns all Systems Manager (SSM) documents in the current AWS account and Region. You can limit the results of this request by using a filter.

See also: AWS API Documentation

Request Syntax

client.list_documents(
    DocumentFilterList=[
        {
            'key': 'Name'|'Owner'|'PlatformTypes'|'DocumentType',
            'value': 'string'
        },
    ],
    Filters=[
        {
            'Key': 'string',
            'Values': [
                'string',
            ]
        },
    ],
    MaxResults=123,
    NextToken='string'
)
type DocumentFilterList:

list

param DocumentFilterList:

This data type is deprecated. Instead, use Filters.

  • (dict) --

    This data type is deprecated. Instead, use DocumentKeyValuesFilter.

    • key (string) -- [REQUIRED]

      The name of the filter.

    • value (string) -- [REQUIRED]

      The value of the filter.

type Filters:

list

param Filters:

One or more DocumentKeyValuesFilter objects. Use a filter to return a more specific list of results. For keys, you can specify one or more key-value pair tags that have been applied to a document. Other valid keys include Owner, Name, PlatformTypes, DocumentType, and TargetType. For example, to return documents you own use Key=Owner,Values=Self. To specify a custom key-value pair, use the format Key=tag:tagName,Values=valueName.

  • (dict) --

    One or more filters. Use a filter to return a more specific list of documents.

    For keys, you can specify one or more tags that have been applied to a document.

    You can also use AWS-provided keys, some of which have specific allowed values. These keys and their associated values are as follows:

    DocumentType

    • ApplicationConfiguration

    • ApplicationConfigurationSchema

    • Automation

    • ChangeCalendar

    • Command

    • DeploymentStrategy

    • Package

    • Policy

    • Session

      Owner

    Note that only one Owner can be specified in a request. For example: Key=Owner,Values=Self.

    • Amazon

    • Private

    • Public

    • Self

    • ThirdParty

      PlatformTypes

    • Linux

    • Windows

    Name is another AWS-provided key. If you use Name as a key, you can use a name prefix to return a list of documents. For example, in the AWS CLI, to return a list of all documents that begin with Te, run the following command:

    aws ssm list-documents --filters Key=Name,Values=Te

    You can also use the TargetType AWS-provided key. For a list of valid resource type values that can be used with this key, see AWS resource and property types reference in the AWS CloudFormation User Guide.

    If you specify more than two keys, only documents that are identified by all the tags are returned in the results. If you specify more than two values for a key, documents that are identified by any of the values are returned in the results.

    To specify a custom key and value pair, use the format Key=tag:tagName,Values=valueName.

    For example, if you created a key called region and are using the AWS CLI to call the list-documents command:

    aws ssm list-documents --filters Key=tag:region,Values=east,west Key=Owner,Values=Self

    • Key (string) --

      The name of the filter key.

    • Values (list) --

      The value for the filter key.

      • (string) --

type MaxResults:

integer

param MaxResults:

The maximum number of items to return for this call. The call also returns a token that you can specify in a subsequent call to get the next set of results.

type NextToken:

string

param NextToken:

The token for the next set of items to return. (You received this token from a previous call.)

rtype:

dict

returns:

Response Syntax

{
    'DocumentIdentifiers': [
        {
            'Name': 'string',
            'CreatedDate': datetime(2015, 1, 1),
            'DisplayName': 'string',
            'Owner': 'string',
            'VersionName': 'string',
            'PlatformTypes': [
                'Windows'|'Linux',
            ],
            'DocumentVersion': 'string',
            'DocumentType': 'Command'|'Policy'|'Automation'|'Session'|'Package'|'ApplicationConfiguration'|'ApplicationConfigurationSchema'|'DeploymentStrategy'|'ChangeCalendar'|'Automation.ChangeTemplate'|'ProblemAnalysis'|'ProblemAnalysisTemplate',
            'SchemaVersion': 'string',
            'DocumentFormat': 'YAML'|'JSON'|'TEXT',
            'TargetType': 'string',
            'Tags': [
                {
                    'Key': 'string',
                    'Value': 'string'
                },
            ],
            'Requires': [
                {
                    'Name': 'string',
                    'Version': 'string'
                },
            ],
            'ReviewStatus': 'APPROVED'|'NOT_REVIEWED'|'PENDING'|'REJECTED',
            'Author': 'string'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • DocumentIdentifiers (list) --

      The names of the Systems Manager documents.

      • (dict) --

        Describes the name of a Systems Manager document.

        • Name (string) --

          The name of the Systems Manager document.

        • CreatedDate (datetime) --

          The date the Systems Manager document was created.

        • DisplayName (string) --

          An optional field where you can specify a friendly name for the Systems Manager document. This value can differ for each version of the document. If you want to update this value, see UpdateDocument.

        • Owner (string) --

          The AWS user account that created the document.

        • VersionName (string) --

          An optional field specifying the version of the artifact associated with the document. For example, "Release 12, Update 6". This value is unique across all versions of a document, and cannot be changed.

        • PlatformTypes (list) --

          The operating system platform.

          • (string) --

        • DocumentVersion (string) --

          The document version.

        • DocumentType (string) --

          The document type.

        • SchemaVersion (string) --

          The schema version.

        • DocumentFormat (string) --

          The document format, either JSON or YAML.

        • TargetType (string) --

          The target type which defines the kinds of resources the document can run on. For example, /AWS::EC2::Instance. For a list of valid resource types, see AWS resource and property types reference in the AWS CloudFormation User Guide.

        • Tags (list) --

          The tags, or metadata, that have been applied to the document.

          • (dict) --

            Metadata that you assign to your AWS resources. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment. In Systems Manager, you can apply tags to documents, managed instances, maintenance windows, Parameter Store parameters, and patch baselines.

            • Key (string) --

              The name of the tag.

            • Value (string) --

              The value of the tag.

        • Requires (list) --

          A list of SSM documents required by a document. For example, an ApplicationConfiguration document requires an ApplicationConfigurationSchema document.

          • (dict) --

            An SSM document required by the current document.

            • Name (string) --

              The name of the required SSM document. The name can be an Amazon Resource Name (ARN).

            • Version (string) --

              The document version required by the current document.

        • ReviewStatus (string) --

          The current status of a document review.

        • Author (string) --

          The user in your organization who created the document.

    • NextToken (string) --

      The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

UpdateDocument (updated) Link ¶
Changes (request, response)
Request
{'DisplayName': 'string'}
Response
{'DocumentDescription': {'DisplayName': 'string',
                         'DocumentType': {'ProblemAnalysis',
                                          'ProblemAnalysisTemplate'}}}

Updates one or more values for an SSM document.

See also: AWS API Documentation

Request Syntax

client.update_document(
    Content='string',
    Attachments=[
        {
            'Key': 'SourceUrl'|'S3FileUrl'|'AttachmentReference',
            'Values': [
                'string',
            ],
            'Name': 'string'
        },
    ],
    Name='string',
    DisplayName='string',
    VersionName='string',
    DocumentVersion='string',
    DocumentFormat='YAML'|'JSON'|'TEXT',
    TargetType='string'
)
type Content:

string

param Content:

[REQUIRED]

A valid JSON or YAML string.

type Attachments:

list

param Attachments:

A list of key and value pairs that describe attachments to a version of a document.

  • (dict) --

    Identifying information about a document attachment, including the file name and a key-value pair that identifies the location of an attachment to a document.

    • Key (string) --

      The key of a key-value pair that identifies the location of an attachment to a document.

    • Values (list) --

      The value of a key-value pair that identifies the location of an attachment to a document. The format for Value depends on the type of key you specify.

      • For the key SourceUrl, the value is an S3 bucket location. For example: "Values": [ "s3://doc-example-bucket/my-folder" ]

      • For the key S3FileUrl, the value is a file in an S3 bucket. For example: "Values": [ "s3://doc-example-bucket/my-folder/my-file.py" ]

      • For the key AttachmentReference, the value is constructed from the name of another SSM document in your account, a version number of that document, and a file attached to that document version that you want to reuse. For example: "Values": [ "MyOtherDocument/3/my-other-file.py" ] However, if the SSM document is shared with you from another account, the full SSM document ARN must be specified instead of the document name only. For example: "Values": [ "arn:aws:ssm:us-east-2:111122223333:document/OtherAccountDocument/3/their-file.py" ]

      • (string) --

    • Name (string) --

      The name of the document attachment file.

type Name:

string

param Name:

[REQUIRED]

The name of the Systems Manager document that you want to update.

type DisplayName:

string

param DisplayName:

The friendly name of the Systems Manager document that you want to update. This value can differ for each version of the document. If you do not specify a value for this parameter in your request, the existing value is applied to the new document version.

type VersionName:

string

param VersionName:

An optional field specifying the version of the artifact you are updating with the document. For example, "Release 12, Update 6". This value is unique across all versions of a document, and cannot be changed.

type DocumentVersion:

string

param DocumentVersion:

The version of the document that you want to update. Currently, Systems Manager supports updating only the latest version of the document. You can specify the version number of the latest version or use the $LATEST variable.

type DocumentFormat:

string

param DocumentFormat:

Specify the document format for the new document version. Systems Manager supports JSON and YAML documents. JSON is the default format.

type TargetType:

string

param TargetType:

Specify a new target type for the document.

rtype:

dict

returns:

Response Syntax

{
    'DocumentDescription': {
        'Sha1': 'string',
        'Hash': 'string',
        'HashType': 'Sha256'|'Sha1',
        'Name': 'string',
        'DisplayName': 'string',
        'VersionName': 'string',
        'Owner': 'string',
        'CreatedDate': datetime(2015, 1, 1),
        'Status': 'Creating'|'Active'|'Updating'|'Deleting'|'Failed',
        'StatusInformation': 'string',
        'DocumentVersion': 'string',
        'Description': 'string',
        'Parameters': [
            {
                'Name': 'string',
                'Type': 'String'|'StringList',
                'Description': 'string',
                'DefaultValue': 'string'
            },
        ],
        'PlatformTypes': [
            'Windows'|'Linux',
        ],
        'DocumentType': 'Command'|'Policy'|'Automation'|'Session'|'Package'|'ApplicationConfiguration'|'ApplicationConfigurationSchema'|'DeploymentStrategy'|'ChangeCalendar'|'Automation.ChangeTemplate'|'ProblemAnalysis'|'ProblemAnalysisTemplate',
        'SchemaVersion': 'string',
        'LatestVersion': 'string',
        'DefaultVersion': 'string',
        'DocumentFormat': 'YAML'|'JSON'|'TEXT',
        'TargetType': 'string',
        'Tags': [
            {
                'Key': 'string',
                'Value': 'string'
            },
        ],
        'AttachmentsInformation': [
            {
                'Name': 'string'
            },
        ],
        'Requires': [
            {
                'Name': 'string',
                'Version': 'string'
            },
        ],
        'Author': 'string',
        'ReviewInformation': [
            {
                'ReviewedTime': datetime(2015, 1, 1),
                'Status': 'APPROVED'|'NOT_REVIEWED'|'PENDING'|'REJECTED',
                'Reviewer': 'string'
            },
        ],
        'ApprovedVersion': 'string',
        'PendingReviewVersion': 'string',
        'ReviewStatus': 'APPROVED'|'NOT_REVIEWED'|'PENDING'|'REJECTED'
    }
}

Response Structure

  • (dict) --

    • DocumentDescription (dict) --

      A description of the document that was updated.

      • Sha1 (string) --

        The SHA1 hash of the document, which you can use for verification.

      • Hash (string) --

        The Sha256 or Sha1 hash created by the system when the document was created.

      • HashType (string) --

        The hash type of the document. Valid values include Sha256 or Sha1.

      • Name (string) --

        The name of the Systems Manager document.

      • DisplayName (string) --

        The friendly name of the Systems Manager document. This value can differ for each version of the document. If you want to update this value, see UpdateDocument.

      • VersionName (string) --

        The version of the artifact associated with the document.

      • Owner (string) --

        The AWS user account that created the document.

      • CreatedDate (datetime) --

        The date when the document was created.

      • Status (string) --

        The status of the Systems Manager document.

      • StatusInformation (string) --

        A message returned by AWS Systems Manager that explains the Status value. For example, a Failed status might be explained by the StatusInformation message, "The specified S3 bucket does not exist. Verify that the URL of the S3 bucket is correct."

      • DocumentVersion (string) --

        The document version.

      • Description (string) --

        A description of the document.

      • Parameters (list) --

        A description of the parameters for a document.

        • (dict) --

          Parameters specified in a System Manager document that run on the server when the command is run.

          • Name (string) --

            The name of the parameter.

          • Type (string) --

            The type of parameter. The type can be either String or StringList.

          • Description (string) --

            A description of what the parameter does, how to use it, the default value, and whether or not the parameter is optional.

          • DefaultValue (string) --

            If specified, the default values for the parameters. Parameters without a default value are required. Parameters with a default value are optional.

      • PlatformTypes (list) --

        The list of OS platforms compatible with this Systems Manager document.

        • (string) --

      • DocumentType (string) --

        The type of document.

      • SchemaVersion (string) --

        The schema version.

      • LatestVersion (string) --

        The latest version of the document.

      • DefaultVersion (string) --

        The default version.

      • DocumentFormat (string) --

        The document format, either JSON or YAML.

      • TargetType (string) --

        The target type which defines the kinds of resources the document can run on. For example, /AWS::EC2::Instance. For a list of valid resource types, see AWS resource and property types reference in the AWS CloudFormation User Guide.

      • Tags (list) --

        The tags, or metadata, that have been applied to the document.

        • (dict) --

          Metadata that you assign to your AWS resources. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment. In Systems Manager, you can apply tags to documents, managed instances, maintenance windows, Parameter Store parameters, and patch baselines.

          • Key (string) --

            The name of the tag.

          • Value (string) --

            The value of the tag.

      • AttachmentsInformation (list) --

        Details about the document attachments, including names, locations, sizes, and so on.

        • (dict) --

          An attribute of an attachment, such as the attachment name.

          • Name (string) --

            The name of the attachment.

      • Requires (list) --

        A list of SSM documents required by a document. For example, an ApplicationConfiguration document requires an ApplicationConfigurationSchema document.

        • (dict) --

          An SSM document required by the current document.

          • Name (string) --

            The name of the required SSM document. The name can be an Amazon Resource Name (ARN).

          • Version (string) --

            The document version required by the current document.

      • Author (string) --

        The user in your organization who created the document.

      • ReviewInformation (list) --

        Details about the review of a document.

        • (dict) --

          Information about the result of a document review request.

          • ReviewedTime (datetime) --

            The time that the reviewer took action on the document review request.

          • Status (string) --

            The current status of the document review request.

          • Reviewer (string) --

            The reviewer assigned to take action on the document review request.

      • ApprovedVersion (string) --

        The version of the document currently approved for use in the organization.

      • PendingReviewVersion (string) --

        The version of the document that is currently under review.

      • ReviewStatus (string) --

        The current status of the review.